diff --git a/ghc/includes/PrimOps.h b/ghc/includes/PrimOps.h index edd536bc3a687d3742d8a2b464da697f4fb19cc6..1e14fd69640fc0bc8f732cf41cbbd058dcc903d7 100644 --- a/ghc/includes/PrimOps.h +++ b/ghc/includes/PrimOps.h @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: PrimOps.h,v 1.58 2000/07/20 17:06:41 rrt Exp $ + * $Id: PrimOps.h,v 1.59 2000/07/21 09:11:19 rrt Exp $ * * (c) The GHC Team, 1998-1999 * @@ -382,24 +382,24 @@ typedef union { /* The rest are all out-of-line: -------- */ /* Integer arithmetic */ -ERTSF_(plusIntegerzh_fast); -ERTSF_(minusIntegerzh_fast); -ERTSF_(timesIntegerzh_fast); -ERTSF_(gcdIntegerzh_fast); -ERTSF_(quotRemIntegerzh_fast); -ERTSF_(quotIntegerzh_fast); -ERTSF_(remIntegerzh_fast); -ERTSF_(divExactIntegerzh_fast); -ERTSF_(divModIntegerzh_fast); +EXTFUN_RTS(plusIntegerzh_fast); +EXTFUN_RTS(minusIntegerzh_fast); +EXTFUN_RTS(timesIntegerzh_fast); +EXTFUN_RTS(gcdIntegerzh_fast); +EXTFUN_RTS(quotRemIntegerzh_fast); +EXTFUN_RTS(quotIntegerzh_fast); +EXTFUN_RTS(remIntegerzh_fast); +EXTFUN_RTS(divExactIntegerzh_fast); +EXTFUN_RTS(divModIntegerzh_fast); /* Conversions */ -ERTSF_(int2Integerzh_fast); -ERTSF_(word2Integerzh_fast); -ERTSF_(addr2Integerzh_fast); +EXTFUN_RTS(int2Integerzh_fast); +EXTFUN_RTS(word2Integerzh_fast); +EXTFUN_RTS(addr2Integerzh_fast); /* Floating-point decodings */ -ERTSF_(decodeFloatzh_fast); -ERTSF_(decodeDoublezh_fast); +EXTFUN_RTS(decodeFloatzh_fast); +EXTFUN_RTS(decodeDoublezh_fast); /* ----------------------------------------------------------------------------- Word64 PrimOps. @@ -445,8 +445,8 @@ ERTSF_(decodeDoublezh_fast); } /* Conversions */ -ERTSF_(int64ToIntegerzh_fast); -ERTSF_(word64ToIntegerzh_fast); +EXTFUN_RTS(int64ToIntegerzh_fast); +EXTFUN_RTS(word64ToIntegerzh_fast); /* The rest are (way!) out of line, implemented via C entry points. */ @@ -583,7 +583,7 @@ extern I_ resetGenSymZh(void); #define unsafeFreezzeByteArrayzh(r,a) r=(a) -ERTSF_(unsafeThawArrayzh_fast); +EXTFUN_RTS(unsafeThawArrayzh_fast); #define sizzeofByteArrayzh(r,a) \ r = (((StgArrWords *)(a))->words * sizeof(W_)) @@ -592,14 +592,14 @@ ERTSF_(unsafeThawArrayzh_fast); /* and the out-of-line ones... */ -ERTSF_(newCharArrayzh_fast); -ERTSF_(newIntArrayzh_fast); -ERTSF_(newWordArrayzh_fast); -ERTSF_(newAddrArrayzh_fast); -ERTSF_(newFloatArrayzh_fast); -ERTSF_(newDoubleArrayzh_fast); -ERTSF_(newStablePtrArrayzh_fast); -ERTSF_(newArrayzh_fast); +EXTFUN_RTS(newCharArrayzh_fast); +EXTFUN_RTS(newIntArrayzh_fast); +EXTFUN_RTS(newWordArrayzh_fast); +EXTFUN_RTS(newAddrArrayzh_fast); +EXTFUN_RTS(newFloatArrayzh_fast); +EXTFUN_RTS(newDoubleArrayzh_fast); +EXTFUN_RTS(newStablePtrArrayzh_fast); +EXTFUN_RTS(newArrayzh_fast); /* encoding and decoding of floats/doubles. */ @@ -612,10 +612,10 @@ ERTSF_(newArrayzh_fast); #ifdef FLOATS_AS_DOUBLES #define decodeFloatzh_fast decodeDoublezh_fast #else -ERTSF_(decodeFloatzh_fast); +EXTFUN_RTS(decodeFloatzh_fast); #endif -ERTSF_(decodeDoublezh_fast); +EXTFUN_RTS(decodeDoublezh_fast); /* grimy low-level support functions defined in StgPrimFloat.c */ @@ -642,7 +642,7 @@ extern StgInt isFloatNegativeZero(StgFloat f); newMutVar is out of line. -------------------------------------------------------------------------- */ -ERTSF_(newMutVarzh_fast); +EXTFUN_RTS(newMutVarzh_fast); #define readMutVarzh(r,a) r=(P_)(((StgMutVar *)(a))->var) #define writeMutVarzh(a,v) (P_)(((StgMutVar *)(a))->var)=(v) @@ -657,26 +657,26 @@ ERTSF_(newMutVarzh_fast); /* Assume external decl of EMPTY_MVAR_info is in scope by now */ #define isEmptyMVarzh(r,a) r=(I_)((GET_INFO((StgMVar*)(a))) == &EMPTY_MVAR_info ) -ERTSF_(newMVarzh_fast); -ERTSF_(takeMVarzh_fast); -ERTSF_(tryTakeMVarzh_fast); -ERTSF_(putMVarzh_fast); +EXTFUN_RTS(newMVarzh_fast); +EXTFUN_RTS(takeMVarzh_fast); +EXTFUN_RTS(tryTakeMVarzh_fast); +EXTFUN_RTS(putMVarzh_fast); /* ----------------------------------------------------------------------------- Delay/Wait PrimOps -------------------------------------------------------------------------- */ -ERTSF_(waitReadzh_fast); -ERTSF_(waitWritezh_fast); -ERTSF_(delayzh_fast); +EXTFUN_RTS(waitReadzh_fast); +EXTFUN_RTS(waitWritezh_fast); +EXTFUN_RTS(delayzh_fast); /* ----------------------------------------------------------------------------- Primitive I/O, error-handling PrimOps -------------------------------------------------------------------------- */ -ERTSF_(catchzh_fast); -ERTSF_(raisezh_fast); +EXTFUN_RTS(catchzh_fast); +EXTFUN_RTS(raisezh_fast); extern void stg_exit(I_ n) __attribute__ ((noreturn)); @@ -686,7 +686,7 @@ extern void stg_exit(I_ n) __attribute__ ((noreturn)); #ifndef PAR -ERTSF_(makeStableNamezh_fast); +EXTFUN_RTS(makeStableNamezh_fast); #define stableNameToIntzh(r,s) (r = ((StgStableName *)s)->sn) @@ -710,12 +710,12 @@ ERTSF_(makeStableNamezh_fast); Concurrency/Exception PrimOps. -------------------------------------------------------------------------- */ -ERTSF_(forkzh_fast); -ERTSF_(yieldzh_fast); -ERTSF_(killThreadzh_fast); -ERTSF_(seqzh_fast); -ERTSF_(blockAsyncExceptionszh_fast); -ERTSF_(unblockAsyncExceptionszh_fast); +EXTFUN_RTS(forkzh_fast); +EXTFUN_RTS(yieldzh_fast); +EXTFUN_RTS(killThreadzh_fast); +EXTFUN_RTS(seqzh_fast); +EXTFUN_RTS(blockAsyncExceptionszh_fast); +EXTFUN_RTS(unblockAsyncExceptionszh_fast); #define myThreadIdzh(t) (t = CurrentTSO) @@ -831,8 +831,8 @@ extern int cmp_thread(const StgTSO *tso1, const StgTSO *tso2); #ifndef PAR -ERTSF_(mkWeakzh_fast); -ERTSF_(finalizzeWeakzh_fast); +EXTFUN_RTS(mkWeakzh_fast); +EXTFUN_RTS(finalizzeWeakzh_fast); #define deRefWeakzh(code,val,w) \ if (((StgWeak *)w)->header.info == &WEAK_info) { \ @@ -855,7 +855,7 @@ ERTSF_(finalizzeWeakzh_fast); #define ForeignObj_CLOSURE_DATA(c) (((StgForeignObj *)c)->data) -ERTSF_(mkForeignObjzh_fast); +EXTFUN_RTS(mkForeignObjzh_fast); #define writeForeignObjzh(res,datum) \ (ForeignObj_CLOSURE_DATA(res) = (P_)(datum))