remove unused TICK_FREQUENCY
[ghc-hetmet.git] / includes / Constants.h
index 4f3c35b..012acd1 100644 (file)
 #define MAX_LONG_REG    1
 
 /* -----------------------------------------------------------------------------
- *  Maximum number of constructors in a data type for direct-returns. 
- *
- *   NB. There are various places that assume the value of this
- *   constant, such as the polymorphic return frames for updates
- *   (stg_upd_frame_info) and catch frames (stg_catch_frame_info).
- * -------------------------------------------------------------------------- */
-
-#define MAX_VECTORED_RTN 8
-
-/* -----------------------------------------------------------------------------
    Semi-Tagging constants
 
    Old Comments about this stuff:
 #define ThreadBlocked  4
 #define ThreadFinished 5
 
+/* 
+ * Flags for the tso->flags field.
+ *
+ * The TSO_DIRTY flag indicates that this TSO's stack should be
+ * scanned during garbage collection.  The link field of a TSO is
+ * always scanned, so we don't have to dirty a TSO just for linking
+ * it on a different list.
+ *
+ * TSO_DIRTY is set by 
+ *    - schedule(), just before running a thread,
+ *    - raiseAsync(), because it modifies a thread's stack
+ *    - resumeThread(), just before running the thread again
+ * and unset by the garbage collector (only).
+ */
+#define TSO_DIRTY   1
+
+/*
+ * TSO_LOCKED is set when a TSO is locked to a particular Capability.
+ */
+#define TSO_LOCKED  2
+
+/*
+ * TSO_BLOCKEX: the TSO is blocking exceptions
+ *
+ * TSO_INTERRUPTIBLE: the TSO can be interrupted if it blocks
+ * interruptibly (eg. with BlockedOnMVar).
+ *
+ * TSO_STOPPED_ON_BREAKPOINT: the thread is currently stopped in a breakpoint
+ */
+#define TSO_BLOCKEX       4
+#define TSO_INTERRUPTIBLE 8
+#define TSO_STOPPED_ON_BREAKPOINT 16 
+
 /* -----------------------------------------------------------------------------
    RET_DYN stack frames
    -------------------------------------------------------------------------- */
 #error RESERVED_STACK_WORDS may be wrong!
 #endif
 
-/* -----------------------------------------------------------------------------
-   How often our context-switch timer ticks
-   -------------------------------------------------------------------------- */
-
-#define TICK_FREQUENCY   50                      /* ticks per second */
-
 #endif /* CONSTANTS_H */