summaryrefslogtreecommitdiff
path: root/byterun/instrtrace.c
diff options
context:
space:
mode:
Diffstat (limited to 'byterun/instrtrace.c')
-rw-r--r--byterun/instrtrace.c52
1 files changed, 0 insertions, 52 deletions
diff --git a/byterun/instrtrace.c b/byterun/instrtrace.c
deleted file mode 100644
index 5e3133565f..0000000000
--- a/byterun/instrtrace.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/* Trace the instructions executed */
-
-#ifdef DEBUG
-
-#include <stdio.h>
-#include "instruct.h"
-#include "misc.h"
-#include "mlvalues.h"
-#include "opnames.h"
-
-extern code_t start_code;
-extern char * names_of_cprim[];
-
-long icount = 0;
-
-void stop_here () {}
-
-int trace_flag = 0;
-
-void disasm_instr(pc)
- code_t pc;
-{
- int instr = *pc;
- printf("%6d %s", pc - start_code,
- instr < 0 || instr > STOP ? "???" : names_of_instructions[instr]);
- pc++;
- switch(instr) {
- /* Instructions with one integer operand */
- case PUSHACC: case ACC: case POP: case ASSIGN:
- case PUSHENVACC: case ENVACC: case PUSH_RETADDR: case APPLY:
- case APPTERM1: case APPTERM2: case APPTERM3: case RETURN:
- case GRAB: case PUSHGETGLOBAL: case GETGLOBAL: case SETGLOBAL:
- case PUSHATOM: case ATOM: case MAKEBLOCK1: case MAKEBLOCK2:
- case MAKEBLOCK3: case GETFIELD: case SETFIELD: case DUMMY:
- case BRANCH: case BRANCHIF: case BRANCHIFNOT: case PUSHTRAP:
- case CONSTINT: case PUSHCONSTINT: case OFFSETINT: case OFFSETREF:
- printf(" %d\n", pc[0]); break;
- /* Instructions with two operands */
- case APPTERM: case CLOSURE: case CLOSUREREC: case PUSHGETGLOBALFIELD:
- case GETGLOBALFIELD: case MAKEBLOCK:
- printf(" %d, %d\n", pc[0], pc[1]); break;
- /* Instructions with a C primitive as operand */
- case C_CALL1: case C_CALL2: case C_CALL3: case C_CALL4:
- printf(" %s\n", names_of_cprim[pc[0]]); break;
- case C_CALLN:
- printf(" %d, %s\n", pc[0], names_of_cprim[pc[1]]); break;
- default:
- printf("\n");
- }
-}
-
-#endif