Types moved to jode.type

some bug fixes


git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@610 379699f6-c40d-0410-875b-85095c16579e
stable
jochen 26 years ago
parent c0cd537eaf
commit 1ee2befce5
  1. 25
      jode/jode/jvm/Interpreter.j

@ -85,7 +85,7 @@ big_loop:
; ========= DEBUGGING OUTPUT ===============================
getstatic jode/Decompiler/isDebugging Z
ifeq skip_debugging
getstatic java/lang/System/err Ljava/io/PrintStream;
getstatic jode/Decompiler/err Ljava/io/PrintStream;
dup
aload 4
invokevirtual jode/bytecode/Instruction/getDescription()Ljava/lang/String;
@ -247,7 +247,6 @@ load_store_instr:
; ====== LOAD INSTRUCTIONS
pop ; opcode
aload_3 ; stack
iload 5 ; stacktop
aaload
@ -258,6 +257,11 @@ load_store_instr:
getfield jode/bytecode/Instruction/localSlot I
aaload
invokevirtual jode/jvm/Value/setValue(Ljode/jvm/Value;)V
iconst_1
iand ; opcode & 1
ifne big_loop
iinc 5 1
goto big_loop
array_load_instr:
@ -336,6 +340,7 @@ store_instr:
goto big_loop
array_store_instr:
istore 7
iinc 5 -2
aload_3
@ -375,7 +380,6 @@ array_store_instr:
; index
; array
instanceof [Z
ifne bool_array_store
iload 6
@ -717,8 +721,9 @@ second_op_done:
first_op_single:
; opcode mask
; opcode
bipush 0x05A5
sipush 0x05A5
iand
aload_3
iload 5
aaload
@ -1551,8 +1556,8 @@ invoke_instr:
checkcast jode/bytecode/Reference
dup
invokevirtual jode/bytecode/Reference/getType()Ljava/lang/String;
invokestatic jode/Type/tType(Ljava/lang/String;)Ljode/Type;
checkcast jode/MethodType
invokestatic jode/type/Type/tType(Ljava/lang/String;)Ljode/type/Type;
checkcast jode/type/MethodType
; Stack:
; methodType
; ref
@ -1563,7 +1568,7 @@ invoke_instr:
; ref
; env
; methodType
invokevirtual jode/MethodType/getParameterTypes()[Ljode/Type;
invokevirtual jode/type/MethodType/getParameterTypes()[Ljode/type/Type;
dup
arraylength
dup
@ -1594,7 +1599,7 @@ invoke_loop:
; ref
; env
; methodType
invokevirtual jode/Type/stackSize()I
invokevirtual jode/type/Type/stackSize()I
ineg
iload 5
iadd
@ -1683,8 +1688,8 @@ invoke_end:
; Stack:
; methodType
invokevirtual jode/MethodType/getReturnType()Ljode/Type;
invokevirtual jode/Type/stackSize()I
invokevirtual jode/type/MethodType/getReturnType()Ljode/type/Type;
invokevirtual jode/type/Type/stackSize()I
dup
ifeq popI_big_loop
aload_3

Loading…
Cancel
Save