-//@cindex EMPTY_RUN_QUEUE
-/* Check whether the run queue is empty i.e. the PE is idle
- */
-#define EMPTY_RUN_QUEUE() (run_queue_hd == END_TSO_QUEUE)
-#define EMPTY_QUEUE(q) (q == END_TSO_QUEUE)
-
-#endif /* __SCHEDULE_H__ */
-
-//@node Index, , Some convenient macros
-//@subsection Index
-
-//@index
-//* APPEND_TO_BLOCKED_QUEUE:: @cindex\s-+APPEND_TO_BLOCKED_QUEUE
-//* APPEND_TO_RUN_QUEUE:: @cindex\s-+APPEND_TO_RUN_QUEUE
-//* POP_RUN_QUEUE :: @cindex\s-+POP_RUN_QUEUE
-//* PUSH_ON_RUN_QUEUE:: @cindex\s-+PUSH_ON_RUN_QUEUE
-//* awaitEvent:: @cindex\s-+awaitEvent
-//* awakenBlockedQueue:: @cindex\s-+awakenBlockedQueue
-//* awaken_blocked_queue:: @cindex\s-+awaken_blocked_queue
-//* context_switch:: @cindex\s-+context_switch
-//* exitScheduler:: @cindex\s-+exitScheduler
-//* gc_pending_cond:: @cindex\s-+gc_pending_cond
-//* initScheduler:: @cindex\s-+initScheduler
-//* raiseAsync:: @cindex\s-+raiseAsync
-//* startTasks:: @cindex\s-+startTasks
-//* unblockOne:: @cindex\s-+unblockOne
-//@end index
+STATIC_INLINE rtsBool
+emptyThreadQueues(Capability *cap)
+{
+ return emptyRunQueue(cap)
+#if !defined(THREADED_RTS)
+ && EMPTY_BLOCKED_QUEUE() && EMPTY_SLEEPING_QUEUE()
+#endif
+ ;
+}
+
+#ifdef DEBUG
+void sched_belch(char *s, ...)
+ GNU_ATTRIBUTE(format (printf, 1, 2));
+#endif
+
+#endif /* !IN_STG_CODE */
+
+#endif /* SCHEDULE_H */
+