• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1reading Blort.class...
2method <init> ()V
3first 000c
4block 0000
5  pred 000a
6  Blort.java:2@0001: Rop{invoke-direct . <- Ljava/lang/Object; call throws <any
7  >}(java.lang.Object.<init>:()V catch) . <- v0:NffffLBlort;
8  next 000b
9block 000a
10  pred 000c
11  Blort.java:2@0000: move-param-object(0) v0:"this"NffffLBlort; <- .
12  Blort.java:2@0000: goto . <- .
13  next 0000
14block 000b
15  pred 0000
16  Blort.java:4@0004: return-void . <- .
17  returns
18block 000c
19  @????: goto . <- .
20  next 000a
21
22method testNumeric ()V
23first 005e
24block 0000
25  pred 005c
26  Blort.java:10@0000: const-int(10) v0:I=10 <- .
27  @????: mark-local-int . <- v0:"foo"I
28  Blort.java:12@0003: const-int(0) v1:I=0 <- .
29  @????: mark-local-int . <- v1:"i"I
30  Blort.java:12@0004: goto . <- .
31  next 0005
32block 0005
33  pred 0000
34  pred 000b
35  Blort.java:12@0008: if-ge-int . <- v1:I v3:I=10
36  next 000b *
37  next 0018
38block 000b
39  pred 0005
40  Blort.java:13@000f: mul-const-int(10) v2:I <- v1:I
41  Blort.java:13@0010: add-int v0:I <- v0:I v2:I
42  @????: mark-local-int . <- v0:"foo"I
43  Blort.java:12@0012: add-const-int(1) v1:"i"I <- v1:I
44  Blort.java:12@0015: goto . <- .
45  next 0005
46block 0018
47  pred 0005
48  Blort.java:16@0018: const-int(0) v1:I=0 <- .
49  @????: mark-local-int . <- v1:"i"I
50  Blort.java:16@0019: goto . <- .
51  next 001a
52block 001a
53  pred 0018
54  pred 0020
55  Blort.java:16@001d: if-ge-int . <- v1:I v3:I=10
56  next 0020 *
57  next 005d
58block 0020
59  pred 001a
60  Blort.java:17@0024: add-const-int(10) v2:I <- v1:I
61  Blort.java:17@0025: add-int v0:I <- v0:I v2:I
62  @????: mark-local-int . <- v0:"foo"I
63  Blort.java:16@0027: add-const-int(1) v1:"i"I <- v1:I
64  Blort.java:16@002a: goto . <- .
65  next 001a
66block 005c
67  pred 005e
68  Blort.java:10@0000: move-param-object(0) v4:"this"LBlort; <- .
69  Blort.java:10@0000: goto . <- .
70  next 0000
71block 005d
72  pred 001a
73  Blort.java:19@002d: return-void . <- .
74  returns
75block 005e
76  @????: const-int(10) v3:I=10 <- .
77  @????: goto . <- .
78  next 005c
79
80method testStrings ()V
81first 0078
82block 0000
83  pred 0064
84  Blort.java:22@0000: new-instance(java.lang.StringBuilder catch) . <- .
85  next 006b
86block 0003
87  pred 006b
88  Blort.java:22@0004: Rop{invoke-direct . <- Ljava/lang/StringBuilder; call thr
89  ows <any>}(java.lang.StringBuilder.<init>:()V catch) . <- v0:N0000Ljava/lang/
90  StringBuilder;
91  next 0007
92block 0007
93  pred 0003
94  @????: mark-local-object . <- v0:"sb"Ljava/lang/StringBuilder;
95  Blort.java:24@0009: const-object("foo" catch) . <- .
96  next 006c
97block 000b
98  pred 006c
99  Blort.java:24@000b: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
100  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
101  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v1:Lj
102  ava/lang/String;="foo"
103  next 000e
104block 000e
105  pred 000b
106  Blort.java:25@0010: const-object("foo" catch) . <- .
107  next 006e
108block 0012
109  pred 006e
110  Blort.java:25@0012: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
111  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
112  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v1:Lj
113  ava/lang/String;="foo"
114  next 0015
115block 0015
116  pred 0012
117  Blort.java:26@0017: const-object("foo" catch) . <- .
118  next 0070
119block 0019
120  pred 0070
121  Blort.java:26@0019: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
122  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
123  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v1:Lj
124  ava/lang/String;="foo"
125  next 001c
126block 001c
127  pred 0019
128  Blort.java:27@001e: const-object("foo" catch) . <- .
129  next 0072
130block 0020
131  pred 0072
132  Blort.java:27@0020: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
133  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
134  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v1:Lj
135  ava/lang/String;="foo"
136  next 0023
137block 0023
138  pred 0020
139  Blort.java:28@0025: const-object("foo" catch) . <- .
140  next 0074
141block 0027
142  pred 0074
143  Blort.java:28@0027: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
144  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
145  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v1:Lj
146  ava/lang/String;="foo"
147  next 002a
148block 002a
149  pred 0027
150  Blort.java:29@002c: const-object("foo" catch) . <- .
151  next 0076
152block 002e
153  pred 0076
154  Blort.java:29@002e: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
155  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
156  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v1:Lj
157  ava/lang/String;="foo"
158  next 0065
159block 0064
160  pred 0078
161  Blort.java:22@0000: move-param-object(0) v2:"this"LBlort; <- .
162  Blort.java:22@0000: goto . <- .
163  next 0000
164block 0065
165  pred 002e
166  Blort.java:30@0032: return-void . <- .
167  returns
168block 006b
169  pred 0000
170  Blort.java:22@0000: Rop{move-result-pseudo N0000Ljava/lang/StringBuilder; <-
171  . flows} v0:N0000Ljava/lang/StringBuilder; <- .
172  Blort.java:22@0000: goto . <- .
173  next 0003
174block 006c
175  pred 0007
176  Blort.java:24@0009: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:
177  Ljava/lang/String;="foo" <- .
178  Blort.java:24@0009: goto . <- .
179  next 000b
180block 006e
181  pred 000e
182  Blort.java:25@0010: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:
183  Ljava/lang/String;="foo" <- .
184  Blort.java:25@0010: goto . <- .
185  next 0012
186block 0070
187  pred 0015
188  Blort.java:26@0017: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:
189  Ljava/lang/String;="foo" <- .
190  Blort.java:26@0017: goto . <- .
191  next 0019
192block 0072
193  pred 001c
194  Blort.java:27@001e: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:
195  Ljava/lang/String;="foo" <- .
196  Blort.java:27@001e: goto . <- .
197  next 0020
198block 0074
199  pred 0023
200  Blort.java:28@0025: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:
201  Ljava/lang/String;="foo" <- .
202  Blort.java:28@0025: goto . <- .
203  next 0027
204block 0076
205  pred 002a
206  Blort.java:29@002c: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:
207  Ljava/lang/String;="foo" <- .
208  Blort.java:29@002c: goto . <- .
209  next 002e
210block 0078
211  @????: goto . <- .
212  next 0064
213
214method testCaughtStrings ()V
215first 0094
216block 0000
217  pred 007e
218  Blort.java:33@0000: new-instance(java.lang.StringBuilder catch) . <- .
219  next 0085
220block 0003
221  pred 0085
222  Blort.java:33@0004: Rop{invoke-direct . <- Ljava/lang/StringBuilder; call thr
223  ows <any>}(java.lang.StringBuilder.<init>:()V catch) . <- v0:N0000Ljava/lang/
224  StringBuilder;
225  next 0007
226block 0007
227  pred 0003
228  @????: mark-local-object . <- v0:"sb"Ljava/lang/StringBuilder;
229  Blort.java:35@0009: const-object("foo" catch) . <- .
230  next 0086
231block 000b
232  pred 0086
233  Blort.java:35@000b: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
234  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
235  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v2:Lj
236  ava/lang/String;="foo"
237  next 000e
238block 000e
239  pred 000b
240  Blort.java:36@0010: const-object("foo" catch) . <- .
241  next 0088
242block 0012
243  pred 0088
244  Blort.java:36@0012: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
245  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
246  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v2:Lj
247  ava/lang/String;="foo"
248  next 0015
249block 0015
250  pred 0012
251  Blort.java:37@0017: const-object("foo" catch) . <- .
252  next 008a
253block 0019
254  pred 008a
255  Blort.java:37@0019: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
256  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
257  ing;)Ljava/lang/StringBuilder; catch) . <- v0:Ljava/lang/StringBuilder; v2:Lj
258  ava/lang/String;="foo"
259  next 001d
260block 001d
261  pred 0019
262  Blort.java:39@001e: const-object("foo" catch java.lang.Throwable) . <- .
263  next 0095
264  next 008c *
265block 0020
266  pred 008c
267  Blort.java:39@0020: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
268  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
269  ing;)Ljava/lang/StringBuilder; catch java.lang.Throwable) . <- v0:Ljava/lang/
270  StringBuilder; v2:Ljava/lang/String;="foo"
271  next 0095
272  next 0023 *
273block 0023
274  pred 0020
275  Blort.java:40@0025: const-object("foo" catch java.lang.Throwable) . <- .
276  next 0095
277  next 008e *
278block 0027
279  pred 008e
280  Blort.java:40@0027: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
281  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
282  ing;)Ljava/lang/StringBuilder; catch java.lang.Throwable) . <- v0:Ljava/lang/
283  StringBuilder; v2:Ljava/lang/String;="foo"
284  next 0095
285  next 002a *
286block 002a
287  pred 0027
288  Blort.java:41@002c: const-object("foo" catch java.lang.Throwable) . <- .
289  next 0095
290  next 0090 *
291block 002e
292  pred 0090
293  Blort.java:41@002e: Rop{invoke-virtual . <- Ljava/lang/StringBuilder; Ljava/l
294  ang/String; call throws <any>}(java.lang.StringBuilder.append:(Ljava/lang/Str
295  ing;)Ljava/lang/StringBuilder; catch java.lang.Throwable) . <- v0:Ljava/lang/
296  StringBuilder; v2:Ljava/lang/String;="foo"
297  next 0095
298  next 007f *
299block 0035
300  pred 0095
301  @????: mark-local-object . <- v1:"tr"Ljava/lang/Throwable;
302  Blort.java:43@0036: get-static-object(java.lang.System.out:Ljava/io/PrintStre
303  am; catch) . <- .
304  next 0092
305block 0039
306  pred 0092
307  Blort.java:43@0039: const-object("foo" catch) . <- .
308  next 0093
309block 003b
310  pred 0093
311  Blort.java:43@003b: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/
312  String; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V
313  catch) . <- v2:Ljava/io/PrintStream; v3:Ljava/lang/String;="foo"
314  next 007f
315block 007e
316  pred 0094
317  Blort.java:33@0000: move-param-object(0) v4:"this"LBlort; <- .
318  Blort.java:33@0000: goto . <- .
319  next 0000
320block 007f
321  pred 002e
322  pred 003b
323  Blort.java:45@003e: return-void . <- .
324  returns
325block 0085
326  pred 0000
327  Blort.java:33@0000: Rop{move-result-pseudo N0000Ljava/lang/StringBuilder; <-
328  . flows} v0:N0000Ljava/lang/StringBuilder; <- .
329  Blort.java:33@0000: goto . <- .
330  next 0003
331block 0086
332  pred 0007
333  Blort.java:35@0009: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v2:
334  Ljava/lang/String;="foo" <- .
335  Blort.java:35@0009: goto . <- .
336  next 000b
337block 0088
338  pred 000e
339  Blort.java:36@0010: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v2:
340  Ljava/lang/String;="foo" <- .
341  Blort.java:36@0010: goto . <- .
342  next 0012
343block 008a
344  pred 0015
345  Blort.java:37@0017: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v2:
346  Ljava/lang/String;="foo" <- .
347  Blort.java:37@0017: goto . <- .
348  next 0019
349block 008c
350  pred 001d
351  Blort.java:39@001e: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v2:
352  Ljava/lang/String;="foo" <- .
353  Blort.java:39@001e: goto . <- .
354  next 0020
355block 008e
356  pred 0023
357  Blort.java:40@0025: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v2:
358  Ljava/lang/String;="foo" <- .
359  Blort.java:40@0025: goto . <- .
360  next 0027
361block 0090
362  pred 002a
363  Blort.java:41@002c: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v2:
364  Ljava/lang/String;="foo" <- .
365  Blort.java:41@002c: goto . <- .
366  next 002e
367block 0092
368  pred 0035
369  Blort.java:43@0036: Rop{move-result-pseudo Ljava/io/PrintStream; <- . flows}
370  v2:Ljava/io/PrintStream; <- .
371  Blort.java:43@0036: goto . <- .
372  next 0039
373block 0093
374  pred 0039
375  Blort.java:43@0039: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v3:
376  Ljava/lang/String;="foo" <- .
377  Blort.java:43@0039: goto . <- .
378  next 003b
379block 0094
380  @????: goto . <- .
381  next 007e
382block 0095
383  pred 001d
384  pred 0020
385  pred 0023
386  pred 0027
387  pred 002a
388  pred 002e
389  Blort.java:42@0035: Rop{move-exception Ljava/lang/Throwable; <- . flows} v1:L
390  java/lang/Throwable; <- .
391  @????: goto . <- .
392  next 0035
393
394method testLocalVars ()V
395first 0004
396block 0000
397  pred 0002
398  Blort.java:49@0000: const-int(10) v3:I=10 <- .
399  @????: mark-local-int . <- v3:"i"I
400  Blort.java:50@0003: const-int(10) v4:I=10 <- .
401  @????: mark-local-int . <- v4:"j"I
402  Blort.java:51@0006: const-int(10) v5:I=10 <- .
403  @????: mark-local-int . <- v5:"k"I
404  Blort.java:52@0009: const-int(10) v0:I=10 <- .
405  @????: mark-local-int . <- v0:"a"I
406  Blort.java:53@000d: const-int(10) v1:I=10 <- .
407  @????: mark-local-int . <- v1:"b"I
408  Blort.java:54@0011: const-int(10) v2:I=10 <- .
409  @????: mark-local-int . <- v2:"c"I
410  Blort.java:56@0018: mul-const-int(10) v3:I=100 <- v3:I
411  @????: mark-local-int . <- v3:"i"I=100
412  Blort.java:57@001a: goto . <- .
413  next 0003
414block 0002
415  pred 0004
416  Blort.java:49@0000: move-param-object(0) v6:"this"LBlort; <- .
417  Blort.java:49@0000: goto . <- .
418  next 0000
419block 0003
420  pred 0000
421  Blort.java:57@001a: return-void . <- .
422  returns
423block 0004
424  @????: goto . <- .
425  next 0002
426
427method testNull (Ljava/lang/Object;)V
428first 0021
429block 0000
430  pred 0018
431  Blort.java:60@0002: Rop{invoke-virtual . <- Ljava/lang/Object; Ljava/lang/Obj
432  ect; call throws <any>}(java.lang.Object.equals:(Ljava/lang/Object;)Z catch)
433  . <- v2:Ljava/lang/Object; v0:<null>=null
434  next 0005
435block 0005
436  pred 0000
437  Blort.java:61@0008: Rop{invoke-virtual . <- Ljava/lang/Object; Ljava/lang/Obj
438  ect; call throws <any>}(java.lang.Object.equals:(Ljava/lang/Object;)Z catch)
439  . <- v2:Ljava/lang/Object; v0:<null>=null
440  next 0019
441block 0018
442  pred 0021
443  Blort.java:60@0000: move-param-object(0) v1:"this"LBlort; <- .
444  Blort.java:60@0000: move-param-object(1) v2:"a"Ljava/lang/Object; <- .
445  Blort.java:60@0000: goto . <- .
446  next 0000
447block 0019
448  pred 0005
449  Blort.java:63@000c: return-void . <- .
450  returns
451block 0021
452  @????: const-object-nothrow(null) v0:<null>=null <- .
453  @????: goto . <- .
454  next 0018
455