aboutsummaryrefslogtreecommitdiffstats
path: root/weaver/testdata/TraceJarHello.txt
blob: 19fa930a59337f6f92d2394cac49088207d70a3c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
public class DynamicHelloWorld extends java.lang.Object implements java.io.Serializable:
  public void <init>():
                    ALOAD_0     // DynamicHelloWorld this   (line 8)
                    INVOKESPECIAL java.lang.Object.<init> ()V
    constructor-execution(void DynamicHelloWorld.<init>())
    |               RETURN
    constructor-execution(void DynamicHelloWorld.<init>())
  end public void <init>()

  public static void main(String[]):
    method-execution(void DynamicHelloWorld.main(java.lang.String[]))
    | catch java.lang.UnsupportedOperationException -> E0
    | |             NEW DynamicHelloWorld   (line 12)
    | |             DUP
    | | constructor-call(void DynamicHelloWorld.<init>())
    | | |           INVOKESPECIAL DynamicHelloWorld.<init> ()V
    | | constructor-call(void DynamicHelloWorld.<init>())
    | |             LDC "hello"
    | | field-get(java.util.List java.util.Collections.EMPTY_LIST)
    | | |           GETSTATIC java.util.Collections.EMPTY_LIST Ljava/util/List;
    | | field-get(java.util.List java.util.Collections.EMPTY_LIST)
    | | method-call(java.lang.String DynamicHelloWorld.doit(java.lang.String, java.util.List))
    | | |           INVOKEVIRTUAL DynamicHelloWorld.doit (Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    | | method-call(java.lang.String DynamicHelloWorld.doit(java.lang.String, java.util.List))
    | |             POP
    | |             GOTO L0
    | catch java.lang.UnsupportedOperationException -> E0
    |           E0: ASTORE_1   (line 13)
    | field-get(java.io.PrintStream java.lang.System.out)
    | |             GETSTATIC java.lang.System.out Ljava/io/PrintStream;   (line 14)
    | field-get(java.io.PrintStream java.lang.System.out)
    |               NEW java.lang.StringBuffer
    |               DUP
    |               LDC "expected and caught: "
    | constructor-call(void java.lang.StringBuffer.<init>(java.lang.String))
    | |             INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
    | constructor-call(void java.lang.StringBuffer.<init>(java.lang.String))
    |               ALOAD_1     // java.lang.UnsupportedOperationException t
    | method-call(java.lang.StringBuffer java.lang.StringBuffer.append(java.lang.Object))
    | |             INVOKEVIRTUAL java.lang.StringBuffer.append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
    | method-call(java.lang.StringBuffer java.lang.StringBuffer.append(java.lang.Object))
    | method-call(java.lang.String java.lang.StringBuffer.toString())
    | |             INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
    | method-call(java.lang.String java.lang.StringBuffer.toString())
    | method-call(void java.io.PrintStream.println(java.lang.String))
    | |             INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
    | method-call(void java.io.PrintStream.println(java.lang.String))
    |               RETURN   (line 15)
    |           L0: NEW java.lang.RuntimeException   (line 17)
    |               DUP
    |               LDC "should have caught exception"
    | constructor-call(void java.lang.RuntimeException.<init>(java.lang.String))
    | |             INVOKESPECIAL java.lang.RuntimeException.<init> (Ljava/lang/String;)V
    | constructor-call(void java.lang.RuntimeException.<init>(java.lang.String))
    |               ATHROW
    method-execution(void DynamicHelloWorld.main(java.lang.String[]))
  end public static void main(String[])

  String doit(String, java.util.List):
                    ALOAD_1
                    ASTORE_3
                    ALOAD_2
                    ASTORE 4
    method-execution(java.lang.String DynamicHelloWorld.doit(java.lang.String, java.util.List))
    |               INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
    |               ALOAD_0
    |               INVOKEVIRTUAL Trace.ajc$before$Trace$51 (Ljava/lang/Object;)V
    |               INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
    |               ACONST_NULL
    |               ASTORE 13
    |               ASTORE 12
    |               LDC "Hi"   (line 9)
    |               ASTORE 14
    |               GETSTATIC java.lang.System.out Ljava/io/PrintStream;   (line 10)
    |               NEW java.lang.StringBuffer
    |               DUP
    |               LDC "start around: "
    |               INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
    |               ALOAD 14
    |               INVOKEVIRTUAL java.lang.StringBuffer.append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
    |               INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
    |               INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
    |               ALOAD 13   (line 11)
    |               ASTORE 18
    |               ALOAD_0
    |               ALOAD_3
    |               ALOAD 4
    |               INVOKESTATIC DynamicHelloWorld.doit_aroundBody1 (LDynamicHelloWorld;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    |               ASTORE 16
    |               GETSTATIC java.lang.System.out Ljava/io/PrintStream;   (line 12)
    |               NEW java.lang.StringBuffer
    |               DUP
    |               LDC "exiting around with: "
    |               INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
    |               ALOAD 16
    |               INVOKEVIRTUAL java.lang.StringBuffer.append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
    |               INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
    |               INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
    |               ALOAD 16   (line 13)
    |               GOTO L0
    |           L0: NOP
    |               CHECKCAST java.lang.String
    |               GOTO L1
    |           L1: DUP
    |               ASTORE 19
    |               INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
    |               ALOAD_0
    |               ALOAD 19
    |               INVOKEVIRTUAL MyTrace.ajc$afterReturning$MyTrace$6e (Ljava/lang/Object;Ljava/lang/Object;)V
    |               ARETURN
    method-execution(java.lang.String DynamicHelloWorld.doit(java.lang.String, java.util.List))
  end String doit(String, java.util.List)

  static final String doit_aroundBody0(DynamicHelloWorld, String, java.util.List):
                    ALOAD_2   (line 21)
                    ALOAD_1
    method-call(boolean java.util.List.add(java.lang.Object))
    |               INVOKEINTERFACE java.util.List.add (Ljava/lang/Object;)Z
    method-call(boolean java.util.List.add(java.lang.Object))
                    POP
                    ALOAD_2   (line 22)
    method-call(java.lang.String java.lang.Object.toString())
    |               INVOKEVIRTUAL java.lang.Object.toString ()Ljava/lang/String;
    method-call(java.lang.String java.lang.Object.toString())
                    ARETURN
  end static final String doit_aroundBody0(DynamicHelloWorld, String, java.util.List)

  static final String doit_aroundBody1(DynamicHelloWorld, String, java.util.List):
                    INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
                    ALOAD_0
                    ACONST_NULL
                    ASTORE_3
                    ASTORE 5
                    ASTORE 7
                    GETSTATIC java.lang.System.out Ljava/io/PrintStream;   (line 17)
                    NEW java.lang.StringBuffer
                    DUP
                    LDC "start around(2): "
                    INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
                    ALOAD 5
                    INVOKEVIRTUAL java.lang.StringBuffer.append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
                    INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
                    INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
                    ALOAD 5   (line 18)
                    ALOAD_3
                    ASTORE 9
                    ASTORE 11
                    ALOAD 11
                    CHECKCAST DynamicHelloWorld
                    ALOAD_1
                    ALOAD_2
                    INVOKESTATIC DynamicHelloWorld.doit_aroundBody0 (LDynamicHelloWorld;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
                    ASTORE 13
                    GETSTATIC java.lang.System.out Ljava/io/PrintStream;   (line 19)
                    NEW java.lang.StringBuffer
                    DUP
                    LDC "exiting around with(2): "
                    INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
                    ALOAD 13
                    INVOKEVIRTUAL java.lang.StringBuffer.append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
                    INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
                    INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
                    ALOAD 13   (line 20)
                    GOTO L0
                L0: NOP
                    CHECKCAST java.lang.String
                    ARETURN
  end static final String doit_aroundBody1(DynamicHelloWorld, String, java.util.List)
end public class DynamicHelloWorld