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); \
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);
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);
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);
closure_field(StgWeak,value);
closure_field(StgWeak,finalizer);
+ closure_size(StgDeadWeak);
+ closure_field(StgDeadWeak,link);
+
closure_size(StgMVar);
closure_field(StgMVar,head);
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);
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);
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);