1 2method Base.<init>():void 3{ 4 .src "Target.java" 5 .line 1 6 .prologue_end 7 .line 1 8 0| invoke-direct {v0}, java.lang.Object.<init>():void 9 3| return-void 10} 11 12method Base.foo(int, java.lang.String):int 13{ 14 .params "?", "?" 15 .src "Target.java" 16 .line 3 17 .prologue_end 18 .line 3 19 0| const/4 v0, #+0 (0x00000000 | 0.00000) 20 1| return v0 21} 22 23method IBase.bar(java.lang.String):void 24{ 25} 26 27method Target.<init>(Base, IBase):void 28{ 29 .params "?", "?" 30 .src "Target.java" 31 .line 15 32 .prologue_end 33 .line 15 34 0| invoke-direct {v0}, java.lang.Object.<init>():void 35 .line 16 36 3| iput-object v1, v0, Target.base 37 .line 17 38 5| iput-object v2, v0, Target.iBase 39 .line 18 40 7| return-void 41} 42 43method Target.foo(int, java.lang.String):int 44{ 45 .params "?", "?" 46 .src "Target.java" 47 .line 21 48 .prologue_end 49 .line 21 50 0| const v0, #+4 (0x00000004 | 5.60519e-45) 51 3| new-array v1, v0, java.lang.Object[] 52 5| const-string v2, "Target->foo(ILjava/lang/String;)I" 53 7| const v0, #+0 (0x00000000 | 0.00000) 54 10| aput-object v2, v1, v0 55 12| const v0, #+1 (0x00000001 | 1.40130e-45) 56 15| aput-object v3, v1, v0 57 17| invoke-static/range {v4..v4}, java.lang.Integer.valueOf(int):java.lang.Integer 58 20| move-result-object v2 59 21| const v0, #+2 (0x00000002 | 2.80260e-45) 60 24| aput-object v2, v1, v0 61 26| const v0, #+3 (0x00000003 | 4.20390e-45) 62 29| aput-object v5, v1, v0 63 31| invoke-static/range {v1..v1}, Tracer.onFooEntry(java.lang.Object[]):void 64 34| const v0, #-16843010 (0xfefefefe | -1.69474e+38) 65 37| const v1, #-16843010 (0xfefefefe | -1.69474e+38) 66 40| const v2, #-16843010 (0xfefefefe | -1.69474e+38) 67 43| move-object/16 v2, v3 68 46| move/16 v3, v4 69 49| move-object/16 v4, v5 70 52| iget-object v0, v2, Target.base 71 54| invoke-virtual {v0,v3,v4}, Base.foo(int, java.lang.String):int 72 57| move-result v0 73 .line 22 74 58| iget-object v1, v2, Target.iBase 75 60| invoke-interface {v1,v4}, IBase.bar(java.lang.String):void 76 .line 23 77 63| return v0 78} 79 80method Target.foo(int, java.lang.String[][]):java.lang.Integer 81{ 82 .params "?", "?" 83 .src "Target.java" 84 .line 27 85 .prologue_end 86 .line 27 87 0| const v0, #+4 (0x00000004 | 5.60519e-45) 88 3| new-array v1, v0, java.lang.Object[] 89 5| const-string v2, "Target->foo(I[[Ljava/lang/String;)Ljava/lang/Integer;" 90 7| const v0, #+0 (0x00000000 | 0.00000) 91 10| aput-object v2, v1, v0 92 12| const v0, #+1 (0x00000001 | 1.40130e-45) 93 15| aput-object v3, v1, v0 94 17| invoke-static/range {v4..v4}, java.lang.Integer.valueOf(int):java.lang.Integer 95 20| move-result-object v2 96 21| const v0, #+2 (0x00000002 | 2.80260e-45) 97 24| aput-object v2, v1, v0 98 26| const v0, #+3 (0x00000003 | 4.20390e-45) 99 29| aput-object v5, v1, v0 100 31| invoke-static/range {v1..v1}, Tracer.onFooEntry(java.lang.Object[]):void 101 34| const v0, #-16843010 (0xfefefefe | -1.69474e+38) 102 37| const v1, #-16843010 (0xfefefefe | -1.69474e+38) 103 40| const v2, #-16843010 (0xfefefefe | -1.69474e+38) 104 43| move-object/16 v2, v3 105 46| move/16 v3, v4 106 49| move-object/16 v4, v5 107 52| iget-object v0, v2, Target.base 108 54| const-string v1, "foo" 109 56| invoke-virtual {v0,v3,v1}, Base.foo(int, java.lang.String):int 110 .line 28 111 59| iget-object v0, v2, Target.iBase 112 61| const-string v1, "bar" 113 63| invoke-interface {v0,v1}, IBase.bar(java.lang.String):void 114 .line 29 115 66| const/4 v0, #+0 (0x00000000 | 0.00000) 116 67| return-object v0 117} 118