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