xref: /aosp_15_r20/tools/dexter/testdata/expected/try_catch.scratch_regs (revision f0dffb02cdb5c647d21204e89a92a1ffae2dad87)
1*f0dffb02SXin Li
2*f0dffb02SXin Limethod A.<init>():void
3*f0dffb02SXin Li{
4*f0dffb02SXin Li	.src "tryCatch.java"
5*f0dffb02SXin Li	.line 2
6*f0dffb02SXin Li	    0| move-object/16 v15, v25
7*f0dffb02SXin Li	    3| move-object/16 v14, v15
8*f0dffb02SXin Li	    6| move-object/16 v13, v14
9*f0dffb02SXin Li	.prologue_end
10*f0dffb02SXin Li	.line 2
11*f0dffb02SXin Li	    9| move-object v11, v13
12*f0dffb02SXin Li	.local v11, "this", A
13*f0dffb02SXin Li	   10| move-object v12, v11
14*f0dffb02SXin Li	   11| invoke-direct {v12}, java.lang.Throwable.<init>():void
15*f0dffb02SXin Li	   14| return-void
16*f0dffb02SXin Li}
17*f0dffb02SXin Li
18*f0dffb02SXin Limethod B.<init>():void
19*f0dffb02SXin Li{
20*f0dffb02SXin Li	.src "tryCatch.java"
21*f0dffb02SXin Li	.line 6
22*f0dffb02SXin Li	    0| move-object/16 v15, v25
23*f0dffb02SXin Li	    3| move-object/16 v14, v15
24*f0dffb02SXin Li	    6| move-object/16 v13, v14
25*f0dffb02SXin Li	.prologue_end
26*f0dffb02SXin Li	.line 6
27*f0dffb02SXin Li	    9| move-object v11, v13
28*f0dffb02SXin Li	.local v11, "this", B
29*f0dffb02SXin Li	   10| move-object v12, v11
30*f0dffb02SXin Li	   11| invoke-direct {v12}, java.lang.Throwable.<init>():void
31*f0dffb02SXin Li	   14| return-void
32*f0dffb02SXin Li}
33*f0dffb02SXin Li
34*f0dffb02SXin Limethod TryCatch.<init>():void
35*f0dffb02SXin Li{
36*f0dffb02SXin Li	.src "tryCatch.java"
37*f0dffb02SXin Li	.line 10
38*f0dffb02SXin Li	    0| move-object/16 v15, v25
39*f0dffb02SXin Li	    3| move-object/16 v14, v15
40*f0dffb02SXin Li	    6| move-object/16 v13, v14
41*f0dffb02SXin Li	.prologue_end
42*f0dffb02SXin Li	.line 10
43*f0dffb02SXin Li	    9| move-object v11, v13
44*f0dffb02SXin Li	.local v11, "this", TryCatch
45*f0dffb02SXin Li	   10| move-object v12, v11
46*f0dffb02SXin Li	   11| invoke-direct {v12}, java.lang.Object.<init>():void
47*f0dffb02SXin Li	   14| return-void
48*f0dffb02SXin Li}
49*f0dffb02SXin Li
50*f0dffb02SXin Limethod TryCatch.foo(int):int
51*f0dffb02SXin Li{
52*f0dffb02SXin Li	.params "?"
53*f0dffb02SXin Li	.src "tryCatch.java"
54*f0dffb02SXin Li	.line 27
55*f0dffb02SXin Li	    0| move/16 v15, v27
56*f0dffb02SXin Li	    3| move/16 v14, v15
57*f0dffb02SXin Li	    6| move/16 v13, v14
58*f0dffb02SXin Li	.prologue_end
59*f0dffb02SXin Li	.line 27
60*f0dffb02SXin Li	    9| move v9, v13
61*f0dffb02SXin Li	.local v9, "x", int
62*f0dffb02SXin Li	   10| move v10, v9
63*f0dffb02SXin Li	   11| if-lez v10, Label_4
64*f0dffb02SXin Li	.line 28
65*f0dffb02SXin Li	   13| move v10, v9
66*f0dffb02SXin Li	   14| packed-switch v10, Label_5
67*f0dffb02SXin Li	.line 31
68*f0dffb02SXin Li	   17| const/4 v10, #+1 (0x00000001 | 1.40130e-45)
69*f0dffb02SXin Li	   18| move v9, v10
70*f0dffb02SXin LiLabel_1:
71*f0dffb02SXin Li	.line 34
72*f0dffb02SXin Li	.end_local v9
73*f0dffb02SXin Li	   19| return v9
74*f0dffb02SXin LiLabel_2:
75*f0dffb02SXin Li	.line 29
76*f0dffb02SXin Li	.restart_local v9
77*f0dffb02SXin Li	   20| new-instance v10, A
78*f0dffb02SXin Li	   22| move-object v12, v10
79*f0dffb02SXin Li	   23| move-object v10, v12
80*f0dffb02SXin Li	   24| move-object v11, v12
81*f0dffb02SXin Li	   25| invoke-direct {v11}, A.<init>():void
82*f0dffb02SXin Li	   28| throw v10
83*f0dffb02SXin LiLabel_3:
84*f0dffb02SXin Li	.line 30
85*f0dffb02SXin Li	   29| new-instance v10, B
86*f0dffb02SXin Li	   31| move-object v12, v10
87*f0dffb02SXin Li	   32| move-object v10, v12
88*f0dffb02SXin Li	   33| move-object v11, v12
89*f0dffb02SXin Li	   34| invoke-direct {v11}, B.<init>():void
90*f0dffb02SXin Li	   37| throw v10
91*f0dffb02SXin LiLabel_4:
92*f0dffb02SXin Li	.line 34
93*f0dffb02SXin Li	   38| const/4 v10, #+0 (0x00000000 | 0.00000)
94*f0dffb02SXin Li	   39| move v9, v10
95*f0dffb02SXin Li	   40| goto/16 Label_1
96*f0dffb02SXin LiLabel_5: <aligned>
97*f0dffb02SXin Li	.line 28
98*f0dffb02SXin Li	   42| packed-switch-payload
99*f0dffb02SXin Li		    1: Label_2
100*f0dffb02SXin Li		    2: Label_3
101*f0dffb02SXin Li}
102*f0dffb02SXin Li
103*f0dffb02SXin Limethod TryCatch.main(java.lang.String[]):void
104*f0dffb02SXin Li{
105*f0dffb02SXin Li	.params "?"
106*f0dffb02SXin Li	.src "tryCatch.java"
107*f0dffb02SXin Li	.line 15
108*f0dffb02SXin Li	    0| move-object/16 v15, v29
109*f0dffb02SXin Li	    3| move-object/16 v14, v15
110*f0dffb02SXin Li	    6| move-object/16 v13, v14
111*f0dffb02SXin Li	.prologue_end
112*f0dffb02SXin Li	.line 15
113*f0dffb02SXin Li	    9| move-object v7, v13
114*f0dffb02SXin Li	.local v7, "args", java.lang.String[]
115*f0dffb02SXin Li	   10| const/4 v10, #+0 (0x00000000 | 0.00000)
116*f0dffb02SXin Li	.try_begin_1
117*f0dffb02SXin Li	   11| invoke-static {v10}, TryCatch.foo(int):int
118*f0dffb02SXin Li	.try_end_1
119*f0dffb02SXin Li	  catch(B) : Label_3
120*f0dffb02SXin Li	  catch(A) : Label_4
121*f0dffb02SXin Li	  catch(...) : Label_5
122*f0dffb02SXin Li	   14| move-result v10
123*f0dffb02SXin LiLabel_1:
124*f0dffb02SXin Li	.line 18
125*f0dffb02SXin Li	.line 22
126*f0dffb02SXin Li	   15| sget-object v10, java.lang.System.out
127*f0dffb02SXin Li	   17| const-string v11, "finally\n"
128*f0dffb02SXin Li	   19| const/4 v12, #+0 (0x00000000 | 0.00000)
129*f0dffb02SXin Li	   20| new-array v12, v12, java.lang.Object[]
130*f0dffb02SXin Li	   22| invoke-virtual {v10,v11,v12}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
131*f0dffb02SXin Li	   25| move-result-object v10
132*f0dffb02SXin LiLabel_2:
133*f0dffb02SXin Li	.line 23
134*f0dffb02SXin Li	.line 24
135*f0dffb02SXin Li	   26| return-void
136*f0dffb02SXin LiLabel_3:
137*f0dffb02SXin Li	.line 16
138*f0dffb02SXin Li	   27| move-exception v10
139*f0dffb02SXin Li	   28| move-object v8, v10
140*f0dffb02SXin Li	.try_begin_2
141*f0dffb02SXin Li	.line 17
142*f0dffb02SXin Li	.local v8, "ex", B
143*f0dffb02SXin Li	   29| sget-object v10, java.lang.System.out
144*f0dffb02SXin Li	   31| const-string v11, "catch: B\n"
145*f0dffb02SXin Li	   33| const/4 v12, #+0 (0x00000000 | 0.00000)
146*f0dffb02SXin Li	   34| new-array v12, v12, java.lang.Object[]
147*f0dffb02SXin Li	   36| invoke-virtual {v10,v11,v12}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
148*f0dffb02SXin Li	.try_end_2
149*f0dffb02SXin Li	  catch(A) : Label_4
150*f0dffb02SXin Li	  catch(...) : Label_5
151*f0dffb02SXin Li	   39| move-result-object v10
152*f0dffb02SXin Li	   40| goto/16 Label_1
153*f0dffb02SXin LiLabel_4:
154*f0dffb02SXin Li	.line 19
155*f0dffb02SXin Li	.end_local v8
156*f0dffb02SXin Li	   42| move-exception v10
157*f0dffb02SXin Li	   43| move-object v8, v10
158*f0dffb02SXin Li	.try_begin_3
159*f0dffb02SXin Li	.line 20
160*f0dffb02SXin Li	.local v8, "ex", A
161*f0dffb02SXin Li	   44| sget-object v10, java.lang.System.out
162*f0dffb02SXin Li	   46| const-string v11, "catch: A\n"
163*f0dffb02SXin Li	   48| const/4 v12, #+0 (0x00000000 | 0.00000)
164*f0dffb02SXin Li	   49| new-array v12, v12, java.lang.Object[]
165*f0dffb02SXin Li	   51| invoke-virtual {v10,v11,v12}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
166*f0dffb02SXin Li	.try_end_3
167*f0dffb02SXin Li	  catch(...) : Label_5
168*f0dffb02SXin Li	   54| move-result-object v10
169*f0dffb02SXin Li	.line 22
170*f0dffb02SXin Li	   55| sget-object v10, java.lang.System.out
171*f0dffb02SXin Li	   57| const-string v11, "finally\n"
172*f0dffb02SXin Li	   59| const/4 v12, #+0 (0x00000000 | 0.00000)
173*f0dffb02SXin Li	   60| new-array v12, v12, java.lang.Object[]
174*f0dffb02SXin Li	   62| invoke-virtual {v10,v11,v12}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
175*f0dffb02SXin Li	   65| move-result-object v10
176*f0dffb02SXin Li	.line 23
177*f0dffb02SXin Li	   66| goto/16 Label_2
178*f0dffb02SXin LiLabel_5:
179*f0dffb02SXin Li	.line 22
180*f0dffb02SXin Li	.end_local v8
181*f0dffb02SXin Li	   68| move-exception v10
182*f0dffb02SXin Li	   69| move-object v9, v10
183*f0dffb02SXin Li	   70| sget-object v10, java.lang.System.out
184*f0dffb02SXin Li	   72| const-string v11, "finally\n"
185*f0dffb02SXin Li	   74| const/4 v12, #+0 (0x00000000 | 0.00000)
186*f0dffb02SXin Li	   75| new-array v12, v12, java.lang.Object[]
187*f0dffb02SXin Li	   77| invoke-virtual {v10,v11,v12}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
188*f0dffb02SXin Li	   80| move-result-object v10
189*f0dffb02SXin Li	   81| move-object v10, v9
190*f0dffb02SXin Li	   82| throw v10
191*f0dffb02SXin Li}
192