diff options
author | acolyer <acolyer> | 2006-06-22 04:49:26 +0000 |
---|---|---|
committer | acolyer <acolyer> | 2006-06-22 04:49:26 +0000 |
commit | 426cbdccfdf8fcfcda07b86d8e524d1034b2d0b7 (patch) | |
tree | 86e17625eadc66a8d7c6d908d5db6c7c746c7eec /weaver/testdata/AfterHelloWorld.txt | |
parent | 497dcf1140b7ec4eab3aab80fa5a22c8259bae48 (diff) | |
download | aspectj-426cbdccfdf8fcfcda07b86d8e524d1034b2d0b7.tar.gz aspectj-426cbdccfdf8fcfcda07b86d8e524d1034b2d0b7.zip |
tests and "fix" for pr148007 - workaround JRockit "goto" bug by generating code closer to that produced by javac when weaving after and after returning. In particular: avoid adding a goto that branches to the next instruction (now replaces that return opcode with a nop instead), and store the return value on the top of the stack in a temp before branching to the after advice dispatch and restore it afterwards.
Diffstat (limited to 'weaver/testdata/AfterHelloWorld.txt')
-rw-r--r-- | weaver/testdata/AfterHelloWorld.txt | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/weaver/testdata/AfterHelloWorld.txt b/weaver/testdata/AfterHelloWorld.txt index 190674778..2521c5f3c 100644 --- a/weaver/testdata/AfterHelloWorld.txt +++ b/weaver/testdata/AfterHelloWorld.txt @@ -1,6 +1,6 @@ public class HelloWorld extends java.lang.Object: public void <init>(): - ALOAD_0 // HelloWorld this (line 5) + ALOAD_0 // LHelloWorld; this (line 5) INVOKESPECIAL java.lang.Object.<init> ()V constructor-execution(void HelloWorld.<init>()) | catch java.lang.Throwable -> E0 @@ -12,6 +12,7 @@ public class HelloWorld extends java.lang.Object: | ATHROW | L0: INVOKESTATIC Aspect.ajc_after_constructor_execution ()V | RETURN + | RETURN constructor-execution(void HelloWorld.<init>()) end public void <init>() @@ -53,6 +54,7 @@ public class HelloWorld extends java.lang.Object: | ATHROW | L2: INVOKESTATIC Aspect.ajc_after_method_execution ()V | RETURN + | RETURN method-execution(void HelloWorld.main(java.lang.String[])) end public static void main(String[]) |