[Git][ghc/ghc][wip/T24984] 13 commits: Fix -freg-graphs for FP and AARch64 NCG (#24941).
Simon Peyton Jones (@simonpj)
gitlab at gitlab.haskell.org
Mon Jul 29 22:23:51 UTC 2024
Simon Peyton Jones pushed to branch wip/T24984 at Glasgow Haskell Compiler / GHC
Commits:
3f89ab92 by Andreas Klebinger at 2024-07-25T14:12:54+02:00
Fix -freg-graphs for FP and AARch64 NCG (#24941).
It seems we reserve 8 registers instead of four for global regs
based on the layout in Note [AArch64 Register assignments].
I'm not sure it's neccesary, but for now we just accept this state of
affairs and simple update -fregs-graph to account for this.
- - - - -
f6b4c1c9 by Simon Peyton Jones at 2024-07-27T09:45:44-04:00
Fix nasty bug in occurrence analyser
As #25096 showed, the occurrence analyser was getting one-shot info
flat out wrong.
This commit does two things:
* It fixes the bug and actually makes the code a bit tidier too.
The work is done in the new function
GHC.Core.Opt.OccurAnal.mkRhsOccEnv,
especially the bit that prepares the `occ_one_shots` for the RHS.
See Note [The OccEnv for a right hand side]
* When floating out a binding we must be conservative about one-shot
info. But we were zapping the entire demand info, whereas we only
really need zap the /top level/ cardinality.
See Note [Floatifying demand info when floating]
in GHC.Core.Opt.SetLevels
For some reason there is a 2.2% improvement in compile-time allocation
for CoOpt_Read. Otherwise nickels and dimes.
Metric Decrease:
CoOpt_Read
- - - - -
646ee207 by Torsten Schmits at 2024-07-27T09:46:20-04:00
add missing cell in flavours table
- - - - -
ec2eafdb by Ben Gamari at 2024-07-28T20:51:12+02:00
users-guide: Drop mention of dead __PARALLEL_HASKELL__ macro
This has not existed for over a decade.
- - - - -
e2f2a56e by Arnaud Spiwack at 2024-07-28T22:21:07-04:00
Add tests for 25081
- - - - -
23f50640 by Arnaud Spiwack at 2024-07-28T22:21:07-04:00
Scale multiplicity in list comprehension
Fixes #25081
- - - - -
61cde2f9 by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Work in progress on rejigging kick-out
- - - - -
717ee3bf by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Wibbles
- - - - -
fe2316cc by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Fix egregious bug in any2
- - - - -
ab536462 by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Add a very important rider to (KK3)
(Not properly documented yet.)
- - - - -
beab3911 by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Documenation of the new plan
- - - - -
71dad0ac by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Wiblbe
- - - - -
9fc0d17f by Simon Peyton Jones at 2024-07-29T23:23:42+01:00
Respond to review
- - - - -
30 changed files:
- compiler/GHC/CmmToAsm/AArch64/Instr.hs
- compiler/GHC/CmmToAsm/AArch64/Ppr.hs
- compiler/GHC/CmmToAsm/AArch64/Regs.hs
- compiler/GHC/CmmToAsm/Reg/Graph/TrivColorable.hs
- compiler/GHC/Core/Opt/DmdAnal.hs
- compiler/GHC/Core/Opt/OccurAnal.hs
- compiler/GHC/Core/Opt/SetLevels.hs
- compiler/GHC/Core/Opt/Simplify/Iteration.hs
- compiler/GHC/Core/Opt/Specialise.hs
- compiler/GHC/Core/Predicate.hs
- compiler/GHC/Core/Type.hs
- compiler/GHC/Tc/Gen/Match.hs
- compiler/GHC/Tc/Solver/InertSet.hs
- compiler/GHC/Tc/Types/Constraint.hs
- compiler/GHC/Tc/Utils/TcType.hs
- compiler/GHC/Types/Demand.hs
- compiler/GHC/Types/Id.hs
- compiler/GHC/Types/Id/Info.hs
- compiler/GHC/Utils/Misc.hs
- compiler/GHC/Utils/Outputable.hs
- docs/users_guide/9.12.1-notes.rst
- docs/users_guide/phases.rst
- hadrian/doc/flavours.md
- + testsuite/tests/codeGen/should_gen_asm/T24941.hs
- testsuite/tests/codeGen/should_gen_asm/all.T
- + testsuite/tests/linear/should_compile/LinearListComprehension.hs
- testsuite/tests/linear/should_compile/all.T
- + testsuite/tests/linear/should_fail/T25081.hs
- + testsuite/tests/linear/should_fail/T25081.stderr
- testsuite/tests/linear/should_fail/all.T
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/62ea54a56fb6a672397374bfa2361743cd6a2c15...9fc0d17f685b1a1090e980f9401bcb87830ea732
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/62ea54a56fb6a672397374bfa2361743cd6a2c15...9fc0d17f685b1a1090e980f9401bcb87830ea732
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/20240729/42b99483/attachment.html>
More information about the ghc-commits
mailing list