1 /* -----------------------------------------------------------------------------
2 * $Id: Sanity.h,v 1.7 2000/12/11 12:37:00 simonmar Exp $
4 * (c) The GHC Team, 1998-1999
6 * Prototypes for functions in Sanity.c
8 * ---------------------------------------------------------------------------*/
11 /* debugging routines */
12 extern void checkHeap ( bdescr *bd, StgPtr start );
13 extern void checkHeapChunk ( StgPtr start, StgPtr end );
14 extern void checkChain ( bdescr *bd );
15 extern void checkStack ( StgPtr sp, StgPtr stack_end, StgUpdateFrame* su );
16 extern void checkTSO ( StgTSO* tso );
17 extern void checkGlobalTSOList (rtsBool checkTSOs);
18 extern void checkStaticObjects ( void );
20 extern void checkTSOsSanity(void);
21 extern rtsBool checkThreadQSanity (PEs proc, rtsBool check_TSO_too);
22 extern rtsBool checkThreadQsSanity (rtsBool check_TSO_too);
25 extern void checkBQ (StgBlockingQueueElement *bqe, StgClosure *closure);
26 extern void checkLAGAtable(rtsBool check_closures);
27 extern void checkHeapChunk(StgPtr start, StgPtr end);
29 extern void checkBQ (StgTSO *bqe, StgClosure *closure);
32 extern StgOffset checkClosure( StgClosure* p );
34 /* test whether an object is already on update list */
35 extern rtsBool isBlackhole( StgTSO* tso, StgClosure* p );