X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Finterpreter%2Flink.c;h=7e405d039cacd99969b6857da818c36f4bf93ebb;hb=f0901617344ad6cb35b10eeaf7093f0e4f23dce9;hp=39b2c8fb9e2f2d172bbf8ee8e28e11775694e039;hpb=ad61a4f5e334408ada25c71b043ac95f9c6b301f;p=ghc-hetmet.git diff --git a/ghc/interpreter/link.c b/ghc/interpreter/link.c index 39b2c8f..7e405d0 100644 --- a/ghc/interpreter/link.c +++ b/ghc/interpreter/link.c @@ -9,16 +9,16 @@ * included in the distribution. * * $RCSfile: link.c,v $ - * $Revision: 1.59 $ - * $Date: 2000/04/17 13:28:17 $ + * $Revision: 1.60 $ + * $Date: 2000/04/27 16:35:29 $ * ------------------------------------------------------------------------*/ #include "hugsbasictypes.h" #include "storage.h" #include "connect.h" #include "errors.h" -#include "Assembler.h" /* for asmPrimOps and AsmReps */ #include "Rts.h" /* to make Prelude.h palatable */ +#include "Assembler.h" /* for asmPrimOps and AsmReps */ #include "Prelude.h" /* for fixupRTStoPreludeRefs */ @@ -773,46 +773,36 @@ assert(nonNull(namePMFail)); pFun(namePrimRaise, "primRaise"); pFun(namePrimTakeMVar, "primTakeMVar"); { - StgVar vv = mkStgVar(NIL,NIL); - Name n = namePrimSeq; - name(n).line = 0; - name(n).arity = 1; - name(n).type = NIL; - vv = mkStgVar(NIL,NIL); - stgVarInfo(vv) = mkPtr ( asm_BCO_seq() ); - name(n).stgVar = vv; - stgGlobals=cons(pair(n,vv),stgGlobals); - namePrimSeq = n; + Name n = namePrimSeq; + name(n).line = 0; + name(n).arity = 1; + name(n).type = NIL; + name(n).closure = mkCPtr ( asm_BCO_seq() ); + addToCodeList ( modulePrelPrim, n ); } { - StgVar vv = mkStgVar(NIL,NIL); - Name n = namePrimCatch; - name(n).line = 0; - name(n).arity = 2; - name(n).type = NIL; - stgVarInfo(vv) = mkPtr ( asm_BCO_catch() ); - name(n).stgVar = vv; - stgGlobals=cons(pair(n,vv),stgGlobals); + Name n = namePrimCatch; + name(n).line = 0; + name(n).arity = 2; + name(n).type = NIL; + name(n).closure = mkCPtr ( asm_BCO_catch() ); + addToCodeList ( modulePrelPrim, n ); } { - StgVar vv = mkStgVar(NIL,NIL); - Name n = namePrimRaise; - name(n).line = 0; - name(n).arity = 1; - name(n).type = NIL; - stgVarInfo(vv) = mkPtr ( asm_BCO_raise() ); - name(n).stgVar = vv; - stgGlobals=cons(pair(n,vv),stgGlobals); + Name n = namePrimRaise; + name(n).line = 0; + name(n).arity = 1; + name(n).type = NIL; + name(n).closure = mkCPtr ( asm_BCO_raise() ); + addToCodeList ( modulePrelPrim, n ); } { - StgVar vv = mkStgVar(NIL,NIL); - Name n = namePrimTakeMVar; - name(n).line = 0; - name(n).arity = 2; - name(n).type = NIL; - stgVarInfo(vv) = mkPtr ( asm_BCO_takeMVar() ); - name(n).stgVar = vv; - stgGlobals=cons(pair(n,vv),stgGlobals); + Name n = namePrimTakeMVar; + name(n).line = 0; + name(n).arity = 2; + name(n).type = NIL; + name(n).closure = mkCPtr ( asm_BCO_takeMVar() ); + addToCodeList ( modulePrelPrim, n ); } } break; @@ -820,5 +810,4 @@ assert(nonNull(namePMFail)); } #undef pFun -//#include "fooble.c" /*-------------------------------------------------------------------------*/