diff options
author | dias@eecs.tufts.edu <unknown> | 2009-03-23 17:28:37 +0000 |
---|---|---|
committer | dias@eecs.tufts.edu <unknown> | 2009-03-23 17:28:37 +0000 |
commit | 5d1c70a506f366eca47464f2a354de8cc0d9a795 (patch) | |
tree | 1a48d2dbe980047a1f43e730a2bbfd98f28194c2 /compiler/codeGen/StgCmmExpr.hs | |
parent | e239aa2329416a2822fcc03c4ed486c7d28739e1 (diff) | |
download | haskell-5d1c70a506f366eca47464f2a354de8cc0d9a795.tar.gz |
Another small step: call and return conventions specified separately when making calls
Diffstat (limited to 'compiler/codeGen/StgCmmExpr.hs')
-rw-r--r-- | 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 462def3d5d..f3687fcc07 100644 --- a/compiler/codeGen/StgCmmExpr.hs +++ b/compiler/codeGen/StgCmmExpr.hs @@ -465,7 +465,8 @@ cgTailCall fun_id fun_info args = do ; [ret,call] <- forkAlts [ getCode $ emitReturn [fun], -- Is tagged; no need to untag getCode $ do emit (mkAssign nodeReg fun) - emitCall NativeCall (entryCode fun') []] -- Not tagged + emitCall (NativeCall, NativeReturn) + (entryCode fun') []] -- Not tagged ; emit (mkCmmIfThenElse (cmmIsTagged fun) ret call) } SlowCall -> do -- A slow function call via the RTS apply routines |