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