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