[Git][ghc/ghc][wip/T16296] 6 commits: Do not panic on linker errors
Simon Peyton Jones
gitlab at gitlab.haskell.org
Thu Mar 26 23:48:15 UTC 2020
Simon Peyton Jones pushed to branch wip/T16296 at Glasgow Haskell Compiler / GHC
Commits:
262e42aa by Peter Trommler at 2020-03-25T22:41:39-04:00
Do not panic on linker errors
- - - - -
0de03cd7 by Sylvain Henry at 2020-03-25T22:42:02-04:00
DynFlags refactoring III
Use Platform instead of DynFlags when possible:
* `tARGET_MIN_INT` et al. replaced with `platformMinInt` et al.
* no more DynFlags in PreRules: added a new `RuleOpts` datatype
* don't use `wORD_SIZE` in the compiler
* make `wordAlignment` use `Platform`
* make `dOUBLE_SIZE` a constant
Metric Decrease:
T13035
T1969
- - - - -
7a04920b by Tristan Cacqueray at 2020-03-25T22:42:06-04:00
Base: fix a typo in liftA doc
This change removes an extra '|' that should not be rendered in
the liftA documentation.
Tracking: #17929
- - - - -
1c5a15f7 by Tristan Cacqueray at 2020-03-25T22:42:06-04:00
Base: add Control.Applicative optional example
This change adds an optional example.
Tracking: #17929
- - - - -
6d172e63 by Tristan Cacqueray at 2020-03-25T22:42:06-04:00
Base: add markup around Except
- - - - -
f299ed57 by Simon Peyton Jones at 2020-03-26T23:47:54+00:00
Re-engineer the binder-swap transformation
The binder-swap transformation is implemented by the occurrence
analyser -- see Note [Binder swap] in OccurAnal. However it had
a very nasty corner in it, for the case where the case scrutinee
was a GlobalId. This led to trouble and hacks, and ultimately
to #16296.
This patch re-engineers how the occurrence analyser implements
the binder-swap, by actually carrying out a substitution rather
than by adding a let-binding. It's all described in
Note [The binder-swap substitution].
I did a few other things along the way
* Fix a bug in StgCse, which could allow a loop breaker to be CSE'd
away. See Note [Care with loop breakers] in StgCse. I think it can
only show up if occurrence analyser sets up bad loop breakers, but
still.
* Better commenting in SimplUtils.prepareAlts
* A little refactoring in CoreUnfold; nothing significant
e.g. rename CoreUnfold.mkTopUnfolding to mkFinalUnfolding
* Renamed CoreSyn.isFragileUnfolding to hasCoreUnfolding
* Move mkRuleInfo to CoreFVs
There's a 4.6% metric decrease here:
Metric Decrease:
T9961
- - - - -
12 changed files:
- compiler/GHC/ByteCode/Asm.hs
- compiler/GHC/Cmm/Lint.hs
- compiler/GHC/Cmm/Parser.y
- compiler/GHC/Cmm/Utils.hs
- compiler/GHC/CmmToAsm/Config.hs
- compiler/GHC/CmmToAsm/X86/CodeGen.hs
- compiler/GHC/Core.hs
- compiler/GHC/Core/FVs.hs
- compiler/GHC/Core/Lint.hs
- compiler/GHC/Core/Make.hs
- compiler/GHC/Core/Op/ConstantFold.hs
- compiler/GHC/Core/Op/FloatIn.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/4d63f94c181dfaf0b4ceeda76afd3284927a3351...f299ed573c8b560b8ef7e10ba16d598a1a479b41
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/4d63f94c181dfaf0b4ceeda76afd3284927a3351...f299ed573c8b560b8ef7e10ba16d598a1a479b41
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/20200326/4b98690a/attachment.html>
More information about the ghc-commits
mailing list