reading Blort.class...
method <init> ()V
first 0007
block 0000
pred 0005
Blort.java:2@0001: Rop{invoke-direct . <- Ljava/lang/Object; call throws <any
>}(java.lang.Object.<init>:()V catch) . <- v0:NffffLBlort;
next 0006
block 0005
pred 0007
Blort.java:2@0000: move-param-object(0) v0:"this"NffffLBlort; <- .
Blort.java:2@0000: goto . <- .
next 0000
block 0006
pred 0000
Blort.java:2@0004: return-void . <- .
returns
block 0007
@????: goto . <- .
next 0005
method testMultipleIdenticalSuccessors (I)V
first 002e
block 0000
pred 0025
Blort.java:5@0001: switch({1, 2, 3}) . <- v3:I
next 001c
next 001c
next 001c
next 0026 *
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 002c
block 001f
pred 002c
Blort.java:9@001f: const-object("foo" catch) . <- .
next 002d
block 0021
pred 002d
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 0026
block 0025
pred 002e
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 0026
pred 0000
pred 0021
Blort.java:12@0024: return-void . <- .
returns
block 002c
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 002d
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 002e
@????: goto . <- .
next 0025
method testNoPrimarySuccessor ()V
first 0012
block 0000
pred 000a
Blort.java:16@0000: new-instance(java.lang.RuntimeException catch java.lang.R
untimeException) . <- .
next 0013
next 0011 *
block 0003
pred 0011
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 0013
next 0007 *
block 0007
pred 0003
Blort.java:16@0007: throw(catch java.lang.RuntimeException) . <- v0:Ljava/lan
g/RuntimeException;
next 0013
block 000a
pred 0012
Blort.java:16@0000: move-param-object(0) v1:"this"LBlort; <- .
Blort.java:16@0000: goto . <- .
next 0000
block 000b
pred 0013
Blort.java:19@0009: return-void . <- .
returns
block 0011
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 0012
@????: goto . <- .
next 000a
block 0013
pred 0000
pred 0003
pred 0007
Blort.java:17@0008: Rop{move-exception Ljava/lang/RuntimeException; <- . flow
s} v0:Ljava/lang/RuntimeException; <- .
@????: goto . <- .
next 000b