reading Blort.class...
method <init> ()V
first 000c
block 0000
pred 000a
Blort.java:2@0001: Rop{invoke-direct . <- Ljava/lang/Object; call throws <any
>}(java.lang.Object.<init>:()V catch) . <- v0:NffffLBlort;
next 000b
block 000a
pred 000c
Blort.java:2@0000: move-param-object(0) v0:"this"NffffLBlort; <- .
Blort.java:2@0000: goto . <- .
next 0000
block 000b
pred 0000
Blort.java:2@0004: return-void . <- .
returns
block 000c
@????: goto . <- .
next 000a
method testMultipleIdenticalSuccessors (I)V
first 0053
block 0000
pred 004a
Blort.java:5@0001: switch({1, 2, 3}) . <- v3:I
next 001c
next 001c
next 001c
next 004b *
block 001c
pred 0000
pred 0000
pred 0000
Blort.java:9@001c: get-static-object(java.lang.System.out:Ljava/io/PrintStrea
m; catch) . <- .
next 0051
block 001f
pred 0051
Blort.java:9@001f: const-object("foo" catch) . <- .
next 0052
block 0021
pred 0052
Blort.java:9@0021: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/S
tring; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V c
atch) . <- v0:Ljava/io/PrintStream; v1:Ljava/lang/String;="foo"
next 004b
block 004a
pred 0053
Blort.java:5@0000: move-param-object(0) v2:"this"LBlort; <- .
Blort.java:5@0000: move-param-int(1) v3:"foo"I <- .
Blort.java:5@0000: goto . <- .
next 0000
block 004b
pred 0000
pred 0021
Blort.java:12@0024: return-void . <- .
returns
block 0051
pred 001c
Blort.java:9@001c: Rop{move-result-pseudo Ljava/io/PrintStream; <- . flows} v
0:Ljava/io/PrintStream; <- .
Blort.java:9@001c: goto . <- .
next 001f
block 0052
pred 001f
Blort.java:9@001f: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:L
java/lang/String;="foo" <- .
Blort.java:9@001f: goto . <- .
next 0021
block 0053
@????: goto . <- .
next 004a
method testNoPrimarySuccessor ()V
first 001a
block 0000
pred 0012
Blort.java:16@0000: new-instance(java.lang.RuntimeException catch java.lang.R
untimeException) . <- .
next 001b
next 0019 *
block 0003
pred 0019
Blort.java:16@0004: Rop{invoke-direct . <- Ljava/lang/RuntimeException; call
throws <any>}(java.lang.RuntimeException.<init>:()V catch java.lang.RuntimeEx
ception) . <- v0:N0000Ljava/lang/RuntimeException;
next 001b
next 0007 *
block 0007
pred 0003
Blort.java:16@0007: throw(catch java.lang.RuntimeException) . <- v0:Ljava/lan
g/RuntimeException;
next 001b
block 0012
pred 001a
Blort.java:16@0000: move-param-object(0) v1:"this"LBlort; <- .
Blort.java:16@0000: goto . <- .
next 0000
block 0013
pred 001b
Blort.java:19@0009: return-void . <- .
returns
block 0019
pred 0000
Blort.java:16@0000: Rop{move-result-pseudo N0000Ljava/lang/RuntimeException;
<- . flows} v0:N0000Ljava/lang/RuntimeException; <- .
Blort.java:16@0000: goto . <- .
next 0003
block 001a
@????: goto . <- .
next 0012
block 001b
pred 0000
pred 0003
pred 0007
Blort.java:17@0008: Rop{move-exception Ljava/lang/RuntimeException; <- . flow
s} v0:Ljava/lang/RuntimeException; <- .
@????: goto . <- .
next 0013