diff options
author | simonmar <unknown> | 2000-12-06 13:03:30 +0000 |
---|---|---|
committer | simonmar <unknown> | 2000-12-06 13:03:30 +0000 |
commit | d364541154457a49e3c35d671d7a1b57c9c4cca3 (patch) | |
tree | fa9c35958837ed79cfec92de1a5056e9d7af0b4a /ghc/compiler/specialise | |
parent | 91925e64be392662836f75d6648776994b1cae28 (diff) | |
download | haskell-d364541154457a49e3c35d671d7a1b57c9c4cca3.tar.gz |
[project @ 2000-12-06 13:03:28 by simonmar]
Re-engineer the transition from Core to STG syntax. Main changes in
this commit:
- a new pass, CoreSat, handles saturation of constructors and PrimOps,
and puts the syntax into STG-like normal form (applications to atoms
only, etc), modulo type applications and Notes.
- CoreToStg is now done at the same time as StgVarInfo. Most of the
contents of StgVarInfo.lhs have been copied into CoreToStg.lhs and
some simplifications made.
less major changes:
- globalisation of names for the purposes of object splitting is
now done by the C code generator (which is the Right Place in
principle, but it was a bit fiddly).
- CoreTidy now does cloning of local binders and collection of arity
info. The IdInfo from CoreTidy is now *almost* the final IdInfo we
put in the interface file, except for CafInfo. I'm going to move
the CafInfo collection into CoreTidy in due course too.
- and some other minor tidyups while I was in cluster-bomb commit mode.
Diffstat (limited to 'ghc/compiler/specialise')
-rw-r--r-- | ghc/compiler/specialise/Specialise.lhs | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/ghc/compiler/specialise/Specialise.lhs b/ghc/compiler/specialise/Specialise.lhs index fad010bda5..e6d6897983 100644 --- a/ghc/compiler/specialise/Specialise.lhs +++ b/ghc/compiler/specialise/Specialise.lhs @@ -585,9 +585,7 @@ specProgram dflags us binds let binds' = initSM us (go binds `thenSM` \ (binds', uds') -> returnSM (dumpAllDictBinds uds' binds')) - endPass dflags "Specialise" - (dopt Opt_D_dump_spec dflags - || dopt Opt_D_verbose_core2core dflags) binds' + endPass dflags "Specialise" Opt_D_dump_spec binds' dumpIfSet_dyn dflags Opt_D_dump_rules "Top-level specialisations" (vcat (map dump_specs (concat (map bindersOf binds')))) |