[Git][ghc/ghc][wip/andreask/spec-pragma] 4 commits: Force the Docs structure to prevent leaks in GHCi with -haddock without -fwrite-interface

Andreas Klebinger (@AndreasK) gitlab at gitlab.haskell.org
Thu Jan 5 12:18:52 UTC 2023



Andreas Klebinger pushed to branch wip/andreask/spec-pragma at Glasgow Haskell Compiler / GHC


Commits:
62b9a7b2 by Zubin Duggal at 2023-01-03T12:22:11+00:00
Force the Docs structure to prevent leaks in GHCi with -haddock without -fwrite-interface

Involves adding many new NFData instances.

Without forcing Docs, references to the TcGblEnv for each module are retained
by the Docs structure. Usually these are forced when the ModIface is serialised
but not when we aren't writing the interface.

- - - - -
21bedd84 by Facundo Domínguez at 2023-01-03T23:27:30-05:00
Explain the auxiliary functions of permutations

- - - - -
247601e3 by Andreas Klebinger at 2023-01-04T16:37:27+01:00
Allow combination of NOINLINE/INLINEABLE.

We do this by also tracking INLINEABLE outside of the Unfolding data
type as it's own flag.

In the proccess of this I made a few other smaller changes.

* Allow NOINLINE bindings to specialise with -fspecialise-aggressively.
  Fixes #21036
* Made rule source a proper type instead of Bool.

-------------------------
Metric Decrease:
    T14766
    T18304
Metric Increase:
    T10359
    T13386
    T15263
-------------------------

- - - - -
c8d01802 by Andreas Klebinger at 2023-01-05T13:17:38+01:00
Fix test outputs

- - - - -


30 changed files:

- compiler/GHC/Core.hs
- compiler/GHC/Core/Opt/CSE.hs
- compiler/GHC/Core/Opt/Simplify.hs
- compiler/GHC/Core/Opt/Simplify/Iteration.hs
- compiler/GHC/Core/Opt/Simplify/Utils.hs
- compiler/GHC/Core/Opt/SpecConstr.hs
- compiler/GHC/Core/Opt/Specialise.hs
- compiler/GHC/Core/Opt/WorkWrap.hs
- compiler/GHC/Core/Ppr.hs
- compiler/GHC/Core/Rules.hs
- compiler/GHC/Core/Tidy.hs
- compiler/GHC/Core/Unfold/Make.hs
- compiler/GHC/Core/Utils.hs
- compiler/GHC/CoreToIface.hs
- compiler/GHC/Data/EnumSet.hs
- compiler/GHC/Driver/Flags.hs
- compiler/GHC/Hs/Doc.hs
- compiler/GHC/Hs/DocString.hs
- compiler/GHC/HsToCore.hs
- compiler/GHC/HsToCore/Binds.hs
- compiler/GHC/HsToCore/Quote.hs
- compiler/GHC/Iface/Recomp.hs
- compiler/GHC/Iface/Syntax.hs
- compiler/GHC/Iface/Tidy.hs
- compiler/GHC/IfaceToCore.hs
- compiler/GHC/Rename/Bind.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Gen/Sig.hs
- compiler/GHC/Tc/TyCl/Instance.hs
- compiler/GHC/Types/Avail.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/2d467d96c0f8e02dd0543aadbb5b58e1d92ffa81...c8d018028486e426010fb02e609cdc691499c213

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/2d467d96c0f8e02dd0543aadbb5b58e1d92ffa81...c8d018028486e426010fb02e609cdc691499c213
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230105/304d9d5f/attachment-0001.html>


More information about the ghc-commits mailing list