From: simonm Date: Mon, 2 Dec 1996 15:31:38 +0000 (+0000) Subject: [project @ 1996-12-02 15:31:38 by simonm] X-Git-Tag: Approximately_1000_patches_recorded~876 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=476eadf9c60165863cfb3c926049ed558136a49e;p=ghc-hetmet.git [project @ 1996-12-02 15:31:38 by simonm] don't set the info ptr when entering a closure; this is unnecessary as the info ptr is loaded in the constructor entry code (see comment by me in CgConTbls.lhs). Very minor performance hit for Sparc/Alpha, big win for i386. Should probably be conditionalised on the architecture or something. --- diff --git a/ghc/compiler/codeGen/CgTailCall.lhs b/ghc/compiler/codeGen/CgTailCall.lhs index 95055d8..702f647 100644 --- a/ghc/compiler/codeGen/CgTailCall.lhs +++ b/ghc/compiler/codeGen/CgTailCall.lhs @@ -334,10 +334,7 @@ tailCallBusiness fun fun_amode lf_info arg_amodes live_vars pending_assts ([], mkAbstractCs [ CCallProfCtrMacro SLIT("ENT_VIA_NODE") [], - CAssign (CReg infoptr) - - (CMacroExpr DataPtrRep INFO_PTR [CReg node]), - CJump (CMacroExpr CodePtrRep ENTRY_CODE [CReg infoptr]) + CJump (CMacroExpr CodePtrKind ENTRY_CODE [(CMacroExpr DataPtrKind INFO_PTR [CReg node])]) ]) StdEntry lbl Nothing -> ([], CJump (CLbl lbl CodePtrRep)) StdEntry lbl (Just itbl) -> ([], CAssign (CReg infoptr) (CLbl itbl DataPtrRep)