Home | History | Annotate | Download | only in 093-ssa-invoke-range
      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 methodThatNeedsInvokeRange (IIIIII)V
     23 first 0004
     24 block 0002
     25   pred 0004
     26   Blort.java:6@0000: move-param-int(0) v0:"a"I <- .
     27   Blort.java:6@0000: move-param-int(1) v1:"b"I <- .
     28   Blort.java:6@0000: move-param-int(2) v2:"c"I <- .
     29   Blort.java:6@0000: move-param-int(3) v3:"d"I <- .
     30   Blort.java:6@0000: move-param-int(4) v4:"e"I <- .
     31   Blort.java:6@0000: move-param-int(5) v5:"f"I <- .
     32   Blort.java:6@0000: goto . <- .
     33   next 0003
     34 block 0003
     35   pred 0002
     36   Blort.java:6@0000: return-void . <- .
     37   returns
     38 block 0004
     39   @????: goto . <- .
     40   next 0002
     41 
     42 method testNoLocals ()V
     43 first 0016
     44 block 0014
     45   pred 0016
     46   Blort.java:9@0000: move-param-object(0) v6:"this"LBlort; <- .
     47   Blort.java:9@0000: goto . <- .
     48   next 0000
     49 block 0000
     50   pred 0014
     51   @????: move-int v2:I=5 <- v0:I=5
     52   @????: move-int v3:I=0 <- v1:I=0
     53   @????: move-int v4:I=5 <- v0:I=5
     54   @????: move-int v5:I=0 <- v1:I=0
     55   Blort.java:9@0006: Rop{invoke-static . <- I I I I I I call throws <any>}(Blor
     56   t.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I=5 v1:I=0 v2:I=5 v3:I=
     57   0 v4:I=5 v5:I=0
     58   next 0015
     59 block 0015
     60   pred 0000
     61   Blort.java:10@0009: return-void . <- .
     62   returns
     63 block 0016
     64   @????: const-int(5) v0:I=5 <- .
     65   @????: const-int(0) v1:I=0 <- .
     66   @????: goto . <- .
     67   next 0014
     68 
     69 method testMixedLocals ()V
     70 first 0034
     71 block 0032
     72   pred 0034
     73   Blort.java:13@0000: move-param-object(0) v6:"this"LBlort; <- .
     74   Blort.java:13@0000: goto . <- .
     75   next 0000
     76 block 0000
     77   pred 0032
     78   Blort.java:13@0000: const-int(6) v0:I=6 <- .
     79   @????: mark-local-int . <- v0:"src"I
     80   Blort.java:14@0003: const-int(7) v2:I=7 <- .
     81   @????: mark-local-int . <- v2:"dest"I
     82   @????: move-int v5:I=0 <- v1:I=0
     83   Blort.java:16@000c: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
     84   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I v1:I=0 v2:I v3:I=1 v
     85   4:I=5 v5:I=0
     86   next 000f
     87 block 000f
     88   pred 0000
     89   @????: move-int v5:I=0 <- v1:I=0
     90   Blort.java:17@0015: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
     91   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I v1:I=0 v2:I v3:I=1 v
     92   4:I=5 v5:I=0
     93   next 0033
     94 block 0033
     95   pred 000f
     96   Blort.java:18@0018: return-void . <- .
     97   returns
     98 block 0034
     99   @????: const-int(5) v4:I=5 <- .
    100   @????: const-int(1) v3:I=1 <- .
    101   @????: const-int(0) v1:I=0 <- .
    102   @????: goto . <- .
    103   next 0032
    104 
    105 method testMixedWorseCase ()V
    106 first 0038
    107 block 0036
    108   pred 0038
    109   Blort.java:24@0000: move-param-object(0) v12:"this"LBlort; <- .
    110   Blort.java:24@0000: goto . <- .
    111   next 0000
    112 block 0000
    113   pred 0036
    114   Blort.java:24@0000: const-int(6) v0:I=6 <- .
    115   @????: mark-local-int . <- v0:"src"I
    116   Blort.java:25@0003: const-int(7) v2:I=7 <- .
    117   @????: mark-local-int . <- v2:"dest"I
    118   Blort.java:26@0006: const-int(0) v1:I=0 <- .
    119   @????: mark-local-int . <- v1:"zero"I
    120   Blort.java:28@000e: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    121   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I v1:I v2:I v3:I=1 v4:
    122   I=5 v5:I=0
    123   next 0011
    124 block 0011
    125   pred 0000
    126   @????: move-int v6:I <- v0:I
    127   @????: move-int v7:I=0 <- v5:I=0
    128   @????: move-int v8:I <- v2:I
    129   @????: move-int v9:I=1 <- v3:I=1
    130   @????: move-int v10:I=5 <- v4:I=5
    131   @????: move-int v11:I=0 <- v5:I=0
    132   Blort.java:29@0017: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    133   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v6:I v7:I=0 v8:I v9:I=1 v
    134   10:I=5 v11:I=0
    135   next 0037
    136 block 0037
    137   pred 0011
    138   Blort.java:30@001a: return-void . <- .
    139   returns
    140 block 0038
    141   @????: const-int(5) v4:I=5 <- .
    142   @????: const-int(1) v3:I=1 <- .
    143   @????: const-int(0) v5:I=0 <- .
    144   @????: goto . <- .
    145   next 0036
    146 
    147 method testAllParams (IIIIII)V
    148 first 001c
    149 block 001a
    150   pred 001c
    151   Blort.java:33@0000: move-param-object(0) v0:"this"LBlort; <- .
    152   Blort.java:33@0000: move-param-int(1) v1:"a"I <- .
    153   Blort.java:33@0000: move-param-int(2) v2:"b"I <- .
    154   Blort.java:33@0000: move-param-int(3) v3:"c"I <- .
    155   Blort.java:33@0000: move-param-int(4) v4:"d"I <- .
    156   Blort.java:33@0000: move-param-int(5) v5:"e"I <- .
    157   Blort.java:33@0000: move-param-int(6) v6:"f"I <- .
    158   Blort.java:33@0000: goto . <- .
    159   next 0000
    160 block 0000
    161   pred 001a
    162   Blort.java:33@0009: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    163   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v1:I v2:I v3:I v4:I v5:I 
    164   v6:I
    165   next 001b
    166 block 001b
    167   pred 0000
    168   Blort.java:34@000c: return-void . <- .
    169   returns
    170 block 001c
    171   @????: goto . <- .
    172   next 001a
    173 
    174 method testTailParams (II)V
    175 first 0022
    176 block 0020
    177   pred 0022
    178   Blort.java:38@0000: move-param-int(0) v6:"destPos"I <- .
    179   Blort.java:38@0000: move-param-int(1) v7:"length"I <- .
    180   Blort.java:38@0000: goto . <- .
    181   next 0000
    182 block 0000
    183   pred 0020
    184   Blort.java:38@0000: const-int(6) v0:I=6 <- .
    185   @????: mark-local-int . <- v0:"src"I
    186   Blort.java:39@0003: const-int(7) v2:I=7 <- .
    187   @????: mark-local-int . <- v2:"dest"I
    188   @????: move-int v3:I=0 <- v1:I=0
    189   @????: move-int v4:I <- v6:I
    190   @????: move-int v5:I <- v7:I
    191   Blort.java:41@000c: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    192   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I v1:I=0 v2:I v3:I=0 v
    193   4:I v5:I
    194   next 0021
    195 block 0021
    196   pred 0000
    197   Blort.java:42@000f: return-void . <- .
    198   returns
    199 block 0022
    200   @????: const-int(0) v1:I=0 <- .
    201   @????: goto . <- .
    202   next 0020
    203 
    204 method testFlip ()V
    205 first 0034
    206 block 0032
    207   pred 0034
    208   Blort.java:47@0000: move-param-object(0) v11:"this"LBlort; <- .
    209   Blort.java:47@0000: goto . <- .
    210   next 0000
    211 block 0000
    212   pred 0032
    213   Blort.java:47@0000: const-int(6) v0:I=6 <- .
    214   @????: mark-local-int . <- v0:"src"I
    215   Blort.java:48@0003: const-int(7) v2:I=7 <- .
    216   @????: mark-local-int . <- v2:"dest"I
    217   @????: move-int v5:I=0 <- v1:I=0
    218   Blort.java:50@000c: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    219   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I v1:I=0 v2:I v3:I=1 v
    220   4:I=5 v5:I=0
    221   next 000f
    222 block 000f
    223   pred 0000
    224   @????: move-int v5:I <- v2:I
    225   @????: move-int v6:I=0 <- v1:I=0
    226   @????: move-int v7:I <- v0:I
    227   @????: move-int v8:I=1 <- v3:I=1
    228   @????: move-int v9:I=5 <- v4:I=5
    229   @????: move-int v10:I=0 <- v1:I=0
    230   Blort.java:51@0015: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    231   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v5:I v6:I=0 v7:I v8:I=1 v
    232   9:I=5 v10:I=0
    233   next 0033
    234 block 0033
    235   pred 000f
    236   Blort.java:52@0018: return-void . <- .
    237   returns
    238 block 0034
    239   @????: const-int(5) v4:I=5 <- .
    240   @????: const-int(1) v3:I=1 <- .
    241   @????: const-int(0) v1:I=0 <- .
    242   @????: goto . <- .
    243   next 0032
    244 
    245 method testMixedCategory (Z)J
    246 first 0044
    247 block 003c
    248   pred 0044
    249   Blort.java:57@0000: move-param-object(0) v8:"this"LBlort; <- .
    250   Blort.java:57@0000: move-param-int(1) v9:"foo"Z <- .
    251   Blort.java:57@0000: goto . <- .
    252   next 0000
    253 block 0000
    254   pred 003c
    255   Blort.java:57@0001: if-eqz-int . <- v9:I
    256   next 0004 *
    257   next 001a
    258 block 0004
    259   pred 0000
    260   Blort.java:58@0004: const-int(1) v3:I=1 <- .
    261   @????: mark-local-int . <- v3:"offset"I
    262   Blort.java:59@0006: const-int(6) v0:I=6 <- .
    263   @????: mark-local-int . <- v0:"src"I
    264   Blort.java:60@0009: const-int(7) v2:I=7 <- .
    265   @????: mark-local-int . <- v2:"dest"I
    266   Blort.java:62@0012: const-int(5) v4:I=5 <- .
    267   @????: move-int v5:I=0 <- v1:I=0
    268   Blort.java:62@0014: Rop{invoke-static . <- I I I I I I call throws <any>}(Blo
    269   rt.methodThatNeedsInvokeRange:(IIIIII)V catch) . <- v0:I v1:I=0 v2:I v3:I v4:
    270   I=5 v5:I=0
    271   next 0017
    272 block 0017
    273   pred 0004
    274   Blort.java:63@0018: conv-i2l v4:J <- v3:I
    275   Blort.java:63@0019: goto . <- .
    276   next 003d
    277 block 0043
    278   pred 001a
    279   Blort.java:65@001a: Rop{move-result J <- . flows} v6:J <- .
    280   Blort.java:65@001a: goto . <- .
    281   next 001d
    282 block 001a
    283   pred 0000
    284   Blort.java:65@001a: Rop{invoke-static . <- . call throws <any>}(java.lang.Sys
    285   tem.currentTimeMillis:()J catch) . <- .
    286   next 0043
    287 block 001d
    288   pred 0043
    289   @????: mark-local-long . <- v6:"offset"J
    290   @????: move-long v4:J <- v6:"offset"J
    291   Blort.java:66@001f: goto . <- .
    292   next 003d
    293 block 003d
    294   pred 0017
    295   pred 001d
    296   Blort.java:66@001f: return-long . <- v4:J
    297   returns
    298 block 0044
    299   @????: const-int(0) v1:I=0 <- .
    300   @????: goto . <- .
    301   next 003c
    302