1 /* -----------------------------------------------------------------------------
2 * $Id: Prelude.h,v 1.20 2002/06/27 15:38:58 simonmar Exp $
4 * (c) The GHC Team, 1998-2001
6 * Prelude identifiers that we sometimes need to refer to in the RTS.
8 * ---------------------------------------------------------------------------*/
13 /* Define canonical names so we can abstract away from the actual
14 * modules these names are defined in.
17 extern DLL_IMPORT const StgClosure GHCziBase_True_closure;
18 extern DLL_IMPORT const StgClosure GHCziBase_False_closure;
19 extern DLL_IMPORT const StgClosure GHCziPack_unpackCString_closure;
20 extern DLL_IMPORT const StgClosure GHCziWeak_runFinalizzerBatch_closure;
21 extern const StgClosure Main_zdmain_closure;
22 extern DLL_IMPORT const StgClosure GHCziTopHandler_runIO_closure;
23 extern DLL_IMPORT const StgClosure GHCziTopHandler_runNonIO_closure;
25 extern DLL_IMPORT const StgClosure GHCziIOBase_stackOverflow_closure;
26 extern DLL_IMPORT const StgClosure GHCziIOBase_heapOverflow_closure;
27 extern DLL_IMPORT const StgClosure GHCziIOBase_BlockedOnDeadMVar_closure;
28 extern DLL_IMPORT const StgClosure GHCziIOBase_NonTermination_closure;
29 extern DLL_IMPORT const StgClosure GHCziIOBase_Deadlock_closure;
31 extern DLL_IMPORT const StgInfoTable GHCziBase_Czh_static_info;
32 extern DLL_IMPORT const StgInfoTable GHCziBase_Izh_static_info;
33 extern DLL_IMPORT const StgInfoTable GHCziFloat_Fzh_static_info;
34 extern DLL_IMPORT const StgInfoTable GHCziFloat_Dzh_static_info;
35 extern DLL_IMPORT const StgInfoTable Addr_Azh_static_info;
36 extern DLL_IMPORT const StgInfoTable GHCziPtr_Ptr_static_info;
37 extern DLL_IMPORT const StgInfoTable GHCziInt_I8zh_static_info;
38 extern DLL_IMPORT const StgInfoTable GHCziInt_I16zh_static_info;
39 extern DLL_IMPORT const StgInfoTable GHCziInt_I32zh_static_info;
40 extern DLL_IMPORT const StgInfoTable GHCziInt_I64zh_static_info;
41 extern DLL_IMPORT const StgInfoTable GHCziWord_Wzh_static_info;
42 extern DLL_IMPORT const StgInfoTable GHCziWord_W8zh_static_info;
43 extern DLL_IMPORT const StgInfoTable GHCziWord_W16zh_static_info;
44 extern DLL_IMPORT const StgInfoTable GHCziWord_W32zh_static_info;
45 extern DLL_IMPORT const StgInfoTable GHCziWord_W64zh_static_info;
46 extern DLL_IMPORT const StgInfoTable GHCziBase_Czh_con_info;
47 extern DLL_IMPORT const StgInfoTable GHCziBase_Izh_con_info;
48 extern DLL_IMPORT const StgInfoTable GHCziFloat_Fzh_con_info;
49 extern DLL_IMPORT const StgInfoTable GHCziFloat_Dzh_con_info;
50 extern DLL_IMPORT const StgInfoTable GHCziPtr_Ptr_con_info;
51 extern DLL_IMPORT const StgInfoTable Addr_Azh_con_info;
52 extern DLL_IMPORT const StgInfoTable GHCziWord_Wzh_con_info;
53 extern DLL_IMPORT const StgInfoTable GHCziInt_I8zh_con_info;
54 extern DLL_IMPORT const StgInfoTable GHCziInt_I16zh_con_info;
55 extern DLL_IMPORT const StgInfoTable GHCziInt_I32zh_con_info;
56 extern DLL_IMPORT const StgInfoTable GHCziInt_I64zh_con_info;
57 extern DLL_IMPORT const StgInfoTable GHCziWord_W8zh_con_info;
58 extern DLL_IMPORT const StgInfoTable GHCziWord_W16zh_con_info;
59 extern DLL_IMPORT const StgInfoTable GHCziWord_W32zh_con_info;
60 extern DLL_IMPORT const StgInfoTable GHCziWord_W64zh_con_info;
61 extern DLL_IMPORT const StgInfoTable GHCziStable_StablePtr_static_info;
62 extern DLL_IMPORT const StgInfoTable GHCziStable_StablePtr_con_info;
64 #define True_closure (&GHCziBase_True_closure)
65 #define False_closure (&GHCziBase_False_closure)
66 #define unpackCString_closure (&GHCziPack_unpackCString_closure)
67 #define runFinalizerBatch_closure (&GHCziWeak_runFinalizzerBatch_closure)
68 #define mainIO_closure (&Main_zdmain_closure)
69 #define runIO_closure (&GHCziTopHandler_runIO_closure)
70 #define runNonIO_closure (&GHCziTopHandler_runNonIO_closure)
72 #define stackOverflow_closure (&GHCziIOBase_stackOverflow_closure)
73 #define heapOverflow_closure (&GHCziIOBase_heapOverflow_closure)
74 #define BlockedOnDeadMVar_closure (&GHCziIOBase_BlockedOnDeadMVar_closure)
75 #define NonTermination_closure (&GHCziIOBase_NonTermination_closure)
76 #define Deadlock_closure (&GHCziIOBase_NonTermination_closure)
78 #define Czh_static_info (&GHCziBase_Czh_static_info)
79 #define Fzh_static_info (&GHCziFloat_Fzh_static_info)
80 #define Dzh_static_info (&GHCziFloat_Dzh_static_info)
81 #define Azh_static_info (&Addr_Azh_static_info)
82 #define Izh_static_info (&GHCziBase_Izh_static_info)
83 #define I8zh_static_info (&GHCziInt_I8zh_static_info)
84 #define I16zh_static_info (&GHCziInt_I16zh_static_info)
85 #define I32zh_static_info (&GHCziInt_I32zh_static_info)
86 #define I64zh_static_info (&GHCziInt_I64zh_static_info)
87 #define Wzh_static_info (&GHCziWord_Wzh_static_info)
88 #define W8zh_static_info (&GHCziWord_W8zh_static_info)
89 #define W16zh_static_info (&GHCziWord_W16zh_static_info)
90 #define W32zh_static_info (&GHCziWord_W32zh_static_info)
91 #define W64zh_static_info (&GHCziWord_W64zh_static_info)
92 #define Ptr_static_info (&GHCziPtr_Ptr_static_info)
93 #define Czh_con_info (&GHCziBase_Czh_con_info)
94 #define Izh_con_info (&GHCziBase_Izh_con_info)
95 #define Fzh_con_info (&GHCziFloat_Fzh_con_info)
96 #define Dzh_con_info (&GHCziFloat_Dzh_con_info)
97 #define Azh_con_info (&Addr_Azh_con_info)
98 #define Wzh_con_info (&GHCziWord_Wzh_con_info)
99 #define W8zh_con_info (&GHCziWord_W8zh_con_info)
100 #define W16zh_con_info (&GHCziWord_W16zh_con_info)
101 #define W32zh_con_info (&GHCziWord_W32zh_con_info)
102 #define W64zh_con_info (&GHCziWord_W64zh_con_info)
103 #define I8zh_con_info (&GHCziInt_I8zh_con_info)
104 #define I16zh_con_info (&GHCziInt_I16zh_con_info)
105 #define I32zh_con_info (&GHCziInt_I32zh_con_info)
106 #define I64zh_con_info (&GHCziInt_I64zh_con_info)
107 #define I64zh_con_info (&GHCziInt_I64zh_con_info)
108 #define Ptr_con_info (&GHCziPtr_Ptr_con_info)
109 #define StablePtr_static_info (&GHCziStable_StablePtr_static_info)
110 #define StablePtr_con_info (&GHCziStable_StablePtr_con_info)
112 #endif /* PRELUDE_H */