X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FBlockAlloc.h;h=1472ac6f76be5de28af1cf9f45c702ecc4ad3b6a;hb=0dbbf1932d550293986af6244202cb735b2cd966;hp=833beee99491b01bf39f6b88180952f42f63a1a5;hpb=05ae92d8425c38cbdb75d4a8ac9096e5d07840a5;p=ghc-hetmet.git diff --git a/ghc/rts/BlockAlloc.h b/ghc/rts/BlockAlloc.h index 833beee..1472ac6 100644 --- a/ghc/rts/BlockAlloc.h +++ b/ghc/rts/BlockAlloc.h @@ -1,5 +1,4 @@ /* ----------------------------------------------------------------------------- - * $Id: BlockAlloc.h,v 1.7 1999/11/02 17:08:28 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -10,47 +9,6 @@ #ifndef BLOCK_ALLOC_H #define BLOCK_ALLOC_H -/* Initialisation ---------------------------------------------------------- */ - -extern void initBlockAllocator(void); - -/* Allocation -------------------------------------------------------------- */ - -extern bdescr *allocGroup(nat n); -extern bdescr *allocBlock(void); - -/* De-Allocation ----------------------------------------------------------- */ - -extern void freeGroup(bdescr *p); -extern void freeChain(bdescr *p); - -/* Finding the block descriptor for a given block -------------------------- */ - -static inline bdescr *Bdescr(StgPtr p) -{ - return (bdescr *) - ((((W_)p & MBLOCK_MASK & ~BLOCK_MASK) >> (BLOCK_SHIFT-BDESCR_SHIFT)) - | ((W_)p & ~MBLOCK_MASK) - ); -} - -/* Round a value to megablocks --------------------------------------------- */ - -#define WORDS_PER_MBLOCK (BLOCKS_PER_MBLOCK * BLOCK_SIZE_W) - -static inline nat -round_to_mblocks(nat words) -{ - if (words > WORDS_PER_MBLOCK) { - if ((words % WORDS_PER_MBLOCK) < (WORDS_PER_MBLOCK / 2)) { - words = (words / WORDS_PER_MBLOCK) * WORDS_PER_MBLOCK; - } else { - words = ((words / WORDS_PER_MBLOCK) + 1) * WORDS_PER_MBLOCK; - } - } - return words; -} - /* Debugging -------------------------------------------------------------- */ #ifdef DEBUG @@ -58,4 +16,4 @@ extern void checkFreeListSanity(void); nat countFreeList(void); #endif -#endif BLOCK_ALLOC_H +#endif /* BLOCK_ALLOC_H */