[commit: ghc] master: A further fix for -split-objs with the new codegen (ccf44d8)
Simon Marlow
marlowsd at gmail.com
Wed Sep 5 11:30:51 CEST 2012
Repository : ssh://darcs.haskell.org//srv/darcs/ghc
On branch : master
http://hackage.haskell.org/trac/ghc/changeset/ccf44d89c23b27cb7e185bf229b2265edb590daf
>---------------------------------------------------------------
commit ccf44d89c23b27cb7e185bf229b2265edb590daf
Author: Simon Marlow <marlowsd at gmail.com>
Date: Wed Sep 5 09:23:04 2012 +0100
A further fix for -split-objs with the new codegen
>---------------------------------------------------------------
compiler/codeGen/StgCmmExpr.hs | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/compiler/codeGen/StgCmmExpr.hs b/compiler/codeGen/StgCmmExpr.hs
index ab6f888..bc29c68 100644
--- a/compiler/codeGen/StgCmmExpr.hs
+++ b/compiler/codeGen/StgCmmExpr.hs
@@ -611,7 +611,10 @@ cgIdApp fun_id args
= do { fun_info <- getCgIdInfo fun_id
; case maybeLetNoEscape fun_info of
Just (blk_id, lne_regs) -> cgLneJump blk_id lne_regs args
- Nothing -> cgTailCall fun_id fun_info args }
+ Nothing -> cgTailCall (cg_id fun_info) fun_info args }
+ -- NB. use (cg_id fun_info) instead of fun_id, because the former
+ -- may be externalised for -split-objs.
+ -- See StgCmm.maybeExternaliseId.
cgLneJump :: BlockId -> [LocalReg] -> [StgArg] -> FCode ReturnKind
cgLneJump blk_id lne_regs args -- Join point; discard sequel
More information about the Cvs-ghc
mailing list