projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make allocatePinned use local storage, and other refactorings
[ghc-hetmet.git]
/
rts
/
Disassembler.c
diff --git
a/rts/Disassembler.c
b/rts/Disassembler.c
index
f29cce2
..
fff3fe9
100644
(file)
--- a/
rts/Disassembler.c
+++ b/
rts/Disassembler.c
@@
-13,12
+13,10
@@
#include "PosixSource.h"
#include "Rts.h"
#include "RtsAPI.h"
#include "PosixSource.h"
#include "Rts.h"
#include "RtsAPI.h"
+#include "rts/Bytecodes.h"
+
#include "RtsUtils.h"
#include "RtsUtils.h"
-#include "Closures.h"
-#include "TSO.h"
#include "Schedule.h"
#include "Schedule.h"
-
-#include "Bytecodes.h"
#include "Printer.h"
#include "Disassembler.h"
#include "Interpreter.h"
#include "Printer.h"
#include "Disassembler.h"
#include "Interpreter.h"
@@
-41,11
+39,13
@@
disInstr ( StgBCO *bco, int pc )
StgMutArrPtrs* ptrs_arr = bco->ptrs;
StgPtr* ptrs = (StgPtr*)(&ptrs_arr->payload[0]);
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) {
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]);
case bci_SWIZZLE:
debugBelch("SWIZZLE stkoff %d by %d\n",
instrs[pc], (signed int)instrs[pc+1]);
@@
-146,6
+146,9
@@
disInstr ( StgBCO *bco, int pc )
case bci_ALLOC_AP:
debugBelch("ALLOC_AP %d words\n", instrs[pc] );
pc += 1; break;
case bci_ALLOC_AP:
debugBelch("ALLOC_AP %d words\n", instrs[pc] );
pc += 1; break;
+ case bci_ALLOC_AP_NOUPD:
+ debugBelch("ALLOC_AP_NOUPD %d words\n", instrs[pc] );
+ pc += 1; break;
case bci_ALLOC_PAP:
debugBelch("ALLOC_PAP %d arity, %d words\n",
instrs[pc], instrs[pc+1] );
case bci_ALLOC_PAP:
debugBelch("ALLOC_PAP %d arity, %d words\n",
instrs[pc], instrs[pc+1] );
@@
-163,7
+166,7
@@
disInstr ( StgBCO *bco, int pc )
pc += 1; break;
case bci_PACK:
debugBelch("PACK %d words with itbl ", instrs[pc+1] );
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;
debugBelch("\n");
pc += 2; break;