Home | History | Annotate | Download | only in expected
      1 
      2 method Base$Inner.<init>(Base):void
      3 {
      4 	    0| move-object/16 v14, v27
      5 	    3| move-object/16 v15, v28
      6 	    6| move-object/16 v13, v14
      7 	    9| move-object/16 v14, v15
      8 	   12| move-object/16 v12, v13
      9 	   15| move-object/16 v13, v14
     10 	   18| move-object v8, v12
     11 	   19| move-object v9, v13
     12 	   20| move-object v10, v8
     13 	   21| move-object v11, v9
     14 	   22| iput-object v11, v10, Base$Inner.this$0
     15 	   24| move-object v10, v8
     16 	   25| invoke-direct {v10}, java.lang.Object.<init>():void
     17 	   28| return-void
     18 }
     19 
     20 method Base$Nested.<init>():void
     21 {
     22 	    0| move-object/16 v15, v25
     23 	    3| move-object/16 v14, v15
     24 	    6| move-object/16 v13, v14
     25 	    9| move-object v11, v13
     26 	   10| move-object v12, v11
     27 	   11| invoke-direct {v12}, java.lang.Object.<init>():void
     28 	   14| return-void
     29 }
     30 
     31 method Base.<init>():void
     32 {
     33 	    0| move-object/16 v15, v25
     34 	    3| move-object/16 v14, v15
     35 	    6| move-object/16 v13, v14
     36 	    9| move-object v11, v13
     37 	   10| move-object v12, v11
     38 	   11| invoke-direct {v12}, java.lang.Object.<init>():void
     39 	   14| return-void
     40 }
     41 
     42 method Base.test(int):void
     43 {
     44 	    0| move-object/16 v14, v29
     45 	    3| move/16 v15, v30
     46 	    6| move-object/16 v13, v14
     47 	    9| move/16 v14, v15
     48 	   12| move-object/16 v12, v13
     49 	   15| move/16 v13, v14
     50 	   18| move-object v6, v12
     51 	   19| move v7, v13
     52 	   20| invoke-static {}, Hello.printStackTrace():void
     53 	   23| sget-object v8, java.lang.System.out
     54 	   25| new-instance v9, java.lang.StringBuilder
     55 	   27| move-object v11, v9
     56 	   28| move-object v9, v11
     57 	   29| move-object v10, v11
     58 	   30| invoke-direct {v10}, java.lang.StringBuilder.<init>():void
     59 	   33| const-string v10, "Base.test "
     60 	   35| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
     61 	   38| move-result-object v9
     62 	   39| move v10, v7
     63 	   40| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(int):java.lang.StringBuilder
     64 	   43| move-result-object v9
     65 	   44| invoke-virtual {v9}, java.lang.StringBuilder.toString():java.lang.String
     66 	   47| move-result-object v9
     67 	   48| invoke-virtual {v8,v9}, java.io.PrintStream.println(java.lang.String):void
     68 	   51| return-void
     69 }
     70 
     71 method Derived.<init>():void
     72 {
     73 	    0| move-object/16 v15, v25
     74 	    3| move-object/16 v14, v15
     75 	    6| move-object/16 v13, v14
     76 	    9| move-object v11, v13
     77 	   10| move-object v12, v11
     78 	   11| invoke-direct {v12}, Base.<init>():void
     79 	   14| return-void
     80 }
     81 
     82 method Derived.test(int):void
     83 {
     84 	    0| move-object/16 v14, v29
     85 	    3| move/16 v15, v30
     86 	    6| move-object/16 v13, v14
     87 	    9| move/16 v14, v15
     88 	   12| move-object/16 v12, v13
     89 	   15| move/16 v13, v14
     90 	   18| move-object v6, v12
     91 	   19| move v7, v13
     92 	   20| sget-object v8, java.lang.System.out
     93 	   22| new-instance v9, java.lang.StringBuilder
     94 	   24| move-object v11, v9
     95 	   25| move-object v9, v11
     96 	   26| move-object v10, v11
     97 	   27| invoke-direct {v10}, java.lang.StringBuilder.<init>():void
     98 	   30| const-string v10, "Derived.test "
     99 	   32| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
    100 	   35| move-result-object v9
    101 	   36| move v10, v7
    102 	   37| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(int):java.lang.StringBuilder
    103 	   40| move-result-object v9
    104 	   41| invoke-virtual {v9}, java.lang.StringBuilder.toString():java.lang.String
    105 	   44| move-result-object v9
    106 	   45| invoke-virtual {v8,v9}, java.io.PrintStream.println(java.lang.String):void
    107 	   48| return-void
    108 }
    109 
    110 method Hello.<init>():void
    111 {
    112 	    0| move-object/16 v15, v25
    113 	    3| move-object/16 v14, v15
    114 	    6| move-object/16 v13, v14
    115 	    9| move-object v11, v13
    116 	   10| move-object v12, v11
    117 	   11| invoke-direct {v12}, java.lang.Object.<init>():void
    118 	   14| return-void
    119 }
    120 
    121 method Hello.main(java.lang.String[]):void
    122 {
    123 	    0| move-object/16 v15, v29
    124 	    3| move-object/16 v14, v15
    125 	    6| move-object/16 v13, v14
    126 	    9| move-object v7, v13
    127 	   10| sget-object v9, java.lang.System.out
    128 	   12| const-string v10, "-------------------------------------------------------\n"
    129 	   14| const/4 v11, #+0 (0x00000000 | 0.00000)
    130 	   15| new-array v11, v11, java.lang.Object[]
    131 	   17| invoke-virtual {v9,v10,v11}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    132 	   20| move-result-object v9
    133 	   21| sget-object v9, java.lang.System.out
    134 	   23| const-string v10, "Hello, world (original)"
    135 	   25| invoke-virtual {v9,v10}, java.io.PrintStream.println(java.lang.String):void
    136 	   28| sget-object v9, java.lang.System.out
    137 	   30| const-string v10, "-------------------------------------------------------\n"
    138 	   32| const/4 v11, #+0 (0x00000000 | 0.00000)
    139 	   33| new-array v11, v11, java.lang.Object[]
    140 	   35| invoke-virtual {v9,v10,v11}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    141 	   38| move-result-object v9
    142 	   39| new-instance v9, Base
    143 	   41| move-object v12, v9
    144 	   42| move-object v9, v12
    145 	   43| move-object v10, v12
    146 	   44| invoke-direct {v10}, Base.<init>():void
    147 	   47| move-object v8, v9
    148 	   48| move-object v9, v8
    149 	   49| const/4 v10, #+1 (0x00000001 | 1.40130e-45)
    150 	   50| invoke-virtual {v9,v10}, Base.test(int):void
    151 	   53| sget-object v9, java.lang.System.out
    152 	   55| const-string v10, "-------------------------------------------------------\n"
    153 	   57| const/4 v11, #+0 (0x00000000 | 0.00000)
    154 	   58| new-array v11, v11, java.lang.Object[]
    155 	   60| invoke-virtual {v9,v10,v11}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    156 	   63| move-result-object v9
    157 	   64| new-instance v9, Derived
    158 	   66| move-object v12, v9
    159 	   67| move-object v9, v12
    160 	   68| move-object v10, v12
    161 	   69| invoke-direct {v10}, Derived.<init>():void
    162 	   72| move-object v8, v9
    163 	   73| move-object v9, v8
    164 	   74| const/4 v10, #+2 (0x00000002 | 2.80260e-45)
    165 	   75| invoke-virtual {v9,v10}, Base.test(int):void
    166 	   78| return-void
    167 }
    168 
    169 method Hello.printStackTrace():void
    170 {
    171 	    0| new-instance v5, java.lang.Throwable
    172 	    2| move-object v11, v5
    173 	    3| move-object v5, v11
    174 	    4| move-object v6, v11
    175 	    5| invoke-direct {v6}, java.lang.Throwable.<init>():void
    176 	    8| invoke-virtual {v5}, java.lang.Throwable.getStackTrace():java.lang.StackTraceElement[]
    177 	   11| move-result-object v5
    178 	   12| move-object v0, v5
    179 	   13| move-object v5, v0
    180 	   14| move-object v1, v5
    181 	   15| move-object v5, v1
    182 	   16| array-length v5, v5
    183 	   17| move v2, v5
    184 	   18| const/4 v5, #+0 (0x00000000 | 0.00000)
    185 	   19| move v3, v5
    186 Label_1:
    187 	   20| move v5, v3
    188 	   21| move v6, v2
    189 	   22| if-ge v5, v6, Label_2
    190 	   24| move-object v5, v1
    191 	   25| move v6, v3
    192 	   26| aget-object v5, v5, v6
    193 	   28| move-object v4, v5
    194 	   29| sget-object v5, java.lang.System.out
    195 	   31| const-string v6, "   %s\n"
    196 	   33| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
    197 	   34| new-array v7, v7, java.lang.Object[]
    198 	   36| move-object v11, v7
    199 	   37| move-object v7, v11
    200 	   38| move-object v8, v11
    201 	   39| const/4 v9, #+0 (0x00000000 | 0.00000)
    202 	   40| move-object v10, v4
    203 	   41| invoke-virtual {v10}, java.lang.StackTraceElement.toString():java.lang.String
    204 	   44| move-result-object v10
    205 	   45| aput-object v10, v8, v9
    206 	   47| invoke-virtual {v5,v6,v7}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
    207 	   50| move-result-object v5
    208 	   51| add-int/lit8 v3, v3, #+1 (0x00000001 | 1.40130e-45)
    209 	   53| goto/16 Label_1
    210 Label_2:
    211 	   55| return-void
    212 }
    213