1 /* ----------------------------------------------------------------------------
3 * (c) The GHC Team, 1998-2005
5 * Closure Type Constants: out here because the native code generator
6 * needs to get at them.
8 * -------------------------------------------------------------------------- */
10 #ifndef RTS_STORAGE_CLOSURETYPES_H
11 #define RTS_STORAGE_CLOSURETYPES_H
14 * WARNING WARNING WARNING
16 * Keep the closure tags contiguous: rts/ClosureFlags.c relies on
19 * If you add or delete any closure types, don't forget to update
20 * the closure flags table in rts/ClosureFlags.c.
23 /* Object tag 0 raises an internal error */
24 #define INVALID_OBJECT 0
31 #define CONSTR_STATIC 7
32 #define CONSTR_NOCAF_STATIC 8
46 #define THUNK_STATIC 22
47 #define THUNK_SELECTOR 23
60 #define UPDATE_FRAME 36
61 #define CATCH_FRAME 37
63 #define BLOCKING_QUEUE 39
68 #define MUT_ARR_PTRS_CLEAN 44
69 #define MUT_ARR_PTRS_DIRTY 45
70 #define MUT_ARR_PTRS_FROZEN0 46
71 #define MUT_ARR_PTRS_FROZEN 47
72 #define MUT_VAR_CLEAN 48
73 #define MUT_VAR_DIRTY 49
79 #define ATOMICALLY_FRAME 55
80 #define CATCH_RETRY_FRAME 56
81 #define CATCH_STM_FRAME 57
83 #define N_CLOSURE_TYPES 59
85 #endif /* RTS_STORAGE_CLOSURETYPES_H */