Merge in new code generator branch.
This changes the new code generator to make use of the Hoopl package for dataflow analysis. Hoopl is a new boot package, and is maintained in a separate upstream git repository (as usual, GHC has its own lagging darcs mirror in http://darcs.haskell.org/packages/hoopl). During this merge I squashed recent history into one patch. I tried to rebase, but the history had some internal conflicts of its own which made rebase extremely confusing, so I gave up. The history I squashed was: - Update new codegen to work with latest Hoopl - Add some notes on new code gen to cmm-notes - Enable Hoopl lag package. - Add SPJ note to cmm-notes - Improve GC calls on new code generator. Work in this branch was done by: - Milan Straka <fox@ucw.cz> - John Dias <dias@cs.tufts.edu> - David Terei <davidterei@gmail.com> Edward Z. Yang <ezyang@mit.edu> merged in further changes from GHC HEAD and fixed a few bugs.
Showing
- compiler/cmm/BlockId.hs 24 additions, 115 deletionscompiler/cmm/BlockId.hs
- compiler/cmm/Cmm.hs 166 additions, 417 deletionscompiler/cmm/Cmm.hs
- compiler/cmm/CmmBrokenBlock.hs 0 additions, 421 deletionscompiler/cmm/CmmBrokenBlock.hs
- compiler/cmm/CmmBuildInfoTables.hs 119 additions, 221 deletionscompiler/cmm/CmmBuildInfoTables.hs
- compiler/cmm/CmmCPS.hs 153 additions, 397 deletionscompiler/cmm/CmmCPS.hs
- compiler/cmm/CmmCPSGen.hs 0 additions, 517 deletionscompiler/cmm/CmmCPSGen.hs
- compiler/cmm/CmmCPSZ.hs 0 additions, 183 deletionscompiler/cmm/CmmCPSZ.hs
- compiler/cmm/CmmCallConv.hs 3 additions, 2 deletionscompiler/cmm/CmmCallConv.hs
- compiler/cmm/CmmCommonBlockElim.hs 66 additions, 56 deletionscompiler/cmm/CmmCommonBlockElim.hs
- compiler/cmm/CmmContFlowOpt.hs 128 additions, 134 deletionscompiler/cmm/CmmContFlowOpt.hs
- compiler/cmm/CmmCvt.hs 131 additions, 138 deletionscompiler/cmm/CmmCvt.hs
- compiler/cmm/CmmDecl.hs 150 additions, 0 deletionscompiler/cmm/CmmDecl.hs
- compiler/cmm/CmmExpr.hs 12 additions, 727 deletionscompiler/cmm/CmmExpr.hs
- compiler/cmm/CmmInfo.hs 14 additions, 29 deletionscompiler/cmm/CmmInfo.hs
- compiler/cmm/CmmLex.x 1 addition, 1 deletioncompiler/cmm/CmmLex.x
- compiler/cmm/CmmLint.hs 8 additions, 8 deletionscompiler/cmm/CmmLint.hs
- compiler/cmm/CmmLive.hs 55 additions, 192 deletionscompiler/cmm/CmmLive.hs
- compiler/cmm/CmmLiveZ.hs 0 additions, 84 deletionscompiler/cmm/CmmLiveZ.hs
- compiler/cmm/CmmMachOp.hs 465 additions, 0 deletionscompiler/cmm/CmmMachOp.hs
- compiler/cmm/CmmNode.hs 303 additions, 0 deletionscompiler/cmm/CmmNode.hs
Loading
Please register or sign in to comment