Skip to content
Snippets Groups Projects
  1. Feb 10, 2023
    • Simon Peyton Jones's avatar
      Refactor the simplifier a bit to fix #22761 · e45eb828
      Simon Peyton Jones authored and Marge Bot's avatar Marge Bot committed
      The core change in this commit, which fixes #22761, is that
      
      * In a Core rule, ru_rhs is always occ-analysed.
      
      This means adding a couple of calls to occurAnalyseExpr when
      building a Rule, in
      * GHC.Core.Rules.mkRule
      * GHC.Core.Opt.Simplify.Iteration.simplRules
      
      But diagosing the bug made me stare carefully at the code of the
      Simplifier, and I ended up doing some only-loosely-related refactoring.
      
      * I think that RULES could be lost because not every code path
        did addBndrRules
      
      * The code around lambdas was very convoluted
      
      It's mainly moving deck chairs around, but I like it more now.
      e45eb828
  2. Feb 09, 2023
  3. Feb 08, 2023
  4. Feb 07, 2023
  5. Feb 06, 2023
  6. Feb 04, 2023
  7. Feb 03, 2023
    • j's avatar
      Disable several ignore-warning flags in genapply. · faea4bcd
      j authored and Marge Bot's avatar Marge Bot committed
      faea4bcd
    • Andreas Klebinger's avatar
      Fix CallerCC potentially shadowing other cost centres. · bf3f88a1
      Andreas Klebinger authored and Marge Bot's avatar Marge Bot committed
      Add a CallerCC cost centre flavour for cost centres added by the
      CallerCC pass. This avoids potential accidental shadowing between
      CCs added by user annotations and ones added by CallerCC.
      bf3f88a1
    • Ben Gamari's avatar
      Bump Windows toolchain · b2bb3e62
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      Updates to LLVM 14, hopefully fixing #21964.
      b2bb3e62
    • Tamar Christina's avatar
      linker: Fix BFD import libraries · 48e39195
      Tamar Christina authored and Marge Bot's avatar Marge Bot committed
      This commit fixes the BFD style import library support in the runtime
      linker.  This was accidentally broken during the refactoring to clang
      and went unnoticed because clang itself is unable to generate the BFD
      style import libraries.
      
      With this change we can not link against both GCC or Clang produced
      libraries again and intermix code produced by both compilers.
      48e39195
    • Ryan Scott's avatar
      Windows: Remove mingwex dependency · de1d1512
      Ryan Scott authored and Marge Bot's avatar Marge Bot committed
      The clang based toolchain uses ucrt as its math library
      and so mingwex is no longer needed.  In fact using mingwex
      will cause incompatibilities as the default routines in both
      have differing ULPs and string formatting modifiers.
      
      ```
      $ LIBRARY_PATH=/mingw64/lib ghc/_build/stage1/bin/ghc Bug.hs -fforce-recomp && ./Bug.exe
      [1 of 2] Compiling Main             ( Bug.hs, Bug.o )
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `__imp___p__environ'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `__hscore_get_errno'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_ForeignziCziError_errnoToIOError_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziWindows_failIf2_closure'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziIOziEncodingziCodePageziAPI_mkCodePageEncoding_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziIOziEncodingziCodePage_currentCodePage_closure'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziIOziEncoding_getForeignEncoding_closure'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_ForeignziCziString_withCStringLen1_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziIOziHandleziInternals_zdwflushCharReadBuffer_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziIOziHandleziText_hGetBuf1_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziFingerprint_fingerprintString_closure'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_DataziTypeableziInternal_mkTrCon_closure'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziException_errorCallWithCallStackException_closure'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\base-4.17.0.0\libHSbase-4.17.0.0.a: unknown symbol `base_GHCziErr_error_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\template-haskell-2.19.0.0\libHStemplate-haskell-2.19.0.0.a: unknown symbol `base_DataziMaybe_fromJust1_info'
      ghc.exe:  | C:\Users\winferno\Software\ghc\_build\stage1\lib\x86_64-windows-ghc-9.5.20220908\template-haskell-2.19.0.0\libHStemplate-haskell-2.19.0.0.a: unknown symbol `templatezmhaskell_LanguageziHaskellziTHziSyntax_IntPrimL_con_info'
      ghc.exe: ^^ Could not load 'templatezmhaskell_LanguageziHaskellziTHziLibziInternal_stringL_closure', dependency unresolved. See top entry above.
      
      <no location info>: error:
      
      GHC.ByteCode.Linker.lookupCE
      During interactive linking, GHCi couldn't find the following symbol:
        templatezmhaskell_LanguageziHaskellziTHziLibziInternal_stringL_closure
      This may be due to you not asking GHCi to load extra object files,
      archives or DLLs needed by your current session.  Restart GHCi, specifying
      the missing library using the -L/path/to/object/dir and -lmissinglibname
      flags, or simply by naming the relevant files on the GHCi command line.
      Alternatively, this link failure might indicate a bug in GHCi.
      If you suspect the latter, please report this as a GHC bug:
        https://www.haskell.org/ghc/reportabug
      ```
      de1d1512
    • Ben Gamari's avatar
      gitlab-ci: Eliminate redundant ghc --info output · 8feb9301
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      Previously ci.sh would emit the output of `ghc --info` every time it ran
      when using the nix toolchain. This produced a significant amount of
      noise.
      
      See #22861.
      8feb9301
    • Bodigrim's avatar
      Bump submodule containers to 0.6.7 · 31358198
      Bodigrim authored and Marge Bot's avatar Marge Bot committed
      Metric Decrease:
          ManyConstructors
          T10421
          T12425
          T12707
          T13035
          T13379
          T15164
          T1969
          T783
          T9198
          T9961
          WWRec
      31358198
    • Ben Gamari's avatar
      base: Fix Note references in GHC.IO.Handle.Types · 41c4baf8
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      41c4baf8
    • Wander Hillen's avatar
      Move pthread and timerfd ticker implementations to separate files · 2931712a
      Wander Hillen authored and Marge Bot's avatar Marge Bot committed
      2931712a
    • lrzlin's avatar
      Enable tables next to code for LoongArch64 · 7e2d3eb5
      lrzlin authored and Marge Bot's avatar Marge Bot committed
      7e2d3eb5
  8. Feb 02, 2023
    • Matthew Pickering's avatar
      Disable unfolding sharing for interface files with core definitions · 0ada4547
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      Ticket #22807 pointed out that the RHS sharing was not compatible with
      -fignore-interface-pragmas because the flag would remove unfoldings from
      identifiers before the `extra-decls` field was populated.
      
      For the 9.6 timescale the only solution is to disable this sharing,
      which will make interface files bigger but this is acceptable for the
      first release of `-fwrite-if-simplified-core`.
      
      For 9.8 it would be good to fix this by implementing #20056 due to the
      large number of other bugs that would fix.
      
      I also improved the error message in tc_iface_binding to avoid the "no match
      in record selector" error but it should never happen now as the entire
      sharing logic is disabled.
      
      Also added the currently broken test for #22807 which could be fixed by
      !6080
      
      Fixes #22807
      0ada4547
    • Cheng Shao's avatar
      docs: 9.6 release notes for wasm backend · 1ffe770c
      Cheng Shao authored and Matthew Pickering's avatar Matthew Pickering committed
      1ffe770c
    • jeffrey young's avatar
      CI: JavaScript backend runs testsuite · 394b91ce
      jeffrey young authored and Marge Bot's avatar Marge Bot committed
      This MR runs the testsuite for the JS backend. Note that this is a
      temporary solution until !9515 is merged.
      
      Key point: The CI runs hadrian on the built cross compiler _but not_ on
      the bindist.
      
      Other Highlights:
      
       - stm submodule gets a bump to mark tests as broken
       - several tests are marked as broken or are fixed by adding more
       - conditions to their test runner instance.
      
      List of working commit messages:
      
      CI: test cross target _and_ emulator
      
      CI: JS: Try run testsuite with hadrian
      
      JS.CI: cleanup and simplify hadrian invocation
      
      use single bracket, print info
      
      JS CI: remove call to test_compiler from hadrian
      
      don't build haddock
      
      JS: mark more tests as broken
      
      Tracked in ghc/ghc#22576
      
      JS testsuite: don't skip sum_mod test
      
      Its expected to fail, yet we skipped it which automatically makes it
      succeed leading to an unexpected success,
      
      JS testsuite: don't mark T12035j as skip
      
      leads to an unexpected pass
      
      JS testsuite: remove broken on T14075
      
      leads to unexpected pass
      
      JS testsuite: mark more tests as broken
      
      JS testsuite: mark T11760 in base as broken
      
      JS testsuite: mark ManyUnbSums broken
      
      submodules: bump process and hpc for JS tests
      
      Both submodules has needed tests skipped or marked broken for th JS
      backend. This commit now adds these changes to GHC.
      
      See:
      
      HPC: hpc/hpc!21
      
      Process: https://github.com/haskell/process/pull/268
      
      remove js_broken on now passing tests
      
      separate wasm and js backend ci
      
      test: T11760: add threaded, non-moving only_ways
      
      test: T10296a add req_c
      
      T13894: skip for JS backend
      
      tests: jspace, T22333: mark as js_broken(22573)
      
      test: T22513i mark as req_th
      
      stm submodule: mark stm055, T16707 broken for JS
      
      tests: js_broken(22374) on unpack_sums_6, T12010
      
      dont run diff on JS CI, cleanup
      
      fixup: More CI cleanup
      
      fix: align text to master
      
      fix: align exceptions submodule to master
      
      CI: Bump DOCKER_REV
      
      Bump to ci-images commit that has a deb11 build with node. Required for
      !9552
      
      testsuite: mark T22669 as js_skip
      
      See #22669
      
      This test tests that .o-boot files aren't created when run in using the
      interpreter backend. Thus this is not relevant for the JS backend.
      
      testsuite: mark T22671 as broken on JS
      
      See #22835
      
      base.testsuite: mark Chan002 fragile for JS
      
      see #22836
      
      revert: submodule process bump
      
      bump stm submodule
      
      New hash includes skips for the JS backend.
      
      testsuite: mark RnPatternSynonymFail broken on JS
      
      Requires TH:
       - see !9779
       - and #22261
      
      compiler: GHC.hs ifdef import Utils.Panic.Plain
      394b91ce
    • Jaro Reinders's avatar
      compiler: Implement higher order patterns in the rule matcher · 61ce5bf6
      Jaro Reinders authored and Marge Bot's avatar Marge Bot committed
      This implements proposal 555 and closes ticket #22465.
      See the proposal and ticket for motivation.
      
      The core changes of this patch are in the GHC.Core.Rules.match function
      and they are explained in the Note [Matching higher order patterns].
      61ce5bf6
  9. Feb 01, 2023
Loading