cvs commit: fptools/ghc/compiler/codeGen CgExpr.lhs ClosureInfo.lhs
fptools/ghc/compiler/coreSyn CoreSat.lhs CoreUtils.lhs
fptools/ghc/compiler/main CmdLineOpts.lhs HscMain.lhs
fptools/ghc/compiler/stgSyn CoreToStg.lhs StgSyn.lhs
Simon Peyton Jones
simonpj@glass.cse.ogi.edu
Tue, 20 Feb 2001 01:39:00 -0800
simonpj 2001/02/20 01:39:00 PST
Modified files:
ghc/compiler/codeGen CgExpr.lhs ClosureInfo.lhs
ghc/compiler/coreSyn CoreSat.lhs CoreUtils.lhs
ghc/compiler/main CmdLineOpts.lhs HscMain.lhs
ghc/compiler/stgSyn CoreToStg.lhs StgSyn.lhs
Log:
Back end changes [CgExpr, ClosureInfo, CoreSat, CoreUtils,
~~~~~~~~~~~~~~~~ CmdLineOpts, HscMain, CoreToStg, StgSyn]
* Move CoreTidy and interface-file dumping *before* CoreSat.
In this way interface files are not in A-normal form, so
they are less bulky, and a bit easier to use as input to
the optimiser.
So now CoreSat is regarded as a pre-pass to CoreToStg.
Since CoreTidy pins on utterly-final IdInfo, CoreSat has to
be very careful not to change the arity of any function.
* CoreSat uses OrdList instead of lists to collect floating binds
This in turn meant I could simplify the FloatingBind type a bit
* Greatly simplfy the StgBinderInfo data type. It was
gathering far more information than we needed.
* Add a flag -fkeep-stg-types, which keeps type abstractions
and applications in STG code, for the benefit of code generators
that are typed; notably the .NET ILX code generator.
Revision Changes Path
1.41 +3 -2 fptools/ghc/compiler/codeGen/CgExpr.lhs
1.45 +8 -18 fptools/ghc/compiler/codeGen/ClosureInfo.lhs
1.10 +173 -207 fptools/ghc/compiler/coreSyn/CoreSat.lhs
1.64 +10 -1 fptools/ghc/compiler/coreSyn/CoreUtils.lhs
1.130 +5 -1 fptools/ghc/compiler/main/CmdLineOpts.lhs
1.95 +8 -9 fptools/ghc/compiler/main/HscMain.lhs
1.69 +157 -154 fptools/ghc/compiler/stgSyn/CoreToStg.lhs
1.32 +19 -52 fptools/ghc/compiler/stgSyn/StgSyn.lhs