X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FStoragePriv.h;h=c829e7894437e8070e6f6d64860d0ad6613c0f27;hb=553e90d9a32ee1b1809430f260c401cc4169c6c7;hp=0c61bb64184a79e4ae5b227208fe77450f9066fd;hpb=120380d59e3171b4f0d5ec8e50b77b545ba38fc5;p=ghc-hetmet.git diff --git a/ghc/rts/StoragePriv.h b/ghc/rts/StoragePriv.h index 0c61bb6..c829e78 100644 --- a/ghc/rts/StoragePriv.h +++ b/ghc/rts/StoragePriv.h @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: StoragePriv.h,v 1.21 2002/03/20 23:07:02 sebc Exp $ + * $Id: StoragePriv.h,v 1.26 2004/07/21 10:47:29 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -21,6 +21,7 @@ extern step *g0s0; extern generation *oldest_gen; extern void newCAF(StgClosure*); +extern void newDynCAF(StgClosure *); extern void move_TSO(StgTSO *src, StgTSO *dest); extern StgTSO *relocate_stack(StgTSO *dest, ptrdiff_t diff); @@ -47,20 +48,21 @@ extern bdescr *nursery; extern nat alloc_blocks; extern nat alloc_blocks_lim; -extern lnat total_allocated; +extern ullong total_allocated; /* Nursery manipulation */ extern void allocNurseries ( void ); extern void resetNurseries ( void ); extern bdescr * allocNursery ( bdescr *last_bd, nat blocks ); extern void resizeNursery ( nat blocks ); +extern void tidyAllocateLists ( void ); /* Stats 'n' stuff */ extern lnat calcAllocated ( void ); extern lnat calcLive ( void ); extern lnat calcNeeded ( void ); -static inline void +INLINE_HEADER void dbl_link_onto(bdescr *bd, bdescr **list) { bd->link = *list; @@ -83,16 +85,6 @@ extern void checkSanity(void); extern nat countBlocks(bdescr *); #endif -/* - * These three are used by the garbage collector when we have - * dynamically-linked object modules. (see Storage.h, - * IS_DATA_PTR etc.). - * Defined in Linker.c. - */ -int is_dynamically_loaded_code_or_rodata_ptr ( void* p ); -int is_dynamically_loaded_rwdata_ptr ( void* p ); -int is_not_dynamically_loaded_ptr ( void* p ); - /* Functions from GC.c */ extern void threadPaused ( StgTSO * );