xref: /aosp_15_r20/tools/dexter/testdata/expected/exit_hooks.asm (revision f0dffb02cdb5c647d21204e89a92a1ffae2dad87)
1*f0dffb02SXin Li
2*f0dffb02SXin Limethod Target.<init>():void
3*f0dffb02SXin Li{
4*f0dffb02SXin Li	.src "exitHooks.java"
5*f0dffb02SXin Li	.line 28
6*f0dffb02SXin Li	.prologue_end
7*f0dffb02SXin Li	.line 28
8*f0dffb02SXin Li	    0| move-object v0, v2
9*f0dffb02SXin Li	.local v0, "this", Target
10*f0dffb02SXin Li	    1| move-object v1, v0
11*f0dffb02SXin Li	    2| invoke-direct {v1}, java.lang.Object.<init>():void
12*f0dffb02SXin Li	    5| return-void
13*f0dffb02SXin Li}
14*f0dffb02SXin Li
15*f0dffb02SXin Limethod Target.main(java.lang.String[]):void
16*f0dffb02SXin Li{
17*f0dffb02SXin Li	.params "?"
18*f0dffb02SXin Li	.src "exitHooks.java"
19*f0dffb02SXin Li	.line 32
20*f0dffb02SXin Li	.prologue_end
21*f0dffb02SXin Li	.line 32
22*f0dffb02SXin Li	    0| move-object v0, v3
23*f0dffb02SXin Li	.local v0, "args", java.lang.String[]
24*f0dffb02SXin Li	    1| sget-object v1, java.lang.System.out
25*f0dffb02SXin Li	    3| const-string v2, "Hello, world!\n{"
26*f0dffb02SXin Li	    5| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
27*f0dffb02SXin Li	.line 33
28*f0dffb02SXin Li	    8| invoke-static {}, Target.test():void
29*f0dffb02SXin Li	.line 34
30*f0dffb02SXin Li	   11| sget-object v1, java.lang.System.out
31*f0dffb02SXin Li	   13| const-string v2, "}\nGood bye!"
32*f0dffb02SXin Li	   15| invoke-virtual {v1,v2}, java.io.PrintStream.println(java.lang.String):void
33*f0dffb02SXin Li	.line 35
34*f0dffb02SXin Li	   18| return-void
35*f0dffb02SXin Li}
36*f0dffb02SXin Li
37*f0dffb02SXin Limethod Target.test():void
38*f0dffb02SXin Li{
39*f0dffb02SXin Li	.src "exitHooks.java"
40*f0dffb02SXin Li	.line 39
41*f0dffb02SXin Li	.prologue_end
42*f0dffb02SXin Li	.line 39
43*f0dffb02SXin Li	    0| new-instance v1, Target
44*f0dffb02SXin Li	    2| move-object v8, v1
45*f0dffb02SXin Li	    3| move-object v1, v8
46*f0dffb02SXin Li	    4| move-object v2, v8
47*f0dffb02SXin Li	    5| invoke-direct {v2}, Target.<init>():void
48*f0dffb02SXin Li	    8| move-object v0, v1
49*f0dffb02SXin Li	.line 40
50*f0dffb02SXin Li	.local v0, "obj", Target
51*f0dffb02SXin Li	    9| sget-object v1, java.lang.System.out
52*f0dffb02SXin Li	   11| const-string v2, "Object(true)   : %s\n"
53*f0dffb02SXin Li	   13| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
54*f0dffb02SXin Li	   14| new-array v3, v3, java.lang.Object[]
55*f0dffb02SXin Li	   16| move-object v8, v3
56*f0dffb02SXin Li	   17| move-object v3, v8
57*f0dffb02SXin Li	   18| move-object v4, v8
58*f0dffb02SXin Li	   19| const/4 v5, #+0 (0x00000000 | 0.00000)
59*f0dffb02SXin Li	   20| move-object v6, v0
60*f0dffb02SXin Li	   21| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
61*f0dffb02SXin Li	   22| invoke-virtual {v6,v7}, Target.testObject(boolean):java.lang.Object
62*f0dffb02SXin Li	   25| move-result-object v6
63*f0dffb02SXin Li	   26| aput-object v6, v4, v5
64*f0dffb02SXin Li	   28| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
65*f0dffb02SXin Li	   31| move-result-object v1
66*f0dffb02SXin Li	.line 41
67*f0dffb02SXin Li	   32| sget-object v1, java.lang.System.out
68*f0dffb02SXin Li	   34| const-string v2, "Object(false)  : %s\n"
69*f0dffb02SXin Li	   36| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
70*f0dffb02SXin Li	   37| new-array v3, v3, java.lang.Object[]
71*f0dffb02SXin Li	   39| move-object v8, v3
72*f0dffb02SXin Li	   40| move-object v3, v8
73*f0dffb02SXin Li	   41| move-object v4, v8
74*f0dffb02SXin Li	   42| const/4 v5, #+0 (0x00000000 | 0.00000)
75*f0dffb02SXin Li	   43| move-object v6, v0
76*f0dffb02SXin Li	   44| const/4 v7, #+0 (0x00000000 | 0.00000)
77*f0dffb02SXin Li	   45| invoke-virtual {v6,v7}, Target.testObject(boolean):java.lang.Object
78*f0dffb02SXin Li	   48| move-result-object v6
79*f0dffb02SXin Li	   49| aput-object v6, v4, v5
80*f0dffb02SXin Li	   51| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
81*f0dffb02SXin Li	   54| move-result-object v1
82*f0dffb02SXin Li	.line 42
83*f0dffb02SXin Li	   55| sget-object v1, java.lang.System.out
84*f0dffb02SXin Li	   57| const-string v2, "double         : %s\n"
85*f0dffb02SXin Li	   59| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
86*f0dffb02SXin Li	   60| new-array v3, v3, java.lang.Object[]
87*f0dffb02SXin Li	   62| move-object v8, v3
88*f0dffb02SXin Li	   63| move-object v3, v8
89*f0dffb02SXin Li	   64| move-object v4, v8
90*f0dffb02SXin Li	   65| const/4 v5, #+0 (0x00000000 | 0.00000)
91*f0dffb02SXin Li	   66| move-object v6, v0
92*f0dffb02SXin Li	   67| const/4 v7, #+3 (0x00000003 | 4.20390e-45)
93*f0dffb02SXin Li	   68| invoke-virtual {v6,v7}, Target.testDouble(int):double
94*f0dffb02SXin Li	   71| move-result-wide v6:v7
95*f0dffb02SXin Li	   72| invoke-static {v6,v7}, java.lang.Double.valueOf(double):java.lang.Double
96*f0dffb02SXin Li	   75| move-result-object v6
97*f0dffb02SXin Li	   76| aput-object v6, v4, v5
98*f0dffb02SXin Li	   78| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
99*f0dffb02SXin Li	   81| move-result-object v1
100*f0dffb02SXin Li	.line 43
101*f0dffb02SXin Li	   82| sget-object v1, java.lang.System.out
102*f0dffb02SXin Li	   84| const-string v2, "int            : %s\n"
103*f0dffb02SXin Li	   86| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
104*f0dffb02SXin Li	   87| new-array v3, v3, java.lang.Object[]
105*f0dffb02SXin Li	   89| move-object v8, v3
106*f0dffb02SXin Li	   90| move-object v3, v8
107*f0dffb02SXin Li	   91| move-object v4, v8
108*f0dffb02SXin Li	   92| const/4 v5, #+0 (0x00000000 | 0.00000)
109*f0dffb02SXin Li	   93| move-object v6, v0
110*f0dffb02SXin Li	   94| const/16 v7, #+100 (0x00000064 | 1.40130e-43)
111*f0dffb02SXin Li	   96| invoke-virtual {v6,v7}, Target.testInt(int):int
112*f0dffb02SXin Li	   99| move-result v6
113*f0dffb02SXin Li	  100| invoke-static {v6}, java.lang.Integer.valueOf(int):java.lang.Integer
114*f0dffb02SXin Li	  103| move-result-object v6
115*f0dffb02SXin Li	  104| aput-object v6, v4, v5
116*f0dffb02SXin Li	  106| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
117*f0dffb02SXin Li	  109| move-result-object v1
118*f0dffb02SXin Li	.line 44
119*f0dffb02SXin Li	  110| move-object v1, v0
120*f0dffb02SXin Li	  111| const/4 v2, #+1 (0x00000001 | 1.40130e-45)
121*f0dffb02SXin Li	  112| invoke-virtual {v1,v2}, Target.testVoid(boolean):void
122*f0dffb02SXin Li	.line 45
123*f0dffb02SXin Li	  115| return-void
124*f0dffb02SXin Li}
125*f0dffb02SXin Li
126*f0dffb02SXin Limethod Target.testDouble(int):double
127*f0dffb02SXin Li{
128*f0dffb02SXin Li	.params "?"
129*f0dffb02SXin Li	.src "exitHooks.java"
130*f0dffb02SXin Li	.line 60
131*f0dffb02SXin Li	.prologue_end
132*f0dffb02SXin Li	.line 60
133*f0dffb02SXin Li	    0| move-object v0, v4
134*f0dffb02SXin Li	.local v0, "this", Target
135*f0dffb02SXin Li	    1| move v1, v5
136*f0dffb02SXin Li	.local v1, "n", int
137*f0dffb02SXin Li	    2| move v2, v1
138*f0dffb02SXin Li	    3| packed-switch v2, Label_5
139*f0dffb02SXin Li	.line 65
140*f0dffb02SXin Li	    6| const-wide v2:v3, #+4621762822593629389 (0x4023cccccccccccd | 9.90000)
141*f0dffb02SXin Li	   11| move-wide v0:v1, v2:v3
142*f0dffb02SXin LiLabel_1:
143*f0dffb02SXin Li	.end_local v0
144*f0dffb02SXin Li	   12| return-wide v0:v1
145*f0dffb02SXin LiLabel_2:
146*f0dffb02SXin Li	.line 62
147*f0dffb02SXin Li	.restart_local v0
148*f0dffb02SXin Li	   13| const-wide v2:v3, #+4607632778762754458 (0x3ff199999999999a | 1.10000)
149*f0dffb02SXin Li	   18| move-wide v0:v1, v2:v3
150*f0dffb02SXin Li	   19| goto Label_1
151*f0dffb02SXin LiLabel_3:
152*f0dffb02SXin Li	.line 63
153*f0dffb02SXin Li	   20| const-wide v2:v3, #+4612136378390124954 (0x400199999999999a | 2.20000)
154*f0dffb02SXin Li	   25| move-wide v0:v1, v2:v3
155*f0dffb02SXin Li	   26| goto Label_1
156*f0dffb02SXin LiLabel_4:
157*f0dffb02SXin Li	.line 64
158*f0dffb02SXin Li	   27| const-wide v2:v3, #+4614613358185178726 (0x400a666666666666 | 3.30000)
159*f0dffb02SXin Li	   32| move-wide v0:v1, v2:v3
160*f0dffb02SXin Li	   33| goto Label_1
161*f0dffb02SXin LiLabel_5: <aligned>
162*f0dffb02SXin Li	.line 60
163*f0dffb02SXin Li	   34| packed-switch-payload
164*f0dffb02SXin Li		    1: Label_2
165*f0dffb02SXin Li		    2: Label_3
166*f0dffb02SXin Li		    3: Label_4
167*f0dffb02SXin Li}
168*f0dffb02SXin Li
169*f0dffb02SXin Limethod Target.testInt(int):int
170*f0dffb02SXin Li{
171*f0dffb02SXin Li	.params "?"
172*f0dffb02SXin Li	.src "exitHooks.java"
173*f0dffb02SXin Li	.line 71
174*f0dffb02SXin Li	.prologue_end
175*f0dffb02SXin Li	.line 71
176*f0dffb02SXin Li	    0| move-object v0, v3
177*f0dffb02SXin Li	.local v0, "this", Target
178*f0dffb02SXin Li	    1| move v1, v4
179*f0dffb02SXin Li	.local v1, "n", int
180*f0dffb02SXin Li	    2| move v2, v1
181*f0dffb02SXin Li	    3| sparse-switch v2, Label_5
182*f0dffb02SXin Li	.line 76
183*f0dffb02SXin Li	    6| const/16 v2, #+123 (0x0000007b | 1.72360e-43)
184*f0dffb02SXin Li	    8| move v0, v2
185*f0dffb02SXin LiLabel_1:
186*f0dffb02SXin Li	.end_local v0
187*f0dffb02SXin Li	    9| return v0
188*f0dffb02SXin LiLabel_2:
189*f0dffb02SXin Li	.line 73
190*f0dffb02SXin Li	.restart_local v0
191*f0dffb02SXin Li	   10| const/4 v2, #+1 (0x00000001 | 1.40130e-45)
192*f0dffb02SXin Li	   11| move v0, v2
193*f0dffb02SXin Li	   12| goto Label_1
194*f0dffb02SXin LiLabel_3:
195*f0dffb02SXin Li	.line 74
196*f0dffb02SXin Li	   13| const/4 v2, #+2 (0x00000002 | 2.80260e-45)
197*f0dffb02SXin Li	   14| move v0, v2
198*f0dffb02SXin Li	   15| goto Label_1
199*f0dffb02SXin LiLabel_4:
200*f0dffb02SXin Li	.line 75
201*f0dffb02SXin Li	   16| const/4 v2, #+3 (0x00000003 | 4.20390e-45)
202*f0dffb02SXin Li	   17| move v0, v2
203*f0dffb02SXin Li	   18| goto Label_1
204*f0dffb02SXin Li	.line 71
205*f0dffb02SXin Li	   19| nop
206*f0dffb02SXin LiLabel_5: <aligned>
207*f0dffb02SXin Li	   20| sparse-switch-payload
208*f0dffb02SXin Li		   10: Label_2
209*f0dffb02SXin Li		   20: Label_3
210*f0dffb02SXin Li		   30: Label_4
211*f0dffb02SXin Li}
212*f0dffb02SXin Li
213*f0dffb02SXin Limethod Target.testObject(boolean):java.lang.Object
214*f0dffb02SXin Li{
215*f0dffb02SXin Li	.params "?"
216*f0dffb02SXin Li	.src "exitHooks.java"
217*f0dffb02SXin Li	.line 49
218*f0dffb02SXin Li	.prologue_end
219*f0dffb02SXin Li	.line 49
220*f0dffb02SXin Li	    0| move-object v0, v5
221*f0dffb02SXin Li	.local v0, "this", Target
222*f0dffb02SXin Li	    1| move v1, v6
223*f0dffb02SXin Li	.local v1, "flag", boolean
224*f0dffb02SXin Li	    2| move v2, v1
225*f0dffb02SXin Li	    3| if-eqz v2, Label_2
226*f0dffb02SXin Li	.line 51
227*f0dffb02SXin Li	    5| sget-object v2, java.lang.System.out
228*f0dffb02SXin Li	    7| const-string v3, "Flag!\n"
229*f0dffb02SXin Li	    9| const/4 v4, #+0 (0x00000000 | 0.00000)
230*f0dffb02SXin Li	   10| new-array v4, v4, java.lang.Object[]
231*f0dffb02SXin Li	   12| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
232*f0dffb02SXin Li	   15| move-result-object v2
233*f0dffb02SXin Li	.line 52
234*f0dffb02SXin Li	   16| const-string v2, "Sigh"
235*f0dffb02SXin Li	   18| move-object v0, v2
236*f0dffb02SXin LiLabel_1:
237*f0dffb02SXin Li	.line 55
238*f0dffb02SXin Li	.end_local v0
239*f0dffb02SXin Li	   19| return-object v0
240*f0dffb02SXin LiLabel_2:
241*f0dffb02SXin Li	.restart_local v0
242*f0dffb02SXin Li	   20| const-string v2, "Blah"
243*f0dffb02SXin Li	   22| move-object v0, v2
244*f0dffb02SXin Li	   23| goto Label_1
245*f0dffb02SXin Li}
246*f0dffb02SXin Li
247*f0dffb02SXin Limethod Target.testVoid(boolean):void
248*f0dffb02SXin Li{
249*f0dffb02SXin Li	.params "?"
250*f0dffb02SXin Li	.src "exitHooks.java"
251*f0dffb02SXin Li	.line 82
252*f0dffb02SXin Li	.prologue_end
253*f0dffb02SXin Li	.line 82
254*f0dffb02SXin Li	    0| move-object v0, v5
255*f0dffb02SXin Li	.local v0, "this", Target
256*f0dffb02SXin Li	    1| move v1, v6
257*f0dffb02SXin Li	.local v1, "flag", boolean
258*f0dffb02SXin Li	    2| move v2, v1
259*f0dffb02SXin Li	    3| if-eqz v2, Label_2
260*f0dffb02SXin Li	.line 84
261*f0dffb02SXin Li	    5| sget-object v2, java.lang.System.out
262*f0dffb02SXin Li	    7| const-string v3, "True!\n"
263*f0dffb02SXin Li	    9| const/4 v4, #+0 (0x00000000 | 0.00000)
264*f0dffb02SXin Li	   10| new-array v4, v4, java.lang.Object[]
265*f0dffb02SXin Li	   12| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
266*f0dffb02SXin Li	   15| move-result-object v2
267*f0dffb02SXin LiLabel_1:
268*f0dffb02SXin Li	.line 85
269*f0dffb02SXin Li	.line 90
270*f0dffb02SXin Li	   16| return-void
271*f0dffb02SXin LiLabel_2:
272*f0dffb02SXin Li	.line 89
273*f0dffb02SXin Li	   17| sget-object v2, java.lang.System.out
274*f0dffb02SXin Li	   19| const-string v3, "False!\n"
275*f0dffb02SXin Li	   21| const/4 v4, #+0 (0x00000000 | 0.00000)
276*f0dffb02SXin Li	   22| new-array v4, v4, java.lang.Object[]
277*f0dffb02SXin Li	   24| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
278*f0dffb02SXin Li	   27| move-result-object v2
279*f0dffb02SXin Li	.line 90
280*f0dffb02SXin Li	   28| goto Label_1
281*f0dffb02SXin Li}
282*f0dffb02SXin Li
283*f0dffb02SXin Limethod Tracer.<init>():void
284*f0dffb02SXin Li{
285*f0dffb02SXin Li	.src "exitHooks.java"
286*f0dffb02SXin Li	.line 2
287*f0dffb02SXin Li	.prologue_end
288*f0dffb02SXin Li	.line 2
289*f0dffb02SXin Li	    0| move-object v0, v2
290*f0dffb02SXin Li	.local v0, "this", Tracer
291*f0dffb02SXin Li	    1| move-object v1, v0
292*f0dffb02SXin Li	    2| invoke-direct {v1}, java.lang.Object.<init>():void
293*f0dffb02SXin Li	    5| return-void
294*f0dffb02SXin Li}
295*f0dffb02SXin Li
296*f0dffb02SXin Limethod Tracer.onExit(double):double
297*f0dffb02SXin Li{
298*f0dffb02SXin Li	.params "?"
299*f0dffb02SXin Li	.src "exitHooks.java"
300*f0dffb02SXin Li	.line 12
301*f0dffb02SXin Li	.prologue_end
302*f0dffb02SXin Li	.line 12
303*f0dffb02SXin Li	    0| move-wide v0:v1, v10:v11
304*f0dffb02SXin Li	.local v0, "value", double
305*f0dffb02SXin Li	    1| sget-object v2, java.lang.System.out
306*f0dffb02SXin Li	    3| const-string v3, ">>> onExit(double: %f)\n"
307*f0dffb02SXin Li	    5| const/4 v4, #+1 (0x00000001 | 1.40130e-45)
308*f0dffb02SXin Li	    6| new-array v4, v4, java.lang.Object[]
309*f0dffb02SXin Li	    8| move-object v9, v4
310*f0dffb02SXin Li	    9| move-object v4, v9
311*f0dffb02SXin Li	   10| move-object v5, v9
312*f0dffb02SXin Li	   11| const/4 v6, #+0 (0x00000000 | 0.00000)
313*f0dffb02SXin Li	   12| move-wide v7:v8, v0:v1
314*f0dffb02SXin Li	   13| invoke-static {v7,v8}, java.lang.Double.valueOf(double):java.lang.Double
315*f0dffb02SXin Li	   16| move-result-object v7
316*f0dffb02SXin Li	   17| aput-object v7, v5, v6
317*f0dffb02SXin Li	   19| invoke-virtual {v2,v3,v4}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
318*f0dffb02SXin Li	   22| move-result-object v2
319*f0dffb02SXin Li	.line 13
320*f0dffb02SXin Li	   23| move-wide v2:v3, v0:v1
321*f0dffb02SXin Li	   24| neg-double v2:v3, v2:v3
322*f0dffb02SXin Li	   25| move-wide v0:v1, v2:v3
323*f0dffb02SXin Li	.end_local v0
324*f0dffb02SXin Li	   26| return-wide v0:v1
325*f0dffb02SXin Li}
326*f0dffb02SXin Li
327*f0dffb02SXin Limethod Tracer.onExit(int):int
328*f0dffb02SXin Li{
329*f0dffb02SXin Li	.params "?"
330*f0dffb02SXin Li	.src "exitHooks.java"
331*f0dffb02SXin Li	.line 18
332*f0dffb02SXin Li	.prologue_end
333*f0dffb02SXin Li	.line 18
334*f0dffb02SXin Li	    0| move v0, v8
335*f0dffb02SXin Li	.local v0, "value", int
336*f0dffb02SXin Li	    1| sget-object v1, java.lang.System.out
337*f0dffb02SXin Li	    3| const-string v2, ">>> onExit(int: %d)\n"
338*f0dffb02SXin Li	    5| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
339*f0dffb02SXin Li	    6| new-array v3, v3, java.lang.Object[]
340*f0dffb02SXin Li	    8| move-object v7, v3
341*f0dffb02SXin Li	    9| move-object v3, v7
342*f0dffb02SXin Li	   10| move-object v4, v7
343*f0dffb02SXin Li	   11| const/4 v5, #+0 (0x00000000 | 0.00000)
344*f0dffb02SXin Li	   12| move v6, v0
345*f0dffb02SXin Li	   13| invoke-static {v6}, java.lang.Integer.valueOf(int):java.lang.Integer
346*f0dffb02SXin Li	   16| move-result-object v6
347*f0dffb02SXin Li	   17| aput-object v6, v4, v5
348*f0dffb02SXin Li	   19| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
349*f0dffb02SXin Li	   22| move-result-object v1
350*f0dffb02SXin Li	.line 19
351*f0dffb02SXin Li	   23| move v1, v0
352*f0dffb02SXin Li	   24| const/16 v2, #+10 (0x0000000a | 1.40130e-44)
353*f0dffb02SXin Li	   26| mul-int/lit8 v1, v1, #+10 (0x0000000a | 1.40130e-44)
354*f0dffb02SXin Li	   28| move v0, v1
355*f0dffb02SXin Li	.end_local v0
356*f0dffb02SXin Li	   29| return v0
357*f0dffb02SXin Li}
358*f0dffb02SXin Li
359*f0dffb02SXin Limethod Tracer.onExit(java.lang.Object):java.lang.Object
360*f0dffb02SXin Li{
361*f0dffb02SXin Li	.params "?"
362*f0dffb02SXin Li	.src "exitHooks.java"
363*f0dffb02SXin Li	.line 6
364*f0dffb02SXin Li	.prologue_end
365*f0dffb02SXin Li	.line 6
366*f0dffb02SXin Li	    0| move-object v0, v8
367*f0dffb02SXin Li	.local v0, "value", java.lang.Object
368*f0dffb02SXin Li	    1| sget-object v1, java.lang.System.out
369*f0dffb02SXin Li	    3| const-string v2, ">>> onExit(Object: %s)\n"
370*f0dffb02SXin Li	    5| const/4 v3, #+1 (0x00000001 | 1.40130e-45)
371*f0dffb02SXin Li	    6| new-array v3, v3, java.lang.Object[]
372*f0dffb02SXin Li	    8| move-object v7, v3
373*f0dffb02SXin Li	    9| move-object v3, v7
374*f0dffb02SXin Li	   10| move-object v4, v7
375*f0dffb02SXin Li	   11| const/4 v5, #+0 (0x00000000 | 0.00000)
376*f0dffb02SXin Li	   12| move-object v6, v0
377*f0dffb02SXin Li	   13| aput-object v6, v4, v5
378*f0dffb02SXin Li	   15| invoke-virtual {v1,v2,v3}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
379*f0dffb02SXin Li	   18| move-result-object v1
380*f0dffb02SXin Li	.line 7
381*f0dffb02SXin Li	   19| move-object v1, v0
382*f0dffb02SXin Li	   20| move-object v0, v1
383*f0dffb02SXin Li	.end_local v0
384*f0dffb02SXin Li	   21| return-object v0
385*f0dffb02SXin Li}
386*f0dffb02SXin Li
387*f0dffb02SXin Limethod Tracer.onExit():void
388*f0dffb02SXin Li{
389*f0dffb02SXin Li	.src "exitHooks.java"
390*f0dffb02SXin Li	.line 24
391*f0dffb02SXin Li	.prologue_end
392*f0dffb02SXin Li	.line 24
393*f0dffb02SXin Li	    0| sget-object v0, java.lang.System.out
394*f0dffb02SXin Li	    2| const-string v1, ">>> onExit(void)\n"
395*f0dffb02SXin Li	    4| const/4 v2, #+0 (0x00000000 | 0.00000)
396*f0dffb02SXin Li	    5| new-array v2, v2, java.lang.Object[]
397*f0dffb02SXin Li	    7| invoke-virtual {v0,v1,v2}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
398*f0dffb02SXin Li	   10| move-result-object v0
399*f0dffb02SXin Li	.line 25
400*f0dffb02SXin Li	   11| return-void
401*f0dffb02SXin Li}
402