[commit: ghc] master: Get evaluated-ness right in the back end (bd438b2)
git at git.haskell.org
git at git.haskell.org
Wed Jan 3 12:43:25 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/bd438b2d67ec8f5d8ac8472f13b3175b569951b9/ghc
>---------------------------------------------------------------
commit bd438b2d67ec8f5d8ac8472f13b3175b569951b9
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Wed Jan 3 10:48:26 2018 +0000
Get evaluated-ness right in the back end
See Trac #14626, comment:4. We want to maintain evaluted-ness
info on Ids into the code generateor for two reasons
(see Note [Preserve evaluated-ness in CorePrep] in CorePrep)
- DataToTag magic
- Potentially using it in the codegen (this is Gabor's
current work)
But it was all being done very inconsistently, and actually
outright wrong -- the DataToTag magic hasn't been working for
years.
This patch tidies it all up, with Notes to match.
>---------------------------------------------------------------
bd438b2d67ec8f5d8ac8472f13b3175b569951b9
compiler/basicTypes/IdInfo.hs | 7 +-
compiler/coreSyn/CorePrep.hs | 142 +++++++++++++--------
compiler/coreSyn/CoreTidy.hs | 9 +-
compiler/iface/ToIface.hs | 11 +-
compiler/main/TidyPgm.hs | 30 +++--
testsuite/tests/codeGen/should_compile/Makefile | 3 +
testsuite/tests/codeGen/should_compile/T14626.hs | 15 +++
.../tests/codeGen/should_compile/T14626.stdout | 2 +
testsuite/tests/codeGen/should_compile/all.T | 3 +
.../tests/deSugar/should_compile/T2431.stderr | 32 ++---
.../tests/roles/should_compile/Roles13.stderr | 52 ++++----
.../tests/simplCore/should_compile/T13143.stderr | 4 +-
.../tests/simplCore/should_compile/T3717.stderr | 2 +-
.../tests/simplCore/should_compile/T3772.stdout | 4 +-
.../tests/simplCore/should_compile/T4908.stderr | 6 +-
.../tests/simplCore/should_compile/T4930.stderr | 2 +-
.../tests/simplCore/should_compile/T7360.stderr | 6 +-
.../tests/simplCore/should_compile/T9400.stderr | 64 +++++-----
.../simplCore/should_compile/spec-inline.stderr | 4 +-
.../tests/stranal/should_compile/T10694.stderr | 96 ++++++++------
20 files changed, 298 insertions(+), 196 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc bd438b2d67ec8f5d8ac8472f13b3175b569951b9
More information about the ghc-commits
mailing list