Home | History | Annotate | Download | only in 092-ssa-cfg-edge-cases
      1 reading Blort.class...
      2 method <init> ()V
      3 first 000c
      4 block 0000
      5   pred 000a
      6   Blort.java:2@0001: Rop{invoke-direct . <- Ljava/lang/Object; call throws <any
      7   >}(java.lang.Object.<init>:()V catch) . <- v0:NffffLBlort;
      8   next 000b
      9 block 000a
     10   pred 000c
     11   Blort.java:2@0000: move-param-object(0) v0:"this"NffffLBlort; <- .
     12   Blort.java:2@0000: goto . <- .
     13   next 0000
     14 block 000b
     15   pred 0000
     16   Blort.java:2@0004: return-void . <- .
     17   returns
     18 block 000c
     19   @????: goto . <- .
     20   next 000a
     21 
     22 method testMultipleIdenticalSuccessors (I)V
     23 first 0053
     24 block 0000
     25   pred 004a
     26   Blort.java:5@0001: switch({1, 2, 3}) . <- v3:I
     27   next 001c
     28   next 001c
     29   next 001c
     30   next 004b *
     31 block 001c
     32   pred 0000
     33   pred 0000
     34   pred 0000
     35   Blort.java:9@001c: get-static-object(java.lang.System.out:Ljava/io/PrintStrea
     36   m; catch) . <- .
     37   next 0051
     38 block 001f
     39   pred 0051
     40   Blort.java:9@001f: const-object("foo" catch) . <- .
     41   next 0052
     42 block 0021
     43   pred 0052
     44   Blort.java:9@0021: Rop{invoke-virtual . <- Ljava/io/PrintStream; Ljava/lang/S
     45   tring; call throws <any>}(java.io.PrintStream.println:(Ljava/lang/String;)V c
     46   atch) . <- v0:Ljava/io/PrintStream; v1:Ljava/lang/String;="foo"
     47   next 004b
     48 block 004a
     49   pred 0053
     50   Blort.java:5@0000: move-param-object(0) v2:"this"LBlort; <- .
     51   Blort.java:5@0000: move-param-int(1) v3:"foo"I <- .
     52   Blort.java:5@0000: goto . <- .
     53   next 0000
     54 block 004b
     55   pred 0000
     56   pred 0021
     57   Blort.java:12@0024: return-void . <- .
     58   returns
     59 block 0051
     60   pred 001c
     61   Blort.java:9@001c: Rop{move-result-pseudo Ljava/io/PrintStream; <- . flows} v
     62   0:Ljava/io/PrintStream; <- .
     63   Blort.java:9@001c: goto . <- .
     64   next 001f
     65 block 0052
     66   pred 001f
     67   Blort.java:9@001f: Rop{move-result-pseudo Ljava/lang/String; <- . flows} v1:L
     68   java/lang/String;="foo" <- .
     69   Blort.java:9@001f: goto . <- .
     70   next 0021
     71 block 0053
     72   @????: goto . <- .
     73   next 004a
     74 
     75 method testNoPrimarySuccessor ()V
     76 first 001a
     77 block 0000
     78   pred 0012
     79   Blort.java:16@0000: new-instance(java.lang.RuntimeException catch java.lang.R
     80   untimeException) . <- .
     81   next 001b
     82   next 0019 *
     83 block 0003
     84   pred 0019
     85   Blort.java:16@0004: Rop{invoke-direct . <- Ljava/lang/RuntimeException; call 
     86   throws <any>}(java.lang.RuntimeException.<init>:()V catch java.lang.RuntimeEx
     87   ception) . <- v0:N0000Ljava/lang/RuntimeException;
     88   next 001b
     89   next 0007 *
     90 block 0007
     91   pred 0003
     92   Blort.java:16@0007: throw(catch java.lang.RuntimeException) . <- v0:Ljava/lan
     93   g/RuntimeException;
     94   next 001b
     95 block 0012
     96   pred 001a
     97   Blort.java:16@0000: move-param-object(0) v1:"this"LBlort; <- .
     98   Blort.java:16@0000: goto . <- .
     99   next 0000
    100 block 0013
    101   pred 001b
    102   Blort.java:19@0009: return-void . <- .
    103   returns
    104 block 0019
    105   pred 0000
    106   Blort.java:16@0000: Rop{move-result-pseudo N0000Ljava/lang/RuntimeException; 
    107   <- . flows} v0:N0000Ljava/lang/RuntimeException; <- .
    108   Blort.java:16@0000: goto . <- .
    109   next 0003
    110 block 001a
    111   @????: goto . <- .
    112   next 0012
    113 block 001b
    114   pred 0000
    115   pred 0003
    116   pred 0007
    117   Blort.java:17@0008: Rop{move-exception Ljava/lang/RuntimeException; <- . flow
    118   s} v0:Ljava/lang/RuntimeException; <- .
    119   @????: goto . <- .
    120   next 0013
    121