/* ----------------------------------------------------------------------------
- * $Id: ClosureTypes.h,v 1.19 2004/11/18 09:56:17 tharris Exp $
*
- * (c) The GHC Team, 1998-1999
+ * (c) The GHC Team, 1998-2005
*
- * Closure Type Constants
+ * Closure Type Constants: out here because the native code generator
+ * needs to get at them.
*
* -------------------------------------------------------------------------- */
#ifndef CLOSURETYPES_H
#define CLOSURETYPES_H
-/* Out here because the native code generator needs to get at them. */
+/*
+ * WARNING WARNING WARNING
+ *
+ * Keep the closure tags contiguous: rts/ClosureFlags.c relies on
+ * this.
+ *
+ * If you add or delete any closure types, don't forget to update
+ * the closure flags table in rts/ClosureFlags.c.
+ */
/* Object tag 0 raises an internal error */
#define INVALID_OBJECT 0
#define STOP_FRAME 44
#define CAF_BLACKHOLE 45
#define BLACKHOLE 46
-#define BLACKHOLE_BQ 47
-#define SE_BLACKHOLE 48
-#define SE_CAF_BLACKHOLE 49
-#define MVAR 50
-#define ARR_WORDS 51
-#define MUT_ARR_PTRS 52
-#define MUT_ARR_PTRS_FROZEN 53
-#define MUT_VAR 54
-#define MUT_CONS 55
-#define WEAK 56
-#define FOREIGN 57
+#define SE_BLACKHOLE 47
+#define SE_CAF_BLACKHOLE 48
+#define MVAR 49
+#define ARR_WORDS 50
+#define MUT_ARR_PTRS_CLEAN 51
+#define MUT_ARR_PTRS_DIRTY 52
+#define MUT_ARR_PTRS_FROZEN0 53
+#define MUT_ARR_PTRS_FROZEN 54
+#define MUT_VAR_CLEAN 55
+#define MUT_VAR_DIRTY 56
+#define WEAK 57
#define STABLE_NAME 58
#define TSO 59
#define BLOCKED_FETCH 60
#define CATCH_RETRY_FRAME 71
#define CATCH_STM_FRAME 72
#define N_CLOSURE_TYPES 73
-
+
#endif /* CLOSURETYPES_H */