.method main .args 1 .define OBJREF = 42 bipush OBJREF uha: bipush 35 // stack = 35 bipush 2 // stack = 2, 35 bipush 4 // stack = 4, 2, 35 imul // stack = 8, 35 idiv // stack = 4 bipush 2 // stack = 2, 4 ishl // stack = 16 bipush 2 // stack = 2, 16 iushr // stack = 4 bipush 8 // stack = 8, 4 isub // stack = -4 bipush 2 // stack = 2, -4 ishr // stack = -1 bipush -2 // stack = -2, -1 if_icmplt uha // stack = bipush 0 // stack = 0 ireturn // return 0 Mic1 Trace of ijvm.mic1 with test.bc Tue Dec 18 00:55:40 2001 stack = 0, 1, 11 bipush 42 [10 2a] stack = 42, 0, 1, 11 bipush 35 [10 23] stack = 35, 42, 0, 1, 11 bipush 2 [10 02] stack = 2, 35, 42, 0, 1, 11 bipush 4 [10 04] stack = 4, 2, 35, 42, 0, 1, 11 imul [68] stack = 8, 35, 42, 0, 1, 11 idiv [6c] stack = 4, 42, 0, 1, 11 bipush 2 [10 02] stack = 2, 4, 42, 0, 1, 11 ishl [78] stack = 16, 42, 0, 1, 11 bipush 2 [10 02] stack = 2, 16, 42, 0, 1, 11 iushr [7c] stack = 4, 42, 0, 1, 11 bipush 8 [10 08] stack = 8, 4, 42, 0, 1, 11 isub [64] stack = -4, 42, 0, 1, 11 bipush 2 [10 02] stack = 2, -4, 42, 0, 1, 11 ishr [7a] stack = -1, 42, 0, 1, 11 bipush -2 [10 fe] stack = -2, -1, 42, 0, 1, 11 if_icmplt -22 [a1 ff ea] stack = 42, 0, 1, 11 bipush 0 [10 00] stack = 0, 42, 0, 1, 11 ireturn [ac] stack = 0 return value: 0 1c1 < IJVM Trace of /users/smunk/ijvm/tests/test.bc Tue Dec 18 00:58:33 2001 --- > Mic1 Trace of ijvm.mic1 with test.bc Tue Dec 18 00:55:40 2001