Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/4384e146640230399b38cd62e8e5df391f72c3a7 >--------------------------------------------------------------- commit 4384e146640230399b38cd62e8e5df391f72c3a7 Author: David Terei <[email protected]> Date: Tue Jan 3 18:07:05 2012 +1100 Track STG live register information for use in LLVM We now carry around with CmmJump statements a list of the STG registers that are live at that jump site. This is used by the LLVM backend so it can avoid unnesecarily passing around dead registers, improving perfromance. This gives us the framework to finally fix trac #4308. compiler/cmm/CmmCvt.hs | 4 +- compiler/cmm/CmmLint.hs | 2 +- compiler/cmm/CmmOpt.hs | 6 +- compiler/cmm/CmmParse.y | 8 ++-- compiler/cmm/OldCmm.hs | 54 ++++++++++++------- compiler/cmm/OldPprCmm.hs | 28 +++++----- compiler/cmm/PprC.hs | 4 +- compiler/codeGen/CgClosure.lhs | 10 ++-- compiler/codeGen/CgCon.lhs | 13 +++-- compiler/codeGen/CgExpr.lhs | 8 ++- compiler/codeGen/CgHeapery.lhs | 90 ++++++++++++++++++------------- compiler/codeGen/CgInfoTbls.hs | 8 ++-- compiler/codeGen/CgMonad.lhs | 2 +- compiler/codeGen/CgTailCall.lhs | 88 +++++++++++++++++------------- compiler/codeGen/CgUtils.hs | 2 +- compiler/llvmGen/LlvmCodeGen/CodeGen.hs | 32 ++++++++--- compiler/llvmGen/LlvmCodeGen/Regs.hs | 8 ++- compiler/nativeGen/AsmCodeGen.lhs | 4 +- compiler/nativeGen/PPC/CodeGen.hs | 2 +- compiler/nativeGen/SPARC/CodeGen.hs | 2 +- compiler/nativeGen/X86/CodeGen.hs | 2 +- 21 files changed, 221 insertions(+), 156 deletions(-) Diff suppressed because of size. To see it, use: git show 4384e146640230399b38cd62e8e5df391f72c3a7 _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
