X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fincludes%2FRtsTypes.h;h=9e8c7b847b8b4c78227bbe81a992a9c00d9596dc;hb=e6218fe7eff4e34e1a3c823cd4b7aebe09d2d4fb;hp=10c4bdeb49ee44237dcefb213e200eccde936fe8;hpb=1b28d4e1f43185ad8c8e7407c66413e1b358402b;p=ghc-hetmet.git diff --git a/ghc/includes/RtsTypes.h b/ghc/includes/RtsTypes.h index 10c4bde..9e8c7b8 100644 --- a/ghc/includes/RtsTypes.h +++ b/ghc/includes/RtsTypes.h @@ -1,5 +1,5 @@ /* - Time-stamp: + Time-stamp: <2005-03-30 12:02:33 simonmar> RTS specific types. */ @@ -13,7 +13,13 @@ typedef unsigned int nat; /* at least 32 bits (like int) */ typedef unsigned long lnat; /* at least 32 bits */ +#ifndef _MSC_VER typedef unsigned long long ullong; /* at least 32 bits */ +typedef long long llong; +#else +typedef unsigned __int64 ullong; /* at least 32 bits */ +typedef __int64 llong; +#endif /* ullong (64|128-bit) type: only include if needed (not ANSI) */ #if defined(__GNUC__) @@ -31,16 +37,17 @@ typedef enum { Types specific to the parallel runtime system. */ +typedef ullong rtsTime; + #if defined(PAR) /* types only needed in the parallel system */ typedef struct hashtable ParHashTable; typedef struct hashlist ParHashList; -// typedef double REAL_TIME; -// typedef W_ TIME; -// typedef GlobalTaskId Proc; +/* typedef double REAL_TIME; */ +/* typedef W_ TIME; */ +/* typedef GlobalTaskId Proc; */ typedef int GlobalTaskId; -typedef ullong rtsTime; typedef GlobalTaskId PEs; typedef unsigned int rtsWeight; typedef int rtsPacket; @@ -68,6 +75,11 @@ typedef struct gala { #elif defined(GRAN) +/* + * GlobalTaskId is dummy in GranSim; + * we define it to have cleaner code in the RTS + */ +typedef int GlobalTaskId; typedef lnat rtsTime; typedef StgWord PEs;