1*055d4590SKeyi GuiBlort.testInstance1:()V: 2*055d4590SKeyi Guiregs: 0003; ins: 0001; outs: 0000 3*055d4590SKeyi Gui 0000: move-object v0, v2 4*055d4590SKeyi Gui 0001: move-object v1, v2 5*055d4590SKeyi Gui 0002: monitor-enter v1 6*055d4590SKeyi Gui 0003: monitor-exit v1 7*055d4590SKeyi Gui 0004: return-void 8*055d4590SKeyi GuiBlort.testInstance2:(Ljava/lang/Object;)V: 9*055d4590SKeyi Guiregs: 0006; ins: 0002; outs: 0001 10*055d4590SKeyi Gui 0000: move-object v0, v4 11*055d4590SKeyi Gui 0001: move-object v1, v5 12*055d4590SKeyi Gui 0002: move-object v3, v4 13*055d4590SKeyi Gui 0003: monitor-enter v3 14*055d4590SKeyi Gui 0004: move-object v2, v1 15*055d4590SKeyi Gui 0005: invoke-virtual {v2}, java.lang.Object.hashCode:()I 16*055d4590SKeyi Gui 0008: move-result v2 17*055d4590SKeyi Gui 0009: monitor-exit v3 18*055d4590SKeyi Gui 000a: return-void 19*055d4590SKeyi Gui 000b: move-exception v0 20*055d4590SKeyi Gui 000c: monitor-exit v3 21*055d4590SKeyi Gui 000d: throw v0 22*055d4590SKeyi Gui catches 23*055d4590SKeyi Gui tries: 24*055d4590SKeyi Gui try 0005..0008 25*055d4590SKeyi Gui catch <any> -> 000b 26*055d4590SKeyi GuiBlort.testInstance3:(III)I: 27*055d4590SKeyi Guiregs: 000b; ins: 0004; outs: 0000 28*055d4590SKeyi Gui 0000: move-object v0, v7 29*055d4590SKeyi Gui 0001: move v1, v8 30*055d4590SKeyi Gui 0002: move v2, v9 31*055d4590SKeyi Gui 0003: move v3, v10 32*055d4590SKeyi Gui 0004: move-object v6, v7 33*055d4590SKeyi Gui 0005: monitor-enter v6 34*055d4590SKeyi Gui 0006: move v4, v1 35*055d4590SKeyi Gui 0007: const/4 v5, #int 1 // #1 36*055d4590SKeyi Gui 0008: if-ne v4, v5, 000e // +0006 37*055d4590SKeyi Gui 000a: const/4 v4, #int 1 // #1 38*055d4590SKeyi Gui 000b: move v0, v4 39*055d4590SKeyi Gui 000c: monitor-exit v6 40*055d4590SKeyi Gui 000d: return v0 41*055d4590SKeyi Gui 000e: const/4 v4, #int 2 // #2 42*055d4590SKeyi Gui 000f: move v0, v4 43*055d4590SKeyi Gui 0010: goto 000c // -0004 44*055d4590SKeyi GuiBlort.testInstance4:(J)J: 45*055d4590SKeyi Guiregs: 000c; ins: 0003; outs: 0000 46*055d4590SKeyi Gui 0000: move-object v1, v9 47*055d4590SKeyi Gui 0001: move-wide v2, v10 48*055d4590SKeyi Gui 0002: move-object v8, v9 49*055d4590SKeyi Gui 0003: monitor-enter v8 50*055d4590SKeyi Gui 0004: move-wide v4, v2 51*055d4590SKeyi Gui 0005: const-wide/16 v6, #long 1 // #0001 52*055d4590SKeyi Gui 0007: cmp-long v4, v4, v6 53*055d4590SKeyi Gui 0009: if-nez v4, 0010 // +0007 54*055d4590SKeyi Gui 000b: const-wide/16 v4, #long 1 // #0001 55*055d4590SKeyi Gui 000d: move-wide v1, v4 56*055d4590SKeyi Gui 000e: monitor-exit v8 57*055d4590SKeyi Gui 000f: return-wide v1 58*055d4590SKeyi Gui 0010: const-wide/16 v4, #long 2 // #0002 59*055d4590SKeyi Gui 0012: move-wide v1, v4 60*055d4590SKeyi Gui 0013: goto 000e // -0005 61*055d4590SKeyi GuiBlort.testInstance5:()V: 62*055d4590SKeyi Guiregs: 0004; ins: 0001; outs: 0001 63*055d4590SKeyi Gui 0000: move-object v0, v3 64*055d4590SKeyi Gui 0001: move-object v2, v3 65*055d4590SKeyi Gui 0002: monitor-enter v2 66*055d4590SKeyi Gui 0003: move-object v1, v0 67*055d4590SKeyi Gui 0004: invoke-virtual {v1}, Blort.testInstance5:()V 68*055d4590SKeyi Gui 0007: monitor-exit v2 69*055d4590SKeyi Gui 0008: return-void 70*055d4590SKeyi Gui 0009: move-exception v0 71*055d4590SKeyi Gui 000a: monitor-exit v2 72*055d4590SKeyi Gui 000b: throw v0 73*055d4590SKeyi Gui catches 74*055d4590SKeyi Gui tries: 75*055d4590SKeyi Gui try 0004..0007 76*055d4590SKeyi Gui catch <any> -> 0009 77*055d4590SKeyi GuiBlort.testStatic1:()V: 78*055d4590SKeyi Guiregs: 0002; ins: 0000; outs: 0000 79*055d4590SKeyi Gui 0000: const-class v1, Blort 80*055d4590SKeyi Gui 0002: monitor-enter v1 81*055d4590SKeyi Gui 0003: monitor-exit v1 82*055d4590SKeyi Gui 0004: return-void 83*055d4590SKeyi GuiBlort.testStatic2:(Ljava/lang/Object;)V: 84*055d4590SKeyi Guiregs: 0004; ins: 0001; outs: 0001 85*055d4590SKeyi Gui 0000: move-object v0, v3 86*055d4590SKeyi Gui 0001: const-class v2, Blort 87*055d4590SKeyi Gui 0003: monitor-enter v2 88*055d4590SKeyi Gui 0004: move-object v1, v0 89*055d4590SKeyi Gui 0005: invoke-virtual {v1}, java.lang.Object.hashCode:()I 90*055d4590SKeyi Gui 0008: move-result v1 91*055d4590SKeyi Gui 0009: monitor-exit v2 92*055d4590SKeyi Gui 000a: return-void 93*055d4590SKeyi Gui 000b: move-exception v0 94*055d4590SKeyi Gui 000c: monitor-exit v2 95*055d4590SKeyi Gui 000d: throw v0 96*055d4590SKeyi Gui catches 97*055d4590SKeyi Gui tries: 98*055d4590SKeyi Gui try 0005..0008 99*055d4590SKeyi Gui catch <any> -> 000b 100*055d4590SKeyi GuiBlort.testStatic3:(III)I: 101*055d4590SKeyi Guiregs: 0009; ins: 0003; outs: 0000 102*055d4590SKeyi Gui 0000: move v0, v6 103*055d4590SKeyi Gui 0001: move v1, v7 104*055d4590SKeyi Gui 0002: move v2, v8 105*055d4590SKeyi Gui 0003: const-class v5, Blort 106*055d4590SKeyi Gui 0005: monitor-enter v5 107*055d4590SKeyi Gui 0006: move v3, v0 108*055d4590SKeyi Gui 0007: const/4 v4, #int 1 // #1 109*055d4590SKeyi Gui 0008: if-ne v3, v4, 000e // +0006 110*055d4590SKeyi Gui 000a: const/4 v3, #int 1 // #1 111*055d4590SKeyi Gui 000b: move v0, v3 112*055d4590SKeyi Gui 000c: monitor-exit v5 113*055d4590SKeyi Gui 000d: return v0 114*055d4590SKeyi Gui 000e: const/4 v3, #int 2 // #2 115*055d4590SKeyi Gui 000f: move v0, v3 116*055d4590SKeyi Gui 0010: goto 000c // -0004 117*055d4590SKeyi GuiBlort.testStatic4:(J)J: 118*055d4590SKeyi Guiregs: 000a; ins: 0002; outs: 0000 119*055d4590SKeyi Gui 0000: move-wide v0, v8 120*055d4590SKeyi Gui 0001: const-class v6, Blort 121*055d4590SKeyi Gui 0003: monitor-enter v6 122*055d4590SKeyi Gui 0004: move-wide v2, v0 123*055d4590SKeyi Gui 0005: const-wide/16 v4, #long 1 // #0001 124*055d4590SKeyi Gui 0007: cmp-long v2, v2, v4 125*055d4590SKeyi Gui 0009: if-nez v2, 0010 // +0007 126*055d4590SKeyi Gui 000b: const-wide/16 v2, #long 1 // #0001 127*055d4590SKeyi Gui 000d: move-wide v0, v2 128*055d4590SKeyi Gui 000e: monitor-exit v6 129*055d4590SKeyi Gui 000f: return-wide v0 130*055d4590SKeyi Gui 0010: const-wide/16 v2, #long 2 // #0002 131*055d4590SKeyi Gui 0012: move-wide v0, v2 132*055d4590SKeyi Gui 0013: goto 000e // -0005 133*055d4590SKeyi GuiBlort.testStatic5:()V: 134*055d4590SKeyi Guiregs: 0002; ins: 0000; outs: 0000 135*055d4590SKeyi Gui 0000: const-class v1, Blort 136*055d4590SKeyi Gui 0002: monitor-enter v1 137*055d4590SKeyi Gui 0003: invoke-static {}, Blort.testStatic5:()V 138*055d4590SKeyi Gui 0006: monitor-exit v1 139*055d4590SKeyi Gui 0007: return-void 140*055d4590SKeyi Gui 0008: move-exception v0 141*055d4590SKeyi Gui 0009: monitor-exit v1 142*055d4590SKeyi Gui 000a: throw v0 143*055d4590SKeyi Gui catches 144*055d4590SKeyi Gui tries: 145*055d4590SKeyi Gui try 0003..0006 146*055d4590SKeyi Gui catch <any> -> 0008 147