diff options
author | sof <unknown> | 2005-10-26 22:33:20 +0000 |
---|---|---|
committer | sof <unknown> | 2005-10-26 22:33:20 +0000 |
commit | b25ebcf682220e365cfa39d5ea55263c89ee4fb2 (patch) | |
tree | 80ab13b66957801e85b994ce41216a8ba2dcbe75 | |
parent | 9348149e3cfbda59690c6c6f16dd38008f0fa59d (diff) | |
download | haskell-b25ebcf682220e365cfa39d5ea55263c89ee4fb2.tar.gz |
[project @ 2005-10-26 22:33:20 by sof]
ASSERT_TASK_ID(): THREADED_RTS-only assert
-rw-r--r-- | ghc/rts/Capability.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ghc/rts/Capability.h b/ghc/rts/Capability.h index b559dcd2dc..3ebb9f060c 100644 --- a/ghc/rts/Capability.h +++ b/ghc/rts/Capability.h @@ -78,6 +78,12 @@ struct Capability_ { }; // typedef Capability, defined in RtsAPI.h +#if defined(THREADED_RTS) +#define ASSERT_TASK_ID(task) ASSERT(task->id == osThreadId()) +#else +#define ASSERT_TASK_ID(task) /*empty*/ +#endif + // These properties should be true when a Task is holding a Capability #define ASSERT_CAPABILITY_INVARIANTS(cap,task) \ ASSERT(cap->running_task != NULL && cap->running_task == task); \ @@ -85,8 +91,7 @@ struct Capability_ { ASSERT(cap->run_queue_hd == END_TSO_QUEUE ? \ cap->run_queue_tl == END_TSO_QUEUE : 1); \ ASSERT(myTask() == task); \ - ASSERT(task->id == osThreadId()); - + ASSERT_TASK_ID(task); // Converts a *StgRegTable into a *Capability. // |