[Git][ghc/ghc][wip/T23923-mikolaj-take-2] 7 commits: Force in_multi to avoid retaining entire hsc_env

Mikolaj Konarski (@Mikolaj) gitlab at gitlab.haskell.org
Mon Apr 8 21:25:35 UTC 2024



Mikolaj Konarski pushed to branch wip/T23923-mikolaj-take-2 at Glasgow Haskell Compiler / GHC


Commits:
c6def949 by Matthew Pickering at 2024-04-08T16:06:51-04:00
Force in_multi to avoid retaining entire hsc_env

- - - - -
fbb91a63 by Fendor at 2024-04-08T16:06:51-04:00
Eliminate name thunk in declaration fingerprinting

Thunk analysis showed that we have about 100_000 thunks (in agda and
`-fwrite-simplified-core`) pointing to the name of the name decl.
Forcing this thunk fixes this issue.

The thunk created here is retained by the thunk created by forkM, it is
better to eagerly force this because the result (a `Name`) is already
retained indirectly via the `IfaceDecl`.

- - - - -
3b7b0c1c by Alan Zimmerman at 2024-04-08T16:07:27-04:00
EPA: Use EpaLocation in WarningTxt

This allows us to use an EpDelta if needed when using makeDeltaAst.

- - - - -
12b997df by Alan Zimmerman at 2024-04-08T16:07:27-04:00
EPA: Move DeltaPos and EpaLocation' into GHC.Types.SrcLoc

This allows us to use a NoCommentsLocation for the possibly trailing
comma location in a StringLiteral.
This in turn allows us to correctly roundtrip via makeDeltaAst.

- - - - -
5c5670d4 by Mikolaj Konarski at 2024-04-08T23:24:13+02:00
Add DCoVarSet to PluginProv

Add the only remaining piece of feedback from git add src/Flavour.hs

Help CI check some more of the patch

Fix the 3 plugin tests that fail

Explain better how shallowCoVarsOfCosDSet is entangled with a hundreds of lines bit-rotten refactoring

Fix according to the first round of Simon's instruction

Fix according to the second round of Simon's instruction

Remove a question-comment that's probably absurd

Fix according to the third round of Simon's instruction

Make sure the foldl' accumulators are strict

Fix the horrid perf bug in coVarsOfType

See #24591

Touch up the new Note

Try out a variant of Simon's fix to the second perf problem

Ajust a single test in testsuite that uses PluginProv

- - - - -
aa048323 by Mikolaj Konarski at 2024-04-08T23:24:13+02:00
Adjust according to Ben's feedback

- - - - -
2453254a by Mikolaj Konarski at 2024-04-08T23:24:13+02:00
Try to fix the user guide ref

- - - - -


30 changed files:

- compiler/GHC/Core/Coercion.hs
- compiler/GHC/Core/Coercion/Opt.hs
- compiler/GHC/Core/FVs.hs
- compiler/GHC/Core/Lint.hs
- compiler/GHC/Core/TyCo/FVs.hs
- compiler/GHC/Core/TyCo/Rep.hs
- compiler/GHC/Core/TyCo/Subst.hs
- compiler/GHC/Core/TyCo/Tidy.hs
- compiler/GHC/Core/Type.hs
- compiler/GHC/CoreToIface.hs
- compiler/GHC/Iface/Rename.hs
- compiler/GHC/Iface/Syntax.hs
- compiler/GHC/Iface/Type.hs
- compiler/GHC/IfaceToCore.hs
- compiler/GHC/Parser.y
- compiler/GHC/Parser/Annotation.hs
- compiler/GHC/Rename/Module.hs
- compiler/GHC/Tc/TyCl/Utils.hs
- compiler/GHC/Tc/Utils/TcMType.hs
- compiler/GHC/Types/SourceText.hs
- compiler/GHC/Types/SrcLoc.hs
- compiler/GHC/Types/Unique/DSet.hs
- compiler/GHC/Types/Var/Set.hs
- compiler/GHC/Unit/Module/Warnings.hs
- compiler/GHC/Utils/FV.hs
- docs/users_guide/9.12.1-notes.rst
- docs/users_guide/extending_ghc.rst
- ghc/GHCi/UI.hs
- testsuite/tests/pmcheck/should_compile/T11195.hs
- testsuite/tests/tcplugins/CtIdPlugin.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/5295319e2636c388cdbdb082a5fe9560ec126aaf...2453254a81611531d38582a18c9ab53b10bd93ab

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/5295319e2636c388cdbdb082a5fe9560ec126aaf...2453254a81611531d38582a18c9ab53b10bd93ab
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/20240408/8a084866/attachment-0001.html>


More information about the ghc-commits mailing list