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