X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fincludes%2FConstants.h;h=dc6d3bdbe9457d5cadf1c86f4dffffc901c9813a;hb=89cefac83e7e468ddc0fdc62b3f4e076e97a7d51;hp=12b6d0d14dfb566c0bd8ef524ec70411d248b710;hpb=d4e0cee2445d9845bb7b0a0687bad84ff32bac28;p=ghc-hetmet.git diff --git a/ghc/includes/Constants.h b/ghc/includes/Constants.h index 12b6d0d..dc6d3bd 100644 --- a/ghc/includes/Constants.h +++ b/ghc/includes/Constants.h @@ -1,5 +1,5 @@ /* ---------------------------------------------------------------------------- - * $Id: Constants.h,v 1.6 1999/03/26 10:29:02 simonm Exp $ + * $Id: Constants.h,v 1.11 2000/02/28 12:02:32 sewardj Exp $ * * (c) The GHC Team, 1998-1999 * @@ -18,14 +18,17 @@ Header Sizes NOTE: keep these in line with the real definitions in Closures.h + HWL: checked GRAN_HDR_SIZE; ok -------------------------------------------------------------------------- */ #define STD_HDR_SIZE 1 #define PROF_HDR_SIZE 1 #define GRAN_HDR_SIZE 1 +#define PAR_HDR_SIZE 0 #define TICKY_HDR_SIZE 0 -#define ARR_HDR_SIZE 1 +#define ARR_WORDS_HDR_SIZE 1 +#define ARR_PTRS_HDR_SIZE 2 /* ----------------------------------------------------------------------------- Info Table sizes @@ -36,11 +39,13 @@ NOTE: keep these in line with the real definitions in InfoTables.h NOTE: the PROF, and GRAN values are *wrong* (ToDo) + HWL: checked GRAN_ITBL_SIZE; ok -------------------------------------------------------------------------- */ #define STD_ITBL_SIZE 3 #define PROF_ITBL_SIZE 1 #define GRAN_ITBL_SIZE 1 +#define PAR_ITBL_SIZE 0 #define TICKY_ITBL_SIZE 0 /* ----------------------------------------------------------------------------- @@ -98,9 +103,13 @@ /* ----------------------------------------------------------------------------- Update Frame Layout + GranSim uses an additional word as bitmask in the update frame; actually, + not really necessary, but uses standard closure layout that way + NB: UF_RET etc are *wrong* in a GranSim setup; should be increased by 1 + if compiling for GranSim (currently not used in compiler) -- HWL -------------------------------------------------------------------------- */ - #define NOSCC_UF_SIZE 3 +#define GRAN_UF_SIZE 4 #define SCC_UF_SIZE 4 #define UF_RET 0 @@ -112,9 +121,11 @@ SEQ frame size I don't think seq frames really need sccs --SDM + They don't need a GranSim bitmask either, but who cares anyway -- HWL -------------------------------------------------------------------------- */ #define NOSCC_SEQ_FRAME_SIZE 2 +#define GRAN_SEQ_FRAME_SIZE 3 #define SCC_SEQ_FRAME_SIZE 3 /* ----------------------------------------------------------------------------- @@ -190,7 +201,7 @@ world. Used in StgRun.S and StgCRun.c. -------------------------------------------------------------------------- */ -#define RESERVED_C_STACK_BYTES (512 * SIZEOF_LONG) +#define RESERVED_C_STACK_BYTES (2048 * SIZEOF_LONG) /* ----------------------------------------------------------------------------- How much Haskell stack space to reserve for the saving of registers @@ -208,8 +219,8 @@ -------------------------------------------------------------------------- */ /* The size of a block */ -#define BLOCK_SIZE 0x2000 -#define BLOCK_SHIFT 13 +#define BLOCK_SIZE 0x1000 +#define BLOCK_SHIFT 12 /* The size of a megablock */ #define MBLOCK_SIZE 0x100000