2 Time-stamp: <2004-11-08 12:17:01 simonmar>
7 /* -------------------------------------------------------------------------
8 Generally useful typedefs
9 ------------------------------------------------------------------------- */
14 #if SIZEOF_VOID_P == 8
15 typedef unsigned long nat; /* at least 32 bits (like int) */
17 typedef unsigned int nat; /* at least 32 bits (like int) */
19 typedef unsigned long lnat; /* at least 32 bits */
21 typedef unsigned long long ullong; /* at least 32 bits */
22 typedef long long llong;
24 typedef unsigned __int64 ullong; /* at least 32 bits */
25 typedef __int64 llong;
28 /* ullong (64|128-bit) type: only include if needed (not ANSI) */
41 Types specific to the parallel runtime system.
44 typedef ullong rtsTime;
47 /* types only needed in the parallel system */
48 typedef struct hashtable ParHashTable;
49 typedef struct hashlist ParHashList;
51 // typedef double REAL_TIME;
53 // typedef GlobalTaskId Proc;
54 typedef int GlobalTaskId;
55 typedef GlobalTaskId PEs;
56 typedef unsigned int rtsWeight;
57 typedef int rtsPacket;
60 /* Global addresses i.e. unique ids in a parallel setup; needed in Closures.h*/
82 // GlobalTaskId is dummy in GranSim;
83 // we define it to have cleaner code in the RTS
84 typedef int GlobalTaskId;
90 #endif /* RTS_TYPES_H */