X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fincludes%2FRtsFlags.h;h=ce21faf47070fd884073ec69920e2d952bfea1eb;hb=7ff78c251654969f9973c087bec3ae98d5e5b606;hp=9f4bef3d7ed761eae047dd3df157de085251d02a;hpb=ce469441dcadb13da3df062631945fd1a6148e43;p=ghc-hetmet.git diff --git a/ghc/includes/RtsFlags.h b/ghc/includes/RtsFlags.h index 9f4bef3..ce21faf 100644 --- a/ghc/includes/RtsFlags.h +++ b/ghc/includes/RtsFlags.h @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: RtsFlags.h,v 1.41 2001/12/12 14:58:26 simonmar Exp $ + * $Id: RtsFlags.h,v 1.43 2002/08/05 10:11:03 simonmar Exp $ * * (c) The GHC Team, 1998-1999 * @@ -10,6 +10,8 @@ #ifndef RTSFLAGS_H #define RTSFLAGS_H +#include + /* For defaults, see the @initRtsFlagsDefaults@ routine. */ struct GC_FLAGS { @@ -42,37 +44,23 @@ struct GC_FLAGS { rtsBool frontpanel; }; -/* Hack: this struct uses bitfields so that we can use a binary arg - * with the -D flag. - * Remember to update the corresponding bit of RtsFlags.c if you - * change/extend this struct. - */ struct DEBUG_FLAGS { - /* flags to control debugging output in various subsystems */ - rtsBool scheduler : 1; /* 1 */ - rtsBool evaluator : 1; /* 2 */ - rtsBool codegen : 1; /* 4 */ - rtsBool weak : 1; /* 8 */ - rtsBool gccafs : 1; /* 16 */ - rtsBool gc : 1; /* 32 */ - rtsBool block_alloc : 1; /* 64 */ - - /* flags to control consistency checking (often very expensive!) */ - rtsBool sanity : 1; /* 128 */ - - rtsBool stable : 1; /* 256 */ - rtsBool prof : 1; /* 512 */ - rtsBool gran : 1; /* 1024 */ - rtsBool par : 1; /* 2048 */ - - /* The object linker */ - rtsBool linker : 1; /* 4096 */ + // flags to control debugging output & extra checking in various subsystems + rtsBool scheduler; // 's' + rtsBool evaluator; // 'e' + rtsBool codegen; // 'c' + rtsBool weak; // 'w' + rtsBool gccafs; // 'G' + rtsBool gc; // 'g' + rtsBool block_alloc; // 'b' + rtsBool sanity; // 'S' warning: might be expensive! + rtsBool stable; // 't' + rtsBool prof; // 'p' + rtsBool gran; // 'r' + rtsBool par; // 'P' + rtsBool linker; // 'l' the object linker }; -#define MAX_DEBUG_OPTION 13 -#define DEBUG_MASK(n) ((nat)(ldexp(1,n))) -#define MAX_DEBUG_MASK ((nat)(ldexp(1,(MAX_DEBUG_OPTION+1))-1)) - struct COST_CENTRE_FLAGS { unsigned int doCostCentres; # define COST_CENTRES_SUMMARY 1 @@ -310,9 +298,11 @@ struct TICKY_FLAGS { struct RTS_FLAGS { struct GC_FLAGS GcFlags; - struct DEBUG_FLAGS DebugFlags; struct CONCURRENT_FLAGS ConcFlags; +#ifdef DEBUG + struct DEBUG_FLAGS DebugFlags; +#endif #if defined(PROFILING) || defined(PAR) struct COST_CENTRE_FLAGS CcFlags; #endif