X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FDisassembler.c;h=0620e999674c34b2fbb5a4ea4fa7ab30b1c2c108;hb=decf06a77b1331d3af9304e55164bb0a51c15a7f;hp=8777b81c4326fda4baba7365df204ba55d65308f;hpb=ab0e778ccfde61aed4c22679b24d175fc6cc9bf3;p=ghc-hetmet.git diff --git a/rts/Disassembler.c b/rts/Disassembler.c index 8777b81..0620e99 100644 --- a/rts/Disassembler.c +++ b/rts/Disassembler.c @@ -16,7 +16,6 @@ #include "RtsUtils.h" #include "Closures.h" #include "TSO.h" -#include "Storage.h" #include "Schedule.h" #include "Bytecodes.h" @@ -42,11 +41,13 @@ disInstr ( StgBCO *bco, int pc ) StgMutArrPtrs* ptrs_arr = bco->ptrs; StgPtr* ptrs = (StgPtr*)(&ptrs_arr->payload[0]); - StgArrWords* itbls_arr = bco->itbls; - StgInfoTable** itbls = (StgInfoTable**)(&itbls_arr->payload[0]); - instr = instrs[pc++]; switch (instr) { + case bci_BRK_FUN: + debugBelch ("BRK_FUN " ); printPtr( ptrs[instrs[pc]] ); + debugBelch (" %d ", instrs[pc+1]); printPtr( ptrs[instrs[pc+2]] ); debugBelch("\n" ); + pc += 3; + break; case bci_SWIZZLE: debugBelch("SWIZZLE stkoff %d by %d\n", instrs[pc], (signed int)instrs[pc+1]); @@ -164,7 +165,7 @@ disInstr ( StgBCO *bco, int pc ) pc += 1; break; case bci_PACK: debugBelch("PACK %d words with itbl ", instrs[pc+1] ); - printPtr( (StgPtr)itbls[instrs[pc]] ); + printPtr( (StgPtr)literals[instrs[pc]] ); debugBelch("\n"); pc += 2; break;