X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=includes%2FRegs.h;h=f2f70821d158f3f0475b5ff0b6e1a74f9beac439;hp=b6e29217eb19b2c554cfe2d7d5482f01443ac414;hb=80564ddc183ea98856994112858f0b9f3e178f94;hpb=0065d5ab628975892cea1ec7303f968c3338cbe1 diff --git a/includes/Regs.h b/includes/Regs.h index b6e2921..f2f7082 100644 --- a/includes/Regs.h +++ b/includes/Regs.h @@ -111,15 +111,13 @@ typedef struct StgRegTable_ { // rmp_tmp1..rmp_result2 are only used in THREADED_RTS builds to // avoid per-thread temps in bss, but currently always incldue here // so we just run mkDerivedConstants once - StgInt rmp_tmp_w; + StgWord rmp_tmp_w; MP_INT rmp_tmp1; MP_INT rmp_tmp2; MP_INT rmp_result1; MP_INT rmp_result2; StgWord rRet; // holds the return code of the thread -#if defined(THREADED_RTS) || defined(PAR) StgSparkPool rSparks; /* per-task spark pool */ -#endif } StgRegTable; #if IN_STG_CODE @@ -335,7 +333,7 @@ struct PartCapability_ { /* No such thing as a MainCapability under THREADED_RTS - each thread must have * its own Capability. */ -#if IN_STG_CODE && !defined(THREADED_RTS) +#if IN_STG_CODE && !(defined(THREADED_RTS) && !defined(NOSMP)) extern W_ MainCapability[]; #endif @@ -351,7 +349,7 @@ extern W_ MainCapability[]; GLOBAL_REG_DECL(StgRegTable *,BaseReg,REG_Base) #define ASSIGN_BaseReg(e) (BaseReg = (e)) #else -#ifdef THREADED_RTS +#if defined(THREADED_RTS) && !defined(NOSMP) #error BaseReg must be in a register for THREADED_RTS #endif #define BaseReg (&((struct PartCapability_ *)MainCapability)->r)