X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FTrace.c;h=0a47ea38608c1b579847529045f9387c9d1aac9d;hb=68bc07fed38228a1f9fd1885333c7412f57c7e17;hp=0b30e9281965803eed2e6eb1f087484d53ace106;hpb=ebf733111484edc973797025418cba8f096246f6;p=ghc-hetmet.git diff --git a/rts/Trace.c b/rts/Trace.c index 0b30e92..0a47ea3 100644 --- a/rts/Trace.c +++ b/rts/Trace.c @@ -1,15 +1,19 @@ /* ----------------------------------------------------------------------------- * - * (c) The GHC Team 2006 + * (c) The GHC Team 2006-2009 * * Debug and performance tracing * * ---------------------------------------------------------------------------*/ +#ifdef DEBUG + +// external headers #include "Rts.h" -#include "OSThreads.h" +#include "rts/Flags.h" + +// internal headers #include "Trace.h" -#include "RtsFlags.h" #include "GetTime.h" #include "Stats.h" @@ -28,33 +32,8 @@ StgWord32 classes_enabled; // not static due to inline funcs static Mutex trace_utx; #endif -#ifdef DEBUG #define DEBUG_FLAG(name, class) \ if (RtsFlags.DebugFlags.name) classes_enabled |= class; -#else -#define DEBUG_FLAG(name, class) \ - /* nothing */ -#endif - -#ifdef PAR -#define PAR_FLAG(name, class) \ - if (RtsFlags.ParFlags.Debug.name) classes_enabled |= class; -#else -#define PAR_FLAG(name, class) \ - /* nothing */ -#endif - -#ifdef GRAN -#define GRAN_FLAG(name, class) \ - if (RtsFlags.GranFlags.Debug.name) classes_enabled |= class; -#else -#define GRAN_FLAG(name, class) \ - /* nothing */ -#endif - -#define TRACE_FLAG(name, class) \ - if (RtsFlags.TraceFlags.name) classes_enabled |= class; - void initTracing (void) { @@ -72,42 +51,10 @@ void initTracing (void) DEBUG_FLAG(stable, DEBUG_stable); DEBUG_FLAG(stm, DEBUG_stm); DEBUG_FLAG(prof, DEBUG_prof); - DEBUG_FLAG(gran, DEBUG_gran); - DEBUG_FLAG(par, DEBUG_par); + DEBUG_FLAG(eventlog, DEBUG_eventlog); DEBUG_FLAG(linker, DEBUG_linker); DEBUG_FLAG(squeeze, DEBUG_squeeze); DEBUG_FLAG(hpc, DEBUG_hpc); - - PAR_FLAG(verbose, PAR_DEBUG_verbose); - PAR_FLAG(bq, PAR_DEBUG_bq); - PAR_FLAG(schedule, PAR_DEBUG_schedule); - PAR_FLAG(free, PAR_DEBUG_free); - PAR_FLAG(resume, PAR_DEBUG_resume); - PAR_FLAG(weight, PAR_DEBUG_weight); - PAR_FLAG(fetch, PAR_DEBUG_fetch); - PAR_FLAG(fish, PAR_DEBUG_fish); - PAR_FLAG(tables, PAR_DEBUG_tables); - PAR_FLAG(packet, PAR_DEBUG_packet); - PAR_FLAG(pack, PAR_DEBUG_pack); - PAR_FLAG(paranoia, PAR_DEBUG_paranoia); - - GRAN_FLAG(event_trace, GRAN_DEBUG_event_trace); - GRAN_FLAG(event_stats, GRAN_DEBUG_event_stats); - GRAN_FLAG(bq, GRAN_DEBUG_bq); - GRAN_FLAG(pack, GRAN_DEBUG_pack); - GRAN_FLAG(checkSparkQ, GRAN_DEBUG_checkSparkQ); - GRAN_FLAG(thunkStealing, GRAN_DEBUG_thunkStealing); - GRAN_FLAG(randomSteal, GRAN_DEBUG_randomSteal); - GRAN_FLAG(findWork, GRAN_DEBUG_findWork); - GRAN_FLAG(unused, GRAN_DEBUG_unused); - GRAN_FLAG(pri, GRAN_DEBUG_pri); - GRAN_FLAG(checkLight, GRAN_DEBUG_checkLight); - GRAN_FLAG(sortedQ, GRAN_DEBUG_sortedQ); - GRAN_FLAG(blockOnFetch, GRAN_DEBUG_blockOnFetch); - GRAN_FLAG(packBuffer, GRAN_DEBUG_packBuffer); - GRAN_FLAG(blockedOnFetch_sanity, GRAN_DEBUG_BOF_sanity); - - TRACE_FLAG(sched, TRACE_sched); } static void tracePreface (void) @@ -115,7 +62,7 @@ static void tracePreface (void) #ifdef THREADED_RTS debugBelch("%12lx: ", (unsigned long)osThreadId()); #endif - if (RtsFlags.TraceFlags.timestamp) { + if (RtsFlags.DebugFlags.timestamp) { debugBelch("%9" FMT_Word64 ": ", stat_getElapsedTime()); } } @@ -154,3 +101,5 @@ void traceEnd (void) debugBelch("\n"); RELEASE_LOCK(&trace_utx); } + +#endif