blob: 5d9cc3cdc457156227b98b02241f771585f4f341 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
/* -----------------------------------------------------------------------------
* $Id: Prelude.h,v 1.6 2000/03/23 17:45:32 simonpj Exp $
*
* (c) The GHC Team, 1998-2000
*
* Prelude identifiers that we sometimes need to refer to in the RTS.
*
* ---------------------------------------------------------------------------*/
#ifndef PRELUDE_H
#define PRELUDE_H
/* Define canonical names so we can abstract away from the actual
* module these names are defined in.
*/
#ifndef INTERPRETER
extern DLL_IMPORT const StgClosure PrelBase_True_closure;
extern DLL_IMPORT const StgClosure PrelBase_False_closure;
extern DLL_IMPORT const StgClosure PrelPack_unpackCString_closure;
extern DLL_IMPORT const StgClosure PrelException_stackOverflow_closure;
extern DLL_IMPORT const StgClosure PrelException_heapOverflow_closure;
extern const StgClosure PrelMain_mainIO_closure;
extern DLL_IMPORT const StgClosure PrelException_PutFullMVar_closure;
extern DLL_IMPORT const StgClosure PrelException_BlockedOnDeadMVar_closure;
extern DLL_IMPORT const StgClosure PrelException_NonTermination_closure;
extern DLL_IMPORT const StgInfoTable PrelBase_Czh_static_info;
extern DLL_IMPORT const StgInfoTable PrelBase_Izh_static_info;
extern DLL_IMPORT const StgInfoTable PrelFloat_Fzh_static_info;
extern DLL_IMPORT const StgInfoTable PrelFloat_Dzh_static_info;
extern DLL_IMPORT const StgInfoTable PrelAddr_Azh_static_info;
extern DLL_IMPORT const StgInfoTable PrelAddr_Wzh_static_info;
extern DLL_IMPORT const StgInfoTable PrelBase_Czh_con_info;
extern DLL_IMPORT const StgInfoTable PrelBase_Izh_con_info;
extern DLL_IMPORT const StgInfoTable PrelFloat_Fzh_con_info;
extern DLL_IMPORT const StgInfoTable PrelFloat_Dzh_con_info;
extern DLL_IMPORT const StgInfoTable PrelAddr_Azh_con_info;
extern DLL_IMPORT const StgInfoTable PrelAddr_Wzh_con_info;
extern DLL_IMPORT const StgInfoTable PrelAddr_I64zh_con_info;
extern DLL_IMPORT const StgInfoTable PrelAddr_W64zh_con_info;
extern DLL_IMPORT const StgInfoTable PrelStable_StablePtr_static_info;
extern DLL_IMPORT const StgInfoTable PrelStable_StablePtr_con_info;
#define True_closure (&PrelBase_True_closure)
#define False_closure (&PrelBase_False_closure)
#define stackOverflow_closure (&PrelException_stackOverflow_closure)
#define heapOverflow_closure (&PrelException_heapOverflow_closure)
#define PutFullMVar_closure (&PrelException_PutFullMVar_closure)
#define BlockedOnDeadMVar_closure (&PrelException_BlockedOnDeadMVar_closure)
#define NonTermination_closure (&PrelException_NonTermination_closure)
#define Czh_static_info (&PrelBase_Czh_static_info)
#define Izh_static_info (&PrelBase_Izh_static_info)
#define Fzh_static_info (&PrelFloat_Fzh_static_info)
#define Dzh_static_info (&PrelFloat_Dzh_static_info)
#define Azh_static_info (&PrelAddr_Azh_static_info)
#define Wzh_static_info (&PrelAddr_Wzh_static_info)
#define Czh_con_info (&PrelBase_Czh_con_info)
#define Izh_con_info (&PrelBase_Izh_con_info)
#define Fzh_con_info (&PrelFloat_Fzh_con_info)
#define Dzh_con_info (&PrelFloat_Dzh_con_info)
#define Azh_con_info (&PrelAddr_Azh_con_info)
#define Wzh_con_info (&PrelAddr_Wzh_con_info)
#define W64zh_con_info (&PrelAddr_W64zh_con_info)
#define I64zh_con_info (&PrelAddr_I64zh_con_info)
#define StablePtr_static_info (&PrelStable_StablePtr_static_info)
#define StablePtr_con_info (&PrelStable_StablePtr_con_info)
#define mainIO_closure (&PrelMain_mainIO_closure)
#define unpackCString_closure (&PrelPack_unpackCString_closure)
#else /* INTERPRETER */
/* We need indirections to the Prelude stuff, because we can't link
* these symbols statically.
*/
extern const StgClosure *ind_True_closure;
extern const StgClosure *ind_False_closure;
extern const StgClosure *ind_unpackCString_closure;
extern const StgClosure *ind_stackOverflow_closure;
extern const StgClosure *ind_heapOverflow_closure;
extern const StgClosure *ind_PutFullMVar_closure;
extern const StgClosure *ind_BlockedOnDeadMVar_closure;
extern const StgClosure *ind_NonTermination_closure;
extern const StgInfoTable *ind_Czh_static_info;
extern const StgInfoTable *ind_Izh_static_info;
extern const StgInfoTable *ind_Fzh_static_info;
extern const StgInfoTable *ind_Dzh_static_info;
extern const StgInfoTable *ind_Azh_static_info;
extern const StgInfoTable *ind_Wzh_static_info;
extern const StgInfoTable *ind_Czh_con_info;
extern const StgInfoTable *ind_Izh_con_info;
extern const StgInfoTable *ind_Fzh_con_info;
extern const StgInfoTable *ind_Dzh_con_info;
extern const StgInfoTable *ind_Azh_con_info;
extern const StgInfoTable *ind_Wzh_con_info;
extern const StgInfoTable *ind_I64zh_con_info;
extern const StgInfoTable *ind_W64zh_con_info;
extern const StgInfoTable *ind_StablePtr_static_info;
extern const StgInfoTable *ind_StablePtr_con_info;
#define True_closure ind_True_closure
#define False_closure ind_False_closure
#define stackOverflow_closure ind_stackOverflow_closure
#define heapOverflow_closure ind_heapOverflow_closure
#define PutFullMVar_closure ind_PutFullMVar_closure
#define BlockedOnDeadMVar_closure ind_BlockedOnDeadMVar_closure
#define NonTermination_closure ind_NonTermination_closure
#define Czh_static_info ind_Czh_static_info
#define Izh_static_info ind_Izh_static_info
#define Fzh_static_info ind_Fzh_static_info
#define Dzh_static_info ind_Dzh_static_info
#define Azh_static_info ind_Azh_static_info
#define Wzh_static_info ind_Wzh_static_info
#define Czh_con_info ind_Czh_con_info
#define Izh_con_info ind_Izh_con_info
#define Fzh_con_info ind_Fzh_con_info
#define Dzh_con_info ind_Dzh_con_info
#define Azh_con_info ind_Azh_con_info
#define Wzh_con_info ind_Wzh_con_info
#define W64zh_con_info ind_W64zh_con_info
#define I64zh_con_info ind_I64zh_con_info
#define StablePtr_static_info ind_StablePtr_static_info
#define StablePtr_con_info ind_StablePtr_con_info
#define unpackCString_closure ind_unpackCString_closure
#endif
void fixupRTStoPreludeRefs( void*(*)(char*) );
#endif /* PRELUDE_H */
|