[project @ 2005-03-10 14:03:28 by simonmar]
[ghc-hetmet.git] / ghc / includes / mkDerivedConstants.c
index f5d6213..8587fa7 100644 (file)
@@ -11,8 +11,6 @@
  *
  * ------------------------------------------------------------------------*/
 
-#include <stdio.h>
-
 #define IN_STG_CODE 0
 
 // We need offsets of profiled things... better be careful that this
@@ -23,6 +21,8 @@
 #include "RtsFlags.h"
 #include "Storage.h"
 
+#include <stdio.h>
+
 #define str(a,b) #a "_" #b
 
 #define OFFSET(s_type, field) ((unsigned int)&(((s_type*)0)->field))
     def_offset(str(s_type,field), OFFSET(s_type,field) - sizeof(StgHeader) - sizeof(StgTSOProfInfo));
 
 #define tso_field_macro(str) \
-    printf("#define " str "(__ptr__)  REP_" str "[__ptr__+SIZEOF_StgHeader+SIZEOF_OPT_StgTSOProfInfo+SIZEOF_OPT_StgTSOTickyInfo+SIZEOF_OPT_StgTSOParInfo+SIZEOF_OPT_StgTSOGranInfo+SIZEOF_OPT_StgTSODistInfo+OFFSET_" str "]\n");
+    printf("#define " str "(__ptr__)  REP_" str "[__ptr__+SIZEOF_StgHeader+SIZEOF_OPT_StgTSOProfInfo+SIZEOF_OPT_StgTSOParInfo+SIZEOF_OPT_StgTSOGranInfo+SIZEOF_OPT_StgTSODistInfo+OFFSET_" str "]\n");
 
 #define tso_field(s_type, field)               \
     tso_offset(s_type, field);                 \
@@ -164,8 +164,9 @@ main(int argc, char *argv[])
     printf("#define STD_ITBL_SIZE   %d\n", sizeofW(StgInfoTable));
     printf("#define RET_ITBL_SIZE   %d\n", sizeofW(StgRetInfoTable) - sizeofW(StgInfoTable));
     printf("#define PROF_ITBL_SIZE  %d\n", sizeofW(StgProfInfo));
+
     printf("#define GRAN_ITBL_SIZE  %d\n", 0);
-    printf("#define TICKY_ITBL_SIZE %d\n", sizeofW(StgTickyInfo));
+    printf("#define TICKY_ITBL_SIZE %d\n", 0);
 
     printf("#define BLOCK_SIZE   %d\n", BLOCK_SIZE);
     printf("#define MBLOCK_SIZE   %d\n", MBLOCK_SIZE);  
@@ -212,7 +213,7 @@ main(int argc, char *argv[])
     struct_field(bdescr, link);
 
     struct_size(generation);
-    struct_field(generation, mut_once_list);
+    struct_field(generation, mut_list);
 
     struct_field(CostCentreStack, ccsID);
     struct_field(CostCentreStack, mem_alloc);
@@ -244,7 +245,6 @@ main(int argc, char *argv[])
     closure_payload(StgArrWords, payload);
 
     closure_field(StgTSO, link);
-    closure_field(StgTSO, mut_link);
     closure_field(StgTSO, global_link);
     closure_field(StgTSO, what_next);
     closure_field(StgTSO, why_blocked);
@@ -252,19 +252,18 @@ main(int argc, char *argv[])
     closure_field(StgTSO, blocked_exceptions);
     closure_field(StgTSO, id);
     closure_field(StgTSO, saved_errno);
+    closure_field(StgTSO, trec);
     closure_field_("StgTSO_CCCS", StgTSO, prof.CCCS);
     tso_field(StgTSO, sp);
     tso_offset(StgTSO, stack);
     tso_field(StgTSO, stack_size);
 
     struct_size(StgTSOProfInfo);
-    struct_size(StgTSOTickyInfo);
     struct_size(StgTSOParInfo);
     struct_size(StgTSOGranInfo);
     struct_size(StgTSODistInfo);
 
     opt_struct_size(StgTSOProfInfo,PROFILING);
-    opt_struct_size(StgTSOTickyInfo,TICKY_TICKY);
     opt_struct_size(StgTSOParInfo,PAR);
     opt_struct_size(StgTSOGranInfo,GRAN);
     opt_struct_size(StgTSODistInfo,DIST);
@@ -294,11 +293,23 @@ main(int argc, char *argv[])
     closure_payload(StgAP_STACK, payload);
 
     closure_field(StgInd, indirectee);
-    closure_field(StgMutClosure, mut_link);
 
     closure_size(StgMutVar);
     closure_field(StgMutVar, var);
 
+    closure_size(StgAtomicallyFrame);
+    closure_field(StgAtomicallyFrame, waiting);
+    closure_field(StgAtomicallyFrame, code);
+
+    closure_size(StgCatchSTMFrame);
+    closure_field(StgCatchSTMFrame, handler);
+
+    closure_size(StgCatchRetryFrame);
+    closure_field(StgCatchRetryFrame, running_alt_code);
+    closure_field(StgCatchRetryFrame, first_code);
+    closure_field(StgCatchRetryFrame, alt_code);
+    closure_field(StgCatchRetryFrame, first_code_trec);
+
     closure_size(StgForeignObj);
     closure_field(StgForeignObj,data);
 
@@ -316,6 +327,10 @@ main(int argc, char *argv[])
     closure_field(StgMVar,tail);
     closure_field(StgMVar,value);
 
+    closure_size(StgTVar);
+    closure_field(StgTVar,current_value);
+    closure_field(StgTVar,first_wait_queue_entry);
+
     closure_size(StgBCO);
     closure_field(StgBCO, instrs);
     closure_field(StgBCO, literals);
@@ -346,7 +361,7 @@ main(int argc, char *argv[])
     struct_field(StgFunInfoExtraFwd, bitmap);
 
     struct_size(StgFunInfoExtraRev);
-    struct_field(StgFunInfoExtraRev, slow_apply);
+    struct_field(StgFunInfoExtraRev, slow_apply_offset);
     struct_field(StgFunInfoExtraRev, fun_type);
     struct_field(StgFunInfoExtraRev, arity);
     struct_field(StgFunInfoExtraRev, bitmap);
@@ -358,7 +373,7 @@ main(int argc, char *argv[])
     struct_field(snEntry,sn_obj);
     struct_field(snEntry,addr);
 
-#ifdef mingw32_TARGET_OS
+#ifdef mingw32_HOST_OS
     struct_size(StgAsyncIOResult);
     struct_field(StgAsyncIOResult, reqID);
     struct_field(StgAsyncIOResult, len);