Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/97adc5de9bbb976a4ed816575041eb7ee5d8e670 >--------------------------------------------------------------- commit 97adc5de9bbb976a4ed816575041eb7ee5d8e670 Author: Simon Marlow <[email protected]> Date: Tue Jul 10 14:29:56 2012 +0100 adjustHpBackwards before calling a let-no-escape >--------------------------------------------------------------- compiler/codeGen/StgCmmExpr.hs | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/compiler/codeGen/StgCmmExpr.hs b/compiler/codeGen/StgCmmExpr.hs index e2789e7..9e2b78c 100644 --- a/compiler/codeGen/StgCmmExpr.hs +++ b/compiler/codeGen/StgCmmExpr.hs @@ -609,7 +609,8 @@ cgIdApp fun_id args cgLneJump :: BlockId -> [LocalReg] -> [StgArg] -> FCode () cgLneJump blk_id lne_regs args -- Join point; discard sequel - = do { cmm_args <- getNonVoidArgAmodes args + = do { adjustHpBackwards -- always do this before a tail-call + ; cmm_args <- getNonVoidArgAmodes args ; emitMultiAssign lne_regs cmm_args ; emit (mkBranch blk_id) } _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
