1reading Blort.class...
2method <init> ()V
3first 000c
4block 0000
5  pred 000a
6  live in:{}
7  Blort.java:17@0000: move-object v1:NffffLBlort; <- v0:NffffLBlort;
8  Blort.java:17@0001: Rop{invoke-direct . <- Ljava/lang/Object; call throws <an
9  y>}(java.lang.Object.<init>:()V catch) . <- v1:NffffLBlort;
10  next 0004
11  live out:{}
12block 0004
13  pred 0000
14  live in:{}
15  Blort.java:17@0004: goto . <- .
16  next 000b
17  live out:{}
18block 000a
19  pred 000c
20  live in:{}
21  Blort.java:17@0000: move-param-object(0) v0:NffffLBlort; <- .
22  Blort.java:17@0000: goto . <- .
23  next 0000
24  live out:{}
25block 000b
26  pred 0004
27  live in:{}
28  Blort.java:17@0004: return-void . <- .
29  returns
30  live out:{}
31block 000c
32  live in:{}
33  @????: goto . <- .
34  next 000a
35  live out:{}
36
37method phiTest ()I
38first 0048
39block 0000
40  pred 0046
41  live in:{}
42  Blort.java:21@0000: const-int(1) v4:I=1 <- .
43  Blort.java:21@0001: move-int v1:I=1 <- v4:I=1
44  Blort.java:22@0002: const-int(1) v4:I=1 <- .
45  Blort.java:22@0003: move-int v2:I=1 <- v4:I=1
46  Blort.java:23@0004: const-int(0) v4:I=0 <- .
47  Blort.java:23@0005: move-int v3:I=0 <- v4:I=0
48  Blort.java:23@0005: goto . <- .
49  next 0049
50  live out:{}
51block 0006
52  pred 0049
53  live in:{}
54  Blort.java:25@0006: move-int v4:I <- v3:I
55  Blort.java:25@0007: const-int(100) v5:I=100 <- .
56  Blort.java:25@0009: if-ge-int . <- v4:I v5:I=100
57  next 000c *
58  next 0022
59  live out:{}
60block 000c
61  pred 0006
62  live in:{}
63  Blort.java:26@000c: move-int v4:I <- v2:I
64  Blort.java:26@000d: const-int(20) v5:I=20 <- .
65  Blort.java:26@000f: if-ge-int . <- v4:I v5:I=20
66  next 0012 *
67  next 001a
68  live out:{}
69block 0012
70  pred 000c
71  live in:{}
72  Blort.java:27@0012: move-int v4:I <- v1:I
73  Blort.java:27@0013: move-int v2:I <- v4:I
74  Blort.java:28@0014: add-const-int(1) v3:I <- v3:I
75  Blort.java:28@0017: goto . <- .
76  next 0049
77  live out:{}
78block 001a
79  pred 000c
80  live in:{}
81  Blort.java:30@001a: move-int v4:I <- v3:I
82  Blort.java:30@001b: move-int v2:I <- v4:I
83  Blort.java:31@001c: add-const-int(2) v3:I <- v3:I
84  Blort.java:31@001f: goto . <- .
85  next 0049
86  live out:{}
87block 0022
88  pred 0006
89  live in:{}
90  Blort.java:35@0022: move-int v4:I <- v2:I
91  Blort.java:35@0023: move-int v0:I <- v4:I
92  Blort.java:35@0023: goto . <- .
93  next 0047
94  live out:{}
95block 0046
96  pred 0048
97  live in:{}
98  Blort.java:21@0000: move-param-object(0) v0:LBlort; <- .
99  Blort.java:21@0000: goto . <- .
100  next 0000
101  live out:{}
102block 0047
103  pred 0022
104  live in:{}
105  Blort.java:35@0023: return-int . <- v0:I
106  returns
107  live out:{}
108block 0048
109  live in:{}
110  @????: goto . <- .
111  next 0046
112  live out:{}
113block 0049
114  pred 0000
115  pred 0012
116  pred 001a
117  live in:{}
118  @????: phi v5:V <- .
119  @????: phi v4:V <- .
120  @????: phi v3:V <- .
121  @????: phi v2:V <- .
122  @????: goto . <- .
123  next 0006
124  live out:{}
125
126method noVars ()V
127first 0004
128block 0000
129  pred 0002
130  live in:{}
131  Blort.java:42@0000: goto . <- .
132  next 0003
133  live out:{}
134block 0002
135  pred 0004
136  live in:{}
137  Blort.java:42@0000: goto . <- .
138  next 0000
139  live out:{}
140block 0003
141  pred 0000
142  live in:{}
143  Blort.java:42@0000: return-void . <- .
144  returns
145  live out:{}
146block 0004
147  live in:{}
148  @????: goto . <- .
149  next 0002
150  live out:{}
151
152method getOption (I)Ljava/lang/Object;
153first 0098
154block 0000
155  pred 008c
156  live in:{}
157  Blort.java:51@0000: move-object v3:LBlort; <- v0:LBlort;
158  Blort.java:51@0001: get-field-object(Blort.fd:Ljava/lang/Object; catch) . <-
159  v3:LBlort;
160  next 0093
161  live out:{}
162block 0004
163  pred 0093
164  live in:{}
165  Blort.java:51@0004: if-nez-object . <- v3:Ljava/lang/Object;
166  next 0007 *
167  next 0011
168  live out:{}
169block 0007
170  pred 0004
171  live in:{}
172  Blort.java:52@0007: new-instance(java.lang.RuntimeException catch) . <- .
173  next 0094
174  live out:{}
175block 000a
176  pred 0094
177  live in:{}
178  Blort.java:52@000a: move-object v6:N0007Ljava/lang/RuntimeException; <- v3:N0
179  007Ljava/lang/RuntimeException;
180  Blort.java:52@000a: move-object v3:N0007Ljava/lang/RuntimeException; <- v6:N0
181  007Ljava/lang/RuntimeException;
182  Blort.java:52@000a: move-object v4:N0007Ljava/lang/RuntimeException; <- v6:N0
183  007Ljava/lang/RuntimeException;
184  Blort.java:52@000b: const-object("socket not created" catch) . <- .
185  next 0095
186  live out:{}
187block 000d
188  pred 0095
189  live in:{}
190  Blort.java:52@000d: Rop{invoke-direct . <- Ljava/lang/RuntimeException; Ljava
191  /lang/String; call throws <any>}(java.lang.RuntimeException.<init>:(Ljava/lan
192  g/String;)V catch) . <- v4:N0007Ljava/lang/RuntimeException; v5:Ljava/lang/St
193  ring;="socket not created"
194  next 0010
195  live out:{}
196block 0010
197  pred 000d
198  live in:{}
199  Blort.java:52@0010: throw(catch) . <- v3:Ljava/lang/RuntimeException;
200  returns
201  live out:{}
202block 0011
203  pred 0004
204  live in:{}
205  Blort.java:55@0011: const-int(0) v3:I=0 <- .
206  Blort.java:55@0012: move-int v2:I=0 <- v3:I=0
207  Blort.java:56@0013: move-int v3:I <- v1:I
208  Blort.java:56@0014: switch({1, 2}) . <- v3:I
209  next 0030
210  next 0030
211  next 0039 *
212  live out:{}
213block 0030
214  pred 0011
215  live in:{}
216  Blort.java:60@0030: new-instance(java.lang.Integer catch) . <- .
217  next 0096
218  live out:{}
219block 0033
220  pred 0096
221  live in:{}
222  Blort.java:60@0033: move-object v6:N0030Ljava/lang/Integer; <- v3:N0030Ljava/
223  lang/Integer;
224  Blort.java:60@0033: move-object v3:N0030Ljava/lang/Integer; <- v6:N0030Ljava/
225  lang/Integer;
226  Blort.java:60@0033: move-object v4:N0030Ljava/lang/Integer; <- v6:N0030Ljava/
227  lang/Integer;
228  Blort.java:60@0034: move-int v5:I <- v2:I
229  Blort.java:60@0035: Rop{invoke-direct . <- Ljava/lang/Integer; I call throws
230  <any>}(java.lang.Integer.<init>:(I)V catch) . <- v4:N0030Ljava/lang/Integer;
231  v5:I
232  next 0038
233  live out:{}
234block 0038
235  pred 0033
236  live in:{}
237  Blort.java:60@0038: move-object v0:Ljava/lang/Integer; <- v3:Ljava/lang/Integ
238  er;
239  Blort.java:60@0038: goto . <- .
240  next 008d
241  live out:{}
242block 0039
243  pred 0011
244  live in:{}
245  Blort.java:63@0039: move-int v3:I <- v2:I
246  Blort.java:63@003a: if-eqz-int . <- v3:I
247  next 003d *
248  next 0041
249  live out:{}
250block 003d
251  pred 0039
252  live in:{}
253  Blort.java:63@003d: const-int(1) v3:I=1 <- .
254  Blort.java:63@003e: goto . <- .
255  next 0042
256  live out:{}
257block 0041
258  pred 0039
259  live in:{}
260  Blort.java:63@0041: const-int(0) v3:I=0 <- .
261  Blort.java:63@0041: goto . <- .
262  next 0042
263  live out:{}
264block 0042
265  pred 003d
266  pred 0041
267  live in:{}
268  @????: phi v3:V <- .
269  Blort.java:63@0042: Rop{invoke-static . <- I call throws <any>}(java.lang.Boo
270  lean.valueOf:(Z)Ljava/lang/Boolean; catch) . <- v3:I
271  next 0097
272  live out:{}
273block 0045
274  pred 0097
275  live in:{}
276  Blort.java:63@0045: move-object v0:Ljava/lang/Boolean; <- v3:Ljava/lang/Boole
277  an;
278  Blort.java:63@0045: goto . <- .
279  next 008d
280  live out:{}
281block 008c
282  pred 0098
283  live in:{}
284  Blort.java:51@0000: move-param-object(0) v0:LBlort; <- .
285  Blort.java:51@0000: move-param-int(1) v1:I <- .
286  Blort.java:51@0000: goto . <- .
287  next 0000
288  live out:{}
289block 008d
290  pred 0038
291  pred 0045
292  live in:{}
293  @????: phi v6:V <- .
294  @????: phi v5:V <- .
295  @????: phi v4:V <- .
296  @????: phi v3:V <- .
297  @????: phi v0:V <- .
298  Blort.java:63@0045: return-object . <- v0:Ljava/lang/Object;
299  returns
300  live out:{}
301block 0093
302  pred 0000
303  live in:{}
304  Blort.java:51@0001: Rop{move-result-pseudo Ljava/lang/Object; <- . flows} v3:
305  Ljava/lang/Object; <- .
306  Blort.java:51@0001: goto . <- .
307  next 0004
308  live out:{}
309block 0094
310  pred 0007
311  live in:{}
312  Blort.java:52@0007: Rop{move-result-pseudo N0007Ljava/lang/RuntimeException;
313  <- . flows} v3:N0007Ljava/lang/RuntimeException; <- .
314  Blort.java:52@0007: goto . <- .
315  next 000a
316  live out:{}
317block 0095
318  pred 000a
319  live in:{}
320  Blort.java:52@000b: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v5:
321  Ljava/lang/String;="socket not created" <- .
322  Blort.java:52@000b: goto . <- .
323  next 000d
324  live out:{}
325block 0096
326  pred 0030
327  live in:{}
328  Blort.java:60@0030: Rop{move-result-pseudo N0030Ljava/lang/Integer; <- . flow
329  s} v3:N0030Ljava/lang/Integer; <- .
330  Blort.java:60@0030: goto . <- .
331  next 0033
332  live out:{}
333block 0097
334  pred 0042
335  live in:{}
336  Blort.java:63@0042: Rop{move-result Ljava/lang/Boolean; <- . flows} v3:Ljava/
337  lang/Boolean; <- .
338  Blort.java:63@0042: goto . <- .
339  next 0045
340  live out:{}
341block 0098
342  live in:{}
343  @????: goto . <- .
344  next 008c
345  live out:{}
346