summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rts/Disassembler.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/Disassembler.c b/rts/Disassembler.c
index bcc085803a..44f487da89 100644
--- a/rts/Disassembler.c
+++ b/rts/Disassembler.c
@@ -283,11 +283,11 @@ void disassemble( StgBCO *bco )
nat i, j;
StgWord16* instrs = (StgWord16*)(bco->instrs->payload);
StgMutArrPtrs* ptrs = bco->ptrs;
- nat nbcs = (int)instrs[0];
+ nat nbcs = (int)(bco->instrs->bytes / sizeof(StgWord16));
nat pc = 1;
debugBelch("BCO\n" );
- pc = 1;
+ pc = 0;
while (pc <= nbcs) {
debugBelch("\t%2d: ", pc );
pc = disInstr ( bco, pc );