From b25ebcf682220e365cfa39d5ea55263c89ee4fb2 Mon Sep 17 00:00:00 2001 From: sof Date: Wed, 26 Oct 2005 22:33:20 +0000 Subject: [PATCH] [project @ 2005-10-26 22:33:20 by sof] ASSERT_TASK_ID(): THREADED_RTS-only assert --- ghc/rts/Capability.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ghc/rts/Capability.h b/ghc/rts/Capability.h index b559dcd..3ebb9f0 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. // -- 1.7.10.4