[project @ 2005-03-27 13:41:13 by panne]
[ghc-hetmet.git] / ghc / includes / ClosureTypes.h
1 /* ----------------------------------------------------------------------------
2  * 
3  * (c) The GHC Team, 1998-1999
4  *
5  * Closure Type Constants
6  *
7  * -------------------------------------------------------------------------- */
8
9 #ifndef CLOSURETYPES_H
10 #define CLOSURETYPES_H
11
12 /* Out here because the native code generator needs to get at them. */
13
14 /* Object tag 0 raises an internal error */
15 #define INVALID_OBJECT          0
16 #define CONSTR                  1
17 #define CONSTR_1_0              2
18 #define CONSTR_0_1              3
19 #define CONSTR_2_0              4
20 #define CONSTR_1_1              5
21 #define CONSTR_0_2              6
22 #define CONSTR_INTLIKE          7 
23 #define CONSTR_CHARLIKE         8 
24 #define CONSTR_STATIC           9 
25 #define CONSTR_NOCAF_STATIC     10
26 #define FUN                     11
27 #define FUN_1_0                 12
28 #define FUN_0_1                 13
29 #define FUN_2_0                 14
30 #define FUN_1_1                 15
31 #define FUN_0_2                 16
32 #define FUN_STATIC              17
33 #define THUNK                   18
34 #define THUNK_1_0               19
35 #define THUNK_0_1               20
36 #define THUNK_2_0               21
37 #define THUNK_1_1               22
38 #define THUNK_0_2               23
39 #define THUNK_STATIC            24
40 #define THUNK_SELECTOR          25
41 #define BCO                     26
42 #define AP                      27
43 #define PAP                     28
44 #define AP_STACK                29
45 #define IND                     30
46 #define IND_OLDGEN              31
47 #define IND_PERM                32
48 #define IND_OLDGEN_PERM         33
49 #define IND_STATIC              34
50 #define RET_BCO                 35
51 #define RET_SMALL               36
52 #define RET_VEC_SMALL           37
53 #define RET_BIG                 38
54 #define RET_VEC_BIG             39
55 #define RET_DYN                 40
56 #define RET_FUN                 41
57 #define UPDATE_FRAME            42
58 #define CATCH_FRAME             43
59 #define STOP_FRAME              44
60 #define CAF_BLACKHOLE           45
61 #define BLACKHOLE               46
62 #define BLACKHOLE_BQ            47
63 #define SE_BLACKHOLE            48
64 #define SE_CAF_BLACKHOLE        49
65 #define MVAR                    50
66 #define ARR_WORDS               51
67 #define MUT_ARR_PTRS            52
68 #define MUT_ARR_PTRS_FROZEN0    53
69 #define MUT_ARR_PTRS_FROZEN     54
70 #define MUT_VAR                 55
71 #define WEAK                    56
72 #define FOREIGN                 57
73 #define STABLE_NAME             58
74 #define TSO                     59
75 #define BLOCKED_FETCH           60
76 #define FETCH_ME                61
77 #define FETCH_ME_BQ             62
78 #define RBH                     63
79 #define EVACUATED               64
80 #define REMOTE_REF              65
81 #define TVAR_WAIT_QUEUE         66
82 #define TVAR                    67
83 #define TREC_CHUNK              68
84 #define TREC_HEADER             69
85 #define ATOMICALLY_FRAME        70
86 #define CATCH_RETRY_FRAME       71
87 #define CATCH_STM_FRAME         72
88 #define N_CLOSURE_TYPES         73
89
90 #endif /* CLOSURETYPES_H */