blob: 08a2b89f457536bf3faa3600e011513da9ba7c29 (
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
|
public abstract class FancyHelloWorld extends java.lang.Object:
public void <init>():
ALOAD_0 // FancyHelloWorld this (line 7)
INVOKESPECIAL java.lang.Object.<init> ()V
constructor-execution(void FancyHelloWorld.<init>())
| RETURN
constructor-execution(void FancyHelloWorld.<init>())
end public void <init>()
public static void main(String[]):
method-execution(void FancyHelloWorld.main(java.lang.String[]))
| field-get(java.io.PrintStream java.lang.System.out)
| | catch java.lang.Throwable -> E0
| | | GETSTATIC java.lang.System.out Ljava/io/PrintStream; (line 9)
| | catch java.lang.Throwable -> E0
| | GOTO L0
| | E0: ASTORE 5
| | ALOAD 5
| | INVOKESTATIC Aspect.ajc_afterThrowing_field_get (Ljava/lang/Throwable;)V
| | ALOAD 5
| | ATHROW
| | L0: NOP
| field-get(java.io.PrintStream java.lang.System.out)
| ASTORE_1
| finally -> E2
| | catch java.lang.Exception -> E1
| | | ALOAD_1 // java.io.PrintStream out (line 11)
| | | LDC "bye"
| | | INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
| | | GOTO L1
| | catch java.lang.Exception -> E1
| | E1: ASTORE_2 (line 12)
| | ALOAD_1 // java.io.PrintStream out (line 13)
| | ALOAD_2 // java.lang.Exception e
| | INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/Object;)V
| finally -> E2
| GOTO L1
| E2: ASTORE 4 (line 14)
| JSR L2
| ALOAD 4
| ATHROW
| L1: JSR L2
| GOTO L3
| L2: ASTORE_3
| ALOAD_1 // java.io.PrintStream out (line 15)
| LDC "finally"
| INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
| RET 3 (line 10)
| L3: RETURN (line 17)
method-execution(void FancyHelloWorld.main(java.lang.String[]))
end public static void main(String[])
public static String getName():
method-execution(java.lang.String FancyHelloWorld.getName())
| ICONST_0 (line 20)
| ISTORE_0
| ILOAD_0 // int x (line 21)
| LDC "name"
| INVOKEVIRTUAL java.lang.String.hashCode ()I
| IADD
| ISTORE_0 // int x
| NEW java.lang.StringBuffer (line 22)
| DUP
| LDC "name"
| INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
| ILOAD_0 // int x
| INVOKEVIRTUAL java.lang.StringBuffer.append (I)Ljava/lang/StringBuffer;
| INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
| ARETURN
method-execution(java.lang.String FancyHelloWorld.getName())
end public static String getName()
end public abstract class FancyHelloWorld
|