Skip to content
Snippets Groups Projects
  1. Jan 11, 2025
  2. Jan 10, 2025
    • Ben Gamari's avatar
      dump-decls: Suppress unit-ids · e1c133f2
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      While the testsuite driver already normalizes these away, they are
      nevertheless a severe nuisance when diffing outside of the testsuite.
      
      Intriguingly, this doesn't completely eliminate the unit IDs; some
      wired-in names are still printed. However, this is a cheap and helpful
      improvement over the status quo so I am simply going to accept this.
      
      Fixes #25334.
      e1c133f2
    • Rodrigo Mesquita's avatar
      user_guide: Note -pgmP/-optP are for /Haskell/-CPP · 023f36f5
      Rodrigo Mesquita authored and Marge Bot's avatar Marge Bot committed
      Fixes #25574
      023f36f5
  3. Jan 09, 2025
  4. Jan 07, 2025
    • Luite Stegeman's avatar
      Add flags for switching off speculative evaluation. · 23099752
      Luite Stegeman authored
      We found that speculative evaluation can increase the amount of
      allocations in some circumstances. This patch adds new flags for
      selectively disabling speculative evaluation, allowing us to
      test the effect of the optimization.
      
      The new flags are:
      
        -fspec-eval
           globally enable speculative evaluation
      
        -fspec-eval-dictfun
           enable speculative evaluation for dictionary functions (no effect
           if speculative evaluation is globally disabled)
      
      The new flags are on by default for all optimisation levels.
      
      See #25284
      23099752
    • sheaf's avatar
      Fix typo in GHC.Tc.Solver.Solve.runTcPluginsWanted · 185f17e4
      sheaf authored and Marge Bot's avatar Marge Bot committed
      185f17e4
    • Cheng Shao's avatar
      xxhash: bump to v0.8.3 · 42826a89
      Cheng Shao authored and Marge Bot's avatar Marge Bot committed
      42826a89
    • Bryan R's avatar
      Remove tmp files after toolchain check · 6c12b6cf
      Bryan R authored and Marge Bot's avatar Marge Bot committed
      Fixes #25620
      6c12b6cf
    • Simon Peyton Jones's avatar
      Tidy up kcConDecls · 84155cdb
      Simon Peyton Jones authored and Marge Bot's avatar Marge Bot committed
      Addresses #25630
      
      In particular,
      
      * Introduce ConArgKind and use it.
      
      * Make kcConDecls and tcConDecls work the same way
        concerning the kind of argument types
      84155cdb
    • Matthew Pickering's avatar
      warnings: Find out if a qualified name is in the interactive scope directly · f56558be
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      There were two ad-hoc mechanisms used to determine which modules were in
      the interactive scope.
      
      1. Look at everything in the GRE, to see what is imported qualified.
      2. Look at the last loaded module in the HPT.
      
      (1) Is very inefficient, GlobalRdrEnvs can be very big.
      (2) is incorrect, there is no reason to assume the "last" thing added to
      the HPT has any relevance to module loading order.
      
      Happily, the same checks can be implemented directly by looking at the
      interactive imports from the interactive context. This mirrors what
      happens for normal imports.
      
      Arguably, the error reporting code shouldn't be doing this kind of
      processing and it should be an option is set when rendering the error
      message. However, this just improves the situation and doesn't block
      progress on that front in future.
      
      See #14225 and #15611
      
      Fixes #25600
      f56558be
  5. Dec 30, 2024
  6. Dec 29, 2024
    • Simon Peyton Jones's avatar
      Fix in-scope set for CSE · c02b1e46
      Simon Peyton Jones authored and Marge Bot's avatar Marge Bot committed
      Ticket #25468 showed an assertion failure in CSE because a top-level
      Id was being used before it was defined.  Reason: Note [Glomming] in
      GHC.Core.Opt.OccurAnal.
      
      Solution (used in many places): just put all the top-level bindings in
      scope at the beginning of CSE.
      
      Compile-time allocation wobbles up and down a tiny bit; geo mean is
      zero. But MultiLayerModulesTH_OneShot and hard_hole_fits increase (on
      some architectures only) by a bit oever 2% .  I think these are just a
      random fluctuations.
      
      Metric Increase:
          MultiLayerModulesTH_OneShot
          hard_hole_fits
      c02b1e46
    • Zubin's avatar
      hadrian-multi: warn on unused imports · fafb70db
      Zubin authored and Zubin's avatar Zubin committed
      os-string has redundant imports
      
      (cherry picked from commit dde3796b)
      fafb70db
    • Zubin's avatar
      release: copy index.html from correct directory · ea3f7fd5
      Zubin authored and Zubin's avatar Zubin committed
      (cherry picked from commit cbfd0829)
      ea3f7fd5
    • Zubin's avatar
      Fix TH changelog · 4ad6aec4
      Zubin authored and Zubin's avatar Zubin committed
      4ad6aec4
    • Zubin's avatar
      Add haskeline to stage0Packages · 3e10fa75
      Zubin authored and Zubin's avatar Zubin committed
      Otherwise we link against boot inplace and boot unix as boot haskeline
      depends on boot unix.
      
      (cherry picked from commit 90b49376)
      3e10fa75
    • Zubin's avatar
      Fix ghc-e005 after HasCallstack changes · f6079408
      Zubin authored and Zubin's avatar Zubin committed
      (cherry picked from commit 77f340a2)
      f6079408
    • Zubin's avatar
      Bump base, ghc-prim and template-haskell versions for 9.12 · 7f79257a
      Zubin authored and Zubin's avatar Zubin committed
      Also bump various submodules.
      
      (cherry picked from commit 6fc1fa3b)
      
      Bump base bound to 4.21 for GHC 9.12
      
      (cherry picked from commit 473a201c)
      
      Bump binary submodule to 0.8.9.2
      
      (cherry picked from commit 7199869a)
      (cherry picked from commit ec2f40b4)
      
      Bump exceptions submodule to 0.10.9
      
      (cherry picked from commit f5b5d1dc)
      
      Bump file-io submodule to 0.1.4
      
      (cherry picked from commit ba786681)
      
      bump os-string submodule to 2.0.6
      
      (cherry picked from commit 3a7ffdbb)
      
      bump transformers submodule to 0.6.1.2
      
      (cherry picked from commit 53b46fd4)
      
      Bump directory submodule to v1.3.9.0
      
      (cherry picked from commit 27dc2664)
      
      Bump Win32 submodule to v2.14.1.0
      
      (cherry picked from commit 80df8808)
      
      Bump filepath submodule to 1.5.3.0
      
      (cherry picked from commit 29bfae2c)
      
      Bump file-io submodule to avoid usage of QuasiQuotes
      
      (cherry picked from commit 97b0dff2)
      
      Bump unix submodule to 2.8.6.0
      
      (cherry picked from commit a1f56d6d)
      
      Bump os-string submodule to 2.0.8
      
      (cherry picked from commit 0121b76f)
      
      Bump file-io submodule to avoid usage of QuasiQuotes
      
      (cherry picked from commit 962ceb50)
      
      Bump filepath submodule to 1.5.4.0
      
      (cherry picked from commit 7bc6877f)
      
      Bump file-io submodule to 0.1.5
      
      (cherry picked from commit 9478b5ae)
      
      Bump Cabal submodule to 3.14.1.0
      
      (cherry picked from commit 5c9c3e3f)
      
      Bump directory submodule to 0.12.2.0
      
      (cherry picked from commit 89790626)
      
      Bump array submodule for base bump
      
      Bump stm submodule for base bump
      
      Bump process submodule for base bump
      7f79257a
  7. Dec 28, 2024
    • ARATA Mizuki's avatar
      Fix LLVM version detection · a928c326
      ARATA Mizuki authored and Marge Bot's avatar Marge Bot committed
      With a recent LLVM, `llc -version` emits the version on the first line
      if the vendor is set.  It emits the version on the second line
      otherwise.
      
      Therefore, we need to check the both lines to detect the version.
      
      GHC now emits a warning if it fails to detect the LLVM version,
      so we can notice if the output of `llc -version` changes in the future.
      
      Also, the warning for using LLVM < 10 on s390x is removed, because
      we assume LLVM >= 13 now.
      
      This fixes the definition of __GLASGOW_HASKELL_LLVM__ macro.
      
      Fixes #25606
      a928c326
  8. Dec 27, 2024
  9. Dec 26, 2024
  10. Dec 25, 2024
  11. Dec 20, 2024
    • Rodrigo Mesquita's avatar
      Don't eta expand cons when deriving Data · 8b266671
      Rodrigo Mesquita authored and Marge Bot's avatar Marge Bot committed
      This eta expansion was introduced with the initial commit for Linear
      types.
      
      I believe this isn't needed any longer. My guess is it is an artifact
      from the initial linear types implementation: data constructors are
      linear, but they shouldn't need to be eta expanded to be used as higher
      order functions. I suppose in the early days this wasn't true.
      
      For instance, this works now:
      
          data T x = T x
          f = \(x :: forall y. y -> T y) -> x True
          f T -- ok!
      
      T is linear, but can be passed where an unrestricted higher order
      function is expected. I recall there being some magic around to make
      this work for data constructors...
      
      Since this works, there's no need to eta_expand the data constructors in
      the derived Data instances.
      8b266671
    • Rodrigo Mesquita's avatar
      Improve performance of deriving Show · ee0150c2
      Rodrigo Mesquita authored and Marge Bot's avatar Marge Bot committed
      Significantly improves performance of deriving Show instances by
      avoiding using the very polymorphic `.` operator in favour of inlining
      its definition. We were generating tons of applications of it, each
      which had 3 type arguments!
      
      Improves on #9557
      
      -------------------------
      Metric Decrease:
          InstanceMatching
          T12707
          T3294
      ------------------------
      ee0150c2
    • Sylvain Henry's avatar
      Merge ghc-bignum into ghc-internal (#24453) · 3f7ebc58
      Sylvain Henry authored and Marge Bot's avatar Marge Bot committed
      First step towards merging ghc-bignum and ghc-prim into ghc-internal.
      
      After this patch, ghc-bignum is deprecated and is just a shallow package
      reexporting modules from ghc-internal and base. Use those directly
      instead.
      
      Move `gmp` submodule into ghc-internal directory.
      3f7ebc58
  12. Dec 19, 2024
Loading