diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-08-05 09:35:39 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-08-05 09:35:39 +0000 |
commit | 948c01bdb7f42504487a624b229137694871efd0 (patch) | |
tree | 162006e4eef0ed26e403fd313a7ff62caf2b97e1 | |
parent | a53ccca7894727fcf6de21b5c7b0ea2f7eaec569 (diff) | |
download | haskell-948c01bdb7f42504487a624b229137694871efd0.tar.gz |
profiling build fixes
-rw-r--r-- | includes/rts/prof/CCS.h | 2 | ||||
-rw-r--r-- | includes/rts/prof/LDV.h | 13 | ||||
-rw-r--r-- | rts/LdvProfile.c | 1 | ||||
-rw-r--r-- | rts/LdvProfile.h | 1 | ||||
-rw-r--r-- | rts/RetainerProfile.c | 1 | ||||
-rw-r--r-- | rts/RetainerProfile.h | 1 | ||||
-rw-r--r-- | rts/sm/Evac.c | 1 | ||||
-rw-r--r-- | rts/sm/GC.c | 1 | ||||
-rw-r--r-- | rts/sm/Scav.c | 1 |
9 files changed, 14 insertions, 8 deletions
diff --git a/includes/rts/prof/CCS.h b/includes/rts/prof/CCS.h index 3512930b7b..d56caf0be4 100644 --- a/includes/rts/prof/CCS.h +++ b/includes/rts/prof/CCS.h @@ -176,7 +176,6 @@ extern CostCentreStack * RTS_VAR(CCS_LIST); /* registered CCS list */ #define REGISTER_CC(cc) \ do { \ - extern CostCentre cc[]; \ if ((cc)->link == (CostCentre *)0) { \ (cc)->link = CC_LIST; \ CC_LIST = (cc); \ @@ -185,7 +184,6 @@ extern CostCentreStack * RTS_VAR(CCS_LIST); /* registered CCS list */ #define REGISTER_CCS(ccs) \ do { \ - extern CostCentreStack ccs[]; \ if ((ccs)->prevStack == (CostCentreStack *)0) { \ (ccs)->prevStack = CCS_LIST; \ CCS_LIST = (ccs); \ diff --git a/includes/rts/prof/LDV.h b/includes/rts/prof/LDV.h index c51b10647e..f54724652d 100644 --- a/includes/rts/prof/LDV.h +++ b/includes/rts/prof/LDV.h @@ -23,17 +23,22 @@ * because retainer profiling also expects LDVW(c) to be initialised * to zero. */ -#ifndef CMINUSMINUS -#define LDV_RECORD_CREATE(c) \ - LDVW((c)) = ((StgWord)RTS_DEREF(era) << LDV_SHIFT) | LDV_STATE_CREATE -#endif #ifdef CMINUSMINUS + #define LDV_RECORD_DEAD_FILL_SLOP_DYNAMIC(c) \ foreign "C" LDV_recordDead_FILL_SLOP_DYNAMIC(c "ptr") + #else + +#define LDV_RECORD_CREATE(c) \ + LDVW((c)) = ((StgWord)RTS_DEREF(era) << LDV_SHIFT) | LDV_STATE_CREATE + +void LDV_recordDead_FILL_SLOP_DYNAMIC( StgClosure *p ); + #define LDV_RECORD_DEAD_FILL_SLOP_DYNAMIC(c) \ LDV_recordDead_FILL_SLOP_DYNAMIC(c) + #endif #else /* !PROFILING */ diff --git a/rts/LdvProfile.c b/rts/LdvProfile.c index 3a160de6ac..b5c0e63f01 100644 --- a/rts/LdvProfile.c +++ b/rts/LdvProfile.c @@ -13,6 +13,7 @@ #include "Rts.h" #include "Profiling.h" +#include "LdvProfile.h" #include "Stats.h" #include "RtsUtils.h" #include "Schedule.h" diff --git a/rts/LdvProfile.h b/rts/LdvProfile.h index c61b0102e7..27215472d6 100644 --- a/rts/LdvProfile.h +++ b/rts/LdvProfile.h @@ -14,7 +14,6 @@ #include "ProfHeap.h" -extern void LDV_recordDead_FILL_SLOP_DYNAMIC( StgClosure *p ); extern void LdvCensusForDead ( nat ); extern void LdvCensusKillAll ( void ); diff --git a/rts/RetainerProfile.c b/rts/RetainerProfile.c index 4441749200..adec3fcfaa 100644 --- a/rts/RetainerProfile.c +++ b/rts/RetainerProfile.c @@ -30,6 +30,7 @@ #include "Stats.h" #include "ProfHeap.h" #include "Apply.h" +#include "sm/Storage.h" // for END_OF_STATIC_LIST /* Note: what to change in order to plug-in a new retainer profiling scheme? diff --git a/rts/RetainerProfile.h b/rts/RetainerProfile.h index 5f4503c84b..da9a847478 100644 --- a/rts/RetainerProfile.h +++ b/rts/RetainerProfile.h @@ -16,7 +16,6 @@ extern void initRetainerProfiling ( void ); extern void endRetainerProfiling ( void ); -extern void printRetainer ( FILE *, retainer ); extern void retainerProfile ( void ); extern void resetStaticObjectForRetainerProfiling( StgClosure *static_objects ); diff --git a/rts/sm/Evac.c b/rts/sm/Evac.c index 9e6d0f1783..ae843bd575 100644 --- a/rts/sm/Evac.c +++ b/rts/sm/Evac.c @@ -22,6 +22,7 @@ #include "Compact.h" #include "Prelude.h" #include "Trace.h" +#include "LdvProfile.h" #if defined(PROF_SPIN) && defined(THREADED_RTS) && defined(PARALLEL_GC) StgWord64 whitehole_spin = 0; diff --git a/rts/sm/GC.c b/rts/sm/GC.c index 02fd6d9161..d2217b8786 100644 --- a/rts/sm/GC.c +++ b/rts/sm/GC.c @@ -33,6 +33,7 @@ #endif #include "Trace.h" #include "RetainerProfile.h" +#include "LdvProfile.h" #include "RaiseAsync.h" #include "Papi.h" #include "Stable.h" diff --git a/rts/sm/Scav.c b/rts/sm/Scav.c index 9ebd4c5597..52de561ff8 100644 --- a/rts/sm/Scav.c +++ b/rts/sm/Scav.c @@ -25,6 +25,7 @@ #include "Trace.h" #include "Sanity.h" #include "Capability.h" +#include "LdvProfile.h" static void scavenge_stack (StgPtr p, StgPtr stack_end); |