blob: c7ea068eb0b3f7c997132e012bb3ac080f1f0621 [file] [log] [blame]
method Base$Inner.<init>(Base):void
{
0| move-object/16 v14, v27
3| move-object/16 v15, v28
6| move-object/16 v13, v14
9| move-object/16 v14, v15
12| move-object/16 v12, v13
15| move-object/16 v13, v14
18| move-object v8, v12
19| move-object v9, v13
20| move-object v10, v8
21| move-object v11, v9
22| iput-object v11, v10, Base$Inner.this$0
24| move-object v10, v8
25| invoke-direct {v10}, java.lang.Object.<init>():void
28| return-void
}
method Base$Nested.<init>():void
{
0| move-object/16 v15, v25
3| move-object/16 v14, v15
6| move-object/16 v13, v14
9| move-object v11, v13
10| move-object v12, v11
11| invoke-direct {v12}, java.lang.Object.<init>():void
14| return-void
}
method Base.<init>():void
{
0| move-object/16 v15, v25
3| move-object/16 v14, v15
6| move-object/16 v13, v14
9| move-object v11, v13
10| move-object v12, v11
11| invoke-direct {v12}, java.lang.Object.<init>():void
14| return-void
}
method Base.test(int):void
{
0| move-object/16 v14, v29
3| move/16 v15, v30
6| move-object/16 v13, v14
9| move/16 v14, v15
12| move-object/16 v12, v13
15| move/16 v13, v14
18| move-object v6, v12
19| move v7, v13
20| invoke-static {}, Hello.printStackTrace():void
23| sget-object v8, java.lang.System.out
25| new-instance v9, java.lang.StringBuilder
27| move-object v11, v9
28| move-object v9, v11
29| move-object v10, v11
30| invoke-direct {v10}, java.lang.StringBuilder.<init>():void
33| const-string v10, "Base.test "
35| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
38| move-result-object v9
39| move v10, v7
40| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(int):java.lang.StringBuilder
43| move-result-object v9
44| invoke-virtual {v9}, java.lang.StringBuilder.toString():java.lang.String
47| move-result-object v9
48| invoke-virtual {v8,v9}, java.io.PrintStream.println(java.lang.String):void
51| return-void
}
method Derived.<init>():void
{
0| move-object/16 v15, v25
3| move-object/16 v14, v15
6| move-object/16 v13, v14
9| move-object v11, v13
10| move-object v12, v11
11| invoke-direct {v12}, Base.<init>():void
14| return-void
}
method Derived.test(int):void
{
0| move-object/16 v14, v29
3| move/16 v15, v30
6| move-object/16 v13, v14
9| move/16 v14, v15
12| move-object/16 v12, v13
15| move/16 v13, v14
18| move-object v6, v12
19| move v7, v13
20| sget-object v8, java.lang.System.out
22| new-instance v9, java.lang.StringBuilder
24| move-object v11, v9
25| move-object v9, v11
26| move-object v10, v11
27| invoke-direct {v10}, java.lang.StringBuilder.<init>():void
30| const-string v10, "Derived.test "
32| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(java.lang.String):java.lang.StringBuilder
35| move-result-object v9
36| move v10, v7
37| invoke-virtual {v9,v10}, java.lang.StringBuilder.append(int):java.lang.StringBuilder
40| move-result-object v9
41| invoke-virtual {v9}, java.lang.StringBuilder.toString():java.lang.String
44| move-result-object v9
45| invoke-virtual {v8,v9}, java.io.PrintStream.println(java.lang.String):void
48| return-void
}
method Hello.<init>():void
{
0| move-object/16 v15, v25
3| move-object/16 v14, v15
6| move-object/16 v13, v14
9| move-object v11, v13
10| move-object v12, v11
11| invoke-direct {v12}, java.lang.Object.<init>():void
14| return-void
}
method Hello.main(java.lang.String[]):void
{
0| move-object/16 v15, v29
3| move-object/16 v14, v15
6| move-object/16 v13, v14
9| move-object v7, v13
10| sget-object v9, java.lang.System.out
12| const-string v10, "-------------------------------------------------------\n"
14| const/4 v11, #+0 (0x00000000 | 0.00000)
15| new-array v11, v11, java.lang.Object[]
17| invoke-virtual {v9,v10,v11}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
20| move-result-object v9
21| sget-object v9, java.lang.System.out
23| const-string v10, "Hello, world (original)"
25| invoke-virtual {v9,v10}, java.io.PrintStream.println(java.lang.String):void
28| sget-object v9, java.lang.System.out
30| const-string v10, "-------------------------------------------------------\n"
32| const/4 v11, #+0 (0x00000000 | 0.00000)
33| new-array v11, v11, java.lang.Object[]
35| invoke-virtual {v9,v10,v11}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
38| move-result-object v9
39| new-instance v9, Base
41| move-object v12, v9
42| move-object v9, v12
43| move-object v10, v12
44| invoke-direct {v10}, Base.<init>():void
47| move-object v8, v9
48| move-object v9, v8
49| const/4 v10, #+1 (0x00000001 | 1.40130e-45)
50| invoke-virtual {v9,v10}, Base.test(int):void
53| sget-object v9, java.lang.System.out
55| const-string v10, "-------------------------------------------------------\n"
57| const/4 v11, #+0 (0x00000000 | 0.00000)
58| new-array v11, v11, java.lang.Object[]
60| invoke-virtual {v9,v10,v11}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
63| move-result-object v9
64| new-instance v9, Derived
66| move-object v12, v9
67| move-object v9, v12
68| move-object v10, v12
69| invoke-direct {v10}, Derived.<init>():void
72| move-object v8, v9
73| move-object v9, v8
74| const/4 v10, #+2 (0x00000002 | 2.80260e-45)
75| invoke-virtual {v9,v10}, Base.test(int):void
78| return-void
}
method Hello.printStackTrace():void
{
0| new-instance v5, java.lang.Throwable
2| move-object v11, v5
3| move-object v5, v11
4| move-object v6, v11
5| invoke-direct {v6}, java.lang.Throwable.<init>():void
8| invoke-virtual {v5}, java.lang.Throwable.getStackTrace():java.lang.StackTraceElement[]
11| move-result-object v5
12| move-object v0, v5
13| move-object v5, v0
14| move-object v1, v5
15| move-object v5, v1
16| array-length v5, v5
17| move v2, v5
18| const/4 v5, #+0 (0x00000000 | 0.00000)
19| move v3, v5
Label_1:
20| move v5, v3
21| move v6, v2
22| if-ge v5, v6, Label_2
24| move-object v5, v1
25| move v6, v3
26| aget-object v5, v5, v6
28| move-object v4, v5
29| sget-object v5, java.lang.System.out
31| const-string v6, " %s\n"
33| const/4 v7, #+1 (0x00000001 | 1.40130e-45)
34| new-array v7, v7, java.lang.Object[]
36| move-object v11, v7
37| move-object v7, v11
38| move-object v8, v11
39| const/4 v9, #+0 (0x00000000 | 0.00000)
40| move-object v10, v4
41| invoke-virtual {v10}, java.lang.StackTraceElement.toString():java.lang.String
44| move-result-object v10
45| aput-object v10, v8, v9
47| invoke-virtual {v5,v6,v7}, java.io.PrintStream.printf(java.lang.String, java.lang.Object[]):java.io.PrintStream
50| move-result-object v5
51| add-int/lit8 v3, v3, #+1 (0x00000001 | 1.40130e-45)
53| goto/16 Label_1
Label_2:
55| return-void
}