First pass at implementing info tables for CPS
authorMichael D. Adams <t-madams@microsoft.com>
Wed, 27 Jun 2007 15:12:57 +0000 (15:12 +0000)
committerMichael D. Adams <t-madams@microsoft.com>
Wed, 27 Jun 2007 15:12:57 +0000 (15:12 +0000)
commitf96e9aa0444de0e673b3c4055c6e43299639bc5b
tree7bb999eafe8282492550cd835118a199bff05247
parentaffbe8dae5d7eb350686b42ddbd4f3561b7bd0ec
First pass at implementing info tables for CPS

This is a fairly complete implementation, however
two 'panic's have been placed in the critical path
where the implementation is still a bit lacking so
do not expect it to run quite yet.

One call to panic is because we still need to create
a GC block for procedures that don't have them yet.
(cmm/CmmCPS.hs:continuationToProc)

The other is due to the need to convert from a
ContinuationInfo to a CmmInfo.
(codeGen/CgInfoTbls.hs:emitClosureCodeAndInfoTable)
(codeGen/CgInfoTbls.hs:emitReturnTarget)
20 files changed:
compiler/cmm/CLabel.hs
compiler/cmm/Cmm.hs
compiler/cmm/CmmBrokenBlock.hs
compiler/cmm/CmmCPS.hs
compiler/cmm/CmmLint.hs
compiler/cmm/CmmOpt.hs
compiler/cmm/CmmParse.y
compiler/cmm/CmmProcPoint.hs
compiler/cmm/PprC.hs
compiler/cmm/PprCmm.hs
compiler/codeGen/CgCallConv.hs
compiler/codeGen/CgInfoTbls.hs
compiler/codeGen/CgMonad.lhs
compiler/codeGen/CgUtils.hs
compiler/codeGen/SMRep.lhs
compiler/main/CodeOutput.lhs
compiler/main/HscMain.lhs
compiler/nativeGen/AsmCodeGen.lhs
compiler/nativeGen/MachCodeGen.hs
compiler/nativeGen/MachInstrs.hs