X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=rts%2FProfHeap.c;h=0ee53f3e221f37bd6efd55456291b695780e5bee;hp=312bee735c16c885f60a588bfa846efa647086a8;hb=16871485a44ba8a6e93e40f30af7ea46839e0c4c;hpb=0065d5ab628975892cea1ec7303f968c3338cbe1 diff --git a/rts/ProfHeap.c b/rts/ProfHeap.c index 312bee7..0ee53f3 100644 --- a/rts/ProfHeap.c +++ b/rts/ProfHeap.c @@ -114,8 +114,6 @@ static void dumpCensus( Census *census ); static char *type_names[] = { "INVALID_OBJECT" , "CONSTR" - , "CONSTR_INTLIKE" - , "CONSTR_CHARLIKE" , "CONSTR_STATIC" , "CONSTR_NOCAF_STATIC" @@ -388,9 +386,9 @@ printSample(rtsBool beginSample, StgDouble sampleValue) { StgDouble fractionalPart, integralPart; fractionalPart = modf(sampleValue, &integralPart); - fprintf(hp_file, "%s %d.%02d\n", + fprintf(hp_file, "%s %" FMT_Word64 ".%02" FMT_Word64 "\n", (beginSample ? "BEGIN_SAMPLE" : "END_SAMPLE"), - (int)integralPart, (int)(fractionalPart * 100)); + (StgWord64)integralPart, (StgWord64)(fractionalPart * 100)); } /* -------------------------------------------------------------------------- @@ -808,7 +806,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: @@ -905,8 +903,6 @@ heapCensusChain( Census *census, bdescr *bd ) case SE_CAF_BLACKHOLE: case SE_BLACKHOLE: case BLACKHOLE: - case CONSTR_INTLIKE: - case CONSTR_CHARLIKE: case FUN_1_0: case FUN_0_1: case FUN_1_1: @@ -991,9 +987,19 @@ heapCensusChain( Census *census, bdescr *bd ) size = sizeofW(StgTRecHeader); break; - case TVAR_WAIT_QUEUE: + case TVAR_WATCH_QUEUE: prim = rtsTrue; - size = sizeofW(StgTVarWaitQueue); + size = sizeofW(StgTVarWatchQueue); + break; + + case INVARIANT_CHECK_QUEUE: + prim = rtsTrue; + size = sizeofW(StgInvariantCheckQueue); + break; + + case ATOMIC_INVARIANT: + prim = rtsTrue; + size = sizeofW(StgAtomicInvariant); break; case TVAR: