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