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