diff options
Diffstat (limited to 'rts/Prelude.h')
-rw-r--r-- | rts/Prelude.h | 86 |
1 files changed, 41 insertions, 45 deletions
diff --git a/rts/Prelude.h b/rts/Prelude.h index b2f9d994e7..0c54148ba2 100644 --- a/rts/Prelude.h +++ b/rts/Prelude.h @@ -14,42 +14,42 @@ */ #if IN_STG_CODE #define PRELUDE_INFO(i) extern W_(i)[] -#define PRELUDE_CLOSURE(i) extern W_(i ## _static_closure)[] +#define PRELUDE_CLOSURE(i) extern W_(i)[] #else #define PRELUDE_INFO(i) extern const StgInfoTable DLL_IMPORT_DATA_VARNAME(i) -#define PRELUDE_CLOSURE(i) extern StgClosure DLL_IMPORT_DATA_VARNAME(i ## _static_closure) +#define PRELUDE_CLOSURE(i) extern StgClosure DLL_IMPORT_DATA_VARNAME(i) #endif /* Define canonical names so we can abstract away from the actual * modules these names are defined in. */ -PRELUDE_CLOSURE(ghczmprim_GHCziTypes_True); -PRELUDE_CLOSURE(ghczmprim_GHCziTypes_False); -PRELUDE_CLOSURE(base_GHCziPack_unpackCString); -PRELUDE_CLOSURE(base_GHCziWeak_runFinalizzerBatch); +PRELUDE_CLOSURE(ghczmprim_GHCziTypes_True_closure); +PRELUDE_CLOSURE(ghczmprim_GHCziTypes_False_closure); +PRELUDE_CLOSURE(base_GHCziPack_unpackCString_closure); +PRELUDE_CLOSURE(base_GHCziWeak_runFinalizzerBatch_closure); #ifdef IN_STG_CODE -extern W_ ZCMain_main_static_closure[]; +extern W_ ZCMain_main_closure[]; #else -extern StgClosure ZCMain_main_static_closure; +extern StgClosure ZCMain_main_closure; #endif -PRELUDE_CLOSURE(base_GHCziIOziException_stackOverflow); -PRELUDE_CLOSURE(base_GHCziIOziException_heapOverflow); -PRELUDE_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnThrowTo); -PRELUDE_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnMVar); -PRELUDE_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnSTM); -PRELUDE_CLOSURE(base_ControlziExceptionziBase_nonTermination); -PRELUDE_CLOSURE(base_ControlziExceptionziBase_nestedAtomically); -PRELUDE_CLOSURE(base_GHCziEventziThread_blockedOnBadFD); +PRELUDE_CLOSURE(base_GHCziIOziException_stackOverflow_closure); +PRELUDE_CLOSURE(base_GHCziIOziException_heapOverflow_closure); +PRELUDE_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnThrowTo_closure); +PRELUDE_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnMVar_closure); +PRELUDE_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnSTM_closure); +PRELUDE_CLOSURE(base_ControlziExceptionziBase_nonTermination_closure); +PRELUDE_CLOSURE(base_ControlziExceptionziBase_nestedAtomically_closure); +PRELUDE_CLOSURE(base_GHCziEventziThread_blockedOnBadFD_closure); -PRELUDE_CLOSURE(base_GHCziConcziSync_runSparks); -PRELUDE_CLOSURE(base_GHCziConcziIO_ensureIOManagerIsRunning); -PRELUDE_CLOSURE(base_GHCziConcziIO_ioManagerCapabilitiesChanged); -PRELUDE_CLOSURE(base_GHCziConcziSignal_runHandlers); +PRELUDE_CLOSURE(base_GHCziConcziSync_runSparks_closure); +PRELUDE_CLOSURE(base_GHCziConcziIO_ensureIOManagerIsRunning_closure); +PRELUDE_CLOSURE(base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure); +PRELUDE_CLOSURE(base_GHCziConcziSignal_runHandlers_closure); -PRELUDE_CLOSURE(base_GHCziTopHandler_flushStdHandles); +PRELUDE_CLOSURE(base_GHCziTopHandler_flushStdHandles_closure); PRELUDE_INFO(ghczmprim_GHCziTypes_Czh_static_info); PRELUDE_INFO(ghczmprim_GHCziTypes_Izh_static_info); @@ -86,30 +86,26 @@ PRELUDE_INFO(base_GHCziWord_W64zh_con_info); PRELUDE_INFO(base_GHCziStable_StablePtr_static_info); PRELUDE_INFO(base_GHCziStable_StablePtr_con_info); -#define mainIO_closure (STATIC_CLOSURE(ZCMain_main)) - -// XXX update me -#define IMPORT_CLOSURE(name) DLL_IMPORT_DATA_REF(name ## _static_closure) - -#define True_closure IMPORT_CLOSURE(ghczmprim_GHCziTypes_True) -#define False_closure IMPORT_CLOSURE(ghczmprim_GHCziTypes_False) -#define unpackCString_closure IMPORT_CLOSURE(base_GHCziPack_unpackCString) -#define runFinalizerBatch_closure IMPORT_CLOSURE(base_GHCziWeak_runFinalizzerBatch) - -#define runSparks_closure IMPORT_CLOSURE(base_GHCziConcziSync_runSparks) -#define ensureIOManagerIsRunning_closure IMPORT_CLOSURE(base_GHCziConcziIO_ensureIOManagerIsRunning) -#define ioManagerCapabilitiesChanged_closure IMPORT_CLOSURE(base_GHCziConcziIO_ioManagerCapabilitiesChanged) -#define runHandlers_closure IMPORT_CLOSURE(base_GHCziConcziSignal_runHandlers) - -#define flushStdHandles_closure IMPORT_CLOSURE(base_GHCziTopHandler_flushStdHandles) - -#define stackOverflow_closure IMPORT_CLOSURE(base_GHCziIOziException_stackOverflow) -#define heapOverflow_closure IMPORT_CLOSURE(base_GHCziIOziException_heapOverflow) -#define blockedIndefinitelyOnMVar_closure IMPORT_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnMVar) -#define blockedIndefinitelyOnSTM_closure IMPORT_CLOSURE(base_GHCziIOziException_blockedIndefinitelyOnSTM) -#define nonTermination_closure IMPORT_CLOSURE(base_ControlziExceptionziBase_nonTermination) -#define nestedAtomically_closure IMPORT_CLOSURE(base_ControlziExceptionziBase_nestedAtomically) -#define blockedOnBadFD_closure IMPORT_CLOSURE(base_GHCziEventziThread_blockedOnBadFD) +#define True_closure DLL_IMPORT_DATA_REF(ghczmprim_GHCziTypes_True_closure) +#define False_closure DLL_IMPORT_DATA_REF(ghczmprim_GHCziTypes_False_closure) +#define unpackCString_closure DLL_IMPORT_DATA_REF(base_GHCziPack_unpackCString_closure) +#define runFinalizerBatch_closure DLL_IMPORT_DATA_REF(base_GHCziWeak_runFinalizzerBatch_closure) +#define mainIO_closure (&ZCMain_main_closure) + +#define runSparks_closure DLL_IMPORT_DATA_REF(base_GHCziConcziSync_runSparks_closure) +#define ensureIOManagerIsRunning_closure DLL_IMPORT_DATA_REF(base_GHCziConcziIO_ensureIOManagerIsRunning_closure) +#define ioManagerCapabilitiesChanged_closure DLL_IMPORT_DATA_REF(base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure) +#define runHandlers_closure DLL_IMPORT_DATA_REF(base_GHCziConcziSignal_runHandlers_closure) + +#define flushStdHandles_closure DLL_IMPORT_DATA_REF(base_GHCziTopHandler_flushStdHandles_closure) + +#define stackOverflow_closure DLL_IMPORT_DATA_REF(base_GHCziIOziException_stackOverflow_closure) +#define heapOverflow_closure DLL_IMPORT_DATA_REF(base_GHCziIOziException_heapOverflow_closure) +#define blockedIndefinitelyOnMVar_closure DLL_IMPORT_DATA_REF(base_GHCziIOziException_blockedIndefinitelyOnMVar_closure) +#define blockedIndefinitelyOnSTM_closure DLL_IMPORT_DATA_REF(base_GHCziIOziException_blockedIndefinitelyOnSTM_closure) +#define nonTermination_closure DLL_IMPORT_DATA_REF(base_ControlziExceptionziBase_nonTermination_closure) +#define nestedAtomically_closure DLL_IMPORT_DATA_REF(base_ControlziExceptionziBase_nestedAtomically_closure) +#define blockedOnBadFD_closure DLL_IMPORT_DATA_REF(base_GHCziEventziThread_blockedOnBadFD_closure) #define Czh_static_info DLL_IMPORT_DATA_REF(ghczmprim_GHCziTypes_Czh_static_info) #define Fzh_static_info DLL_IMPORT_DATA_REF(ghczmprim_GHCziTypes_Fzh_static_info) |