aboutsummaryrefslogtreecommitdiffstats
path: root/weaver/testdata/TraceJarHello.txt
blob: 8589536d66cfeae1b8ba4bb2f63273e7f113880b (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
170
171
172
173
174
175
176
177
public class DynamicHelloWorld extends java.lang.Object implements java.io.Serializable:
  public void <init>():
                    ALOAD_0     // LDynamicHelloWorld; 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[]):
    catch java.lang.UnsupportedOperationException -> E0
    |               NEW DynamicHelloWorld   (line 12)
    |               DUP
    |               INVOKESPECIAL DynamicHelloWorld.<init> ()V
    |               LDC "hello"
    |               GETSTATIC java.util.Collections.EMPTY_LIST Ljava/util/List;
    |               INVOKEVIRTUAL DynamicHelloWorld.doit (Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
    |               POP
    |               GOTO L0
    catch java.lang.UnsupportedOperationException -> E0
                E0: ASTORE_1   (line 13)
                    GETSTATIC java.lang.System.out Ljava/io/PrintStream;   (line 14)
                    NEW java.lang.StringBuffer
                    DUP
                    LDC "expected and caught: "
                    INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
                    ALOAD_1     // Ljava/lang/UnsupportedOperationException; t
                    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
                    RETURN   (line 15)
                L0: NEW java.lang.RuntimeException   (line 17)
                    DUP
                    LDC "should have caught exception"
                    INVOKESPECIAL java.lang.RuntimeException.<init> (Ljava/lang/String;)V
                    ATHROW
  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;   (line 21)
    |               ALOAD_0
    |               INVOKEVIRTUAL Trace.ajc$before$Trace$1$26352be2 (Ljava/lang/Object;)V
    |               INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
    |               BIPUSH 3
    |               ANEWARRAY java.lang.Object
    |               ASTORE 6
    |               ALOAD 6
    |               BIPUSH 0
    |               ALOAD_0
    |               AASTORE
    |               ALOAD 6
    |               BIPUSH 1
    |               ALOAD_3
    |               AASTORE
    |               ALOAD 6
    |               BIPUSH 2
    |               ALOAD 4
    |               AASTORE
    |               NEW DynamicHelloWorld$AjcClosure3
    |               DUP
    |               ALOAD 6
    |               INVOKESPECIAL DynamicHelloWorld$AjcClosure3.<init> ([Ljava/lang/Object;)V
    |               INVOKEVIRTUAL Trace.ajc$around$Trace$2$a986034c (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object;
    |               CHECKCAST java.lang.String
    |               DUP
    |               ASTORE 7
    |               DUP
    |               ASTORE 8
    |               INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
    |               ALOAD_0
    |               ALOAD 8
    |               INVOKEVIRTUAL MyTrace.ajc$afterReturning$MyTrace$1$2b31dfa3 (Ljava/lang/Object;Ljava/lang/Object;)V
    |               ALOAD 7
    |               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     // Ljava/util/List; l   (line 21)
                    ALOAD_1     // Ljava/lang/String; s
                    INVOKEINTERFACE java.util.List.add (Ljava/lang/Object;)Z
                    POP
                    ALOAD_2     // Ljava/util/List; l   (line 22)
                    INVOKEVIRTUAL java.lang.Object.toString ()Ljava/lang/String;
                    ARETURN
  end static final String doit_aroundBody0(DynamicHelloWorld, String, java.util.List)

  static final String doit_aroundBody2(DynamicHelloWorld, String, java.util.List):
                    INVOKESTATIC MyTrace.aspectOf ()LMyTrace;   (line 21)
                    ALOAD_0
                    BIPUSH 3
                    ANEWARRAY java.lang.Object
                    ASTORE_3
                    ALOAD_3
                    BIPUSH 0
                    ALOAD_0
                    AASTORE
                    ALOAD_3
                    BIPUSH 1
                    ALOAD_1
                    AASTORE
                    ALOAD_3
                    BIPUSH 2
                    ALOAD_2
                    AASTORE
                    NEW DynamicHelloWorld$AjcClosure1
                    DUP
                    ALOAD_3
                    INVOKESPECIAL DynamicHelloWorld$AjcClosure1.<init> ([Ljava/lang/Object;)V
                    INVOKEVIRTUAL Trace.ajc$around$Trace$3$26352be2 (Ljava/lang/Object;Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object;
                    CHECKCAST java.lang.String
                    ARETURN
  end static final String doit_aroundBody2(DynamicHelloWorld, String, java.util.List)
end public class DynamicHelloWorld

public class DynamicHelloWorld$AjcClosure1 extends org.aspectj.runtime.internal.AroundClosure:
  public void <init>(Object[]):
                    ALOAD_0
                    ALOAD_1
                    INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure.<init> ([Ljava/lang/Object;)V
                    RETURN
  end public void <init>(Object[])

  public Object run(Object[]):
                    ALOAD_0
                    GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object;
                    ASTORE_2
                    ALOAD_1
                    BIPUSH 0
                    AALOAD
                    CHECKCAST DynamicHelloWorld
                    ALOAD_2
                    BIPUSH 1
                    AALOAD
                    CHECKCAST java.lang.String
                    ALOAD_2
                    BIPUSH 2
                    AALOAD
                    CHECKCAST java.util.List
                    INVOKESTATIC DynamicHelloWorld.doit_aroundBody0 (LDynamicHelloWorld;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
                    ARETURN
  end public Object run(Object[])
end public class DynamicHelloWorld$AjcClosure1

public class DynamicHelloWorld$AjcClosure3 extends org.aspectj.runtime.internal.AroundClosure:
  public void <init>(Object[]):
                    ALOAD_0
                    ALOAD_1
                    INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure.<init> ([Ljava/lang/Object;)V
                    RETURN
  end public void <init>(Object[])

  public Object run(Object[]):
                    ALOAD_0
                    GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object;
                    ASTORE_2
                    ALOAD_2
                    BIPUSH 0
                    AALOAD
                    CHECKCAST DynamicHelloWorld
                    ALOAD_2
                    BIPUSH 1
                    AALOAD
                    CHECKCAST java.lang.String
                    ALOAD_2
                    BIPUSH 2
                    AALOAD
                    CHECKCAST java.util.List
                    INVOKESTATIC DynamicHelloWorld.doit_aroundBody2 (LDynamicHelloWorld;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
                    ARETURN
  end public Object run(Object[])
end public class DynamicHelloWorld$AjcClosure3