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