X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FProfHeap.c;h=4aecd0b5b3fcc6b9b92db05c4a3f290a686eba33;hb=fe07f054d7ae5e10b14d5fed730fe4424dabd587;hp=c161d0c6a7986122d16af053f21d200f565df533;hpb=186a80cbcfbe0490ddd153e5f75faac23f4e5021;p=ghc-hetmet.git diff --git a/rts/ProfHeap.c b/rts/ProfHeap.c index c161d0c..4aecd0b 100644 --- a/rts/ProfHeap.c +++ b/rts/ProfHeap.c @@ -19,7 +19,6 @@ #include "RtsUtils.h" #include "RtsFlags.h" #include "Profiling.h" -#include "Storage.h" #include "ProfHeap.h" #include "Stats.h" #include "Hash.h" @@ -541,10 +540,10 @@ fprint_ccs(FILE *fp, CostCentreStack *ccs, nat max_length) p += buf_append(p, ccs->cc->module, buf_end); p += buf_append(p, ".CAF", buf_end); } else { + p += buf_append(p, ccs->cc->label, buf_end); if (ccs->prevStack != NULL && ccs->prevStack != CCS_MAIN) { p += buf_append(p, "/", buf_end); } - p += buf_append(p, ccs->cc->label, buf_end); } if (p >= buf_end) { @@ -806,7 +805,7 @@ dumpCensus( Census *census ) #ifdef PROFILING switch (RtsFlags.ProfFlags.doHeapProfile) { case HEAP_BY_CCS: - fprint_ccs(hp_file, (CostCentreStack *)ctr->identity, 25); + fprint_ccs(hp_file, (CostCentreStack *)ctr->identity, RtsFlags.ProfFlags.ccsLength); break; case HEAP_BY_MOD: case HEAP_BY_DESCR: @@ -987,9 +986,19 @@ heapCensusChain( Census *census, bdescr *bd ) size = sizeofW(StgTRecHeader); break; - case TVAR_WAIT_QUEUE: + case TVAR_WATCH_QUEUE: + prim = rtsTrue; + size = sizeofW(StgTVarWatchQueue); + break; + + case INVARIANT_CHECK_QUEUE: + prim = rtsTrue; + size = sizeofW(StgInvariantCheckQueue); + break; + + case ATOMIC_INVARIANT: prim = rtsTrue; - size = sizeofW(StgTVarWaitQueue); + size = sizeofW(StgAtomicInvariant); break; case TVAR: