22 */ |
22 */ |
23 |
23 |
24 /* |
24 /* |
25 * @test |
25 * @test |
26 * @bug 7194586 |
26 * @bug 7194586 |
27 * |
27 * @bug 8003280 8006694 |
28 * @bug 8003280 |
|
29 * @summary Add lambda tests |
28 * @summary Add lambda tests |
30 * Add back-end support for invokedynamic |
29 * Add back-end support for invokedynamic |
|
30 * temporarily workaround combo tests are causing time out in several platforms |
31 * @library ../lib |
31 * @library ../lib |
32 * @build JavacTestingAbstractThreadedTest |
32 * @build JavacTestingAbstractThreadedTest |
33 * @run main TestInvokeDynamic |
33 * @run main/othervm TestInvokeDynamic |
34 */ |
34 */ |
|
35 |
|
36 // use /othervm to avoid jtreg timeout issues (CODETOOLS-7900047) |
|
37 // see JDK-8006746 |
35 |
38 |
36 import com.sun.source.tree.MethodInvocationTree; |
39 import com.sun.source.tree.MethodInvocationTree; |
37 import com.sun.source.tree.MethodTree; |
40 import com.sun.source.tree.MethodTree; |
38 import com.sun.source.util.TaskEvent; |
41 import com.sun.source.util.TaskEvent; |
39 import com.sun.source.util.TaskListener; |
42 import com.sun.source.util.TaskListener; |
46 import com.sun.tools.classfile.ConstantPool.*; |
49 import com.sun.tools.classfile.ConstantPool.*; |
47 import com.sun.tools.classfile.Instruction; |
50 import com.sun.tools.classfile.Instruction; |
48 import com.sun.tools.classfile.Method; |
51 import com.sun.tools.classfile.Method; |
49 |
52 |
50 import com.sun.tools.javac.api.JavacTaskImpl; |
53 import com.sun.tools.javac.api.JavacTaskImpl; |
51 import com.sun.tools.javac.api.JavacTool; |
|
52 import com.sun.tools.javac.code.Symbol; |
54 import com.sun.tools.javac.code.Symbol; |
53 import com.sun.tools.javac.code.Symbol.MethodSymbol; |
55 import com.sun.tools.javac.code.Symbol.MethodSymbol; |
54 import com.sun.tools.javac.code.Symtab; |
56 import com.sun.tools.javac.code.Symtab; |
55 import com.sun.tools.javac.code.Types; |
57 import com.sun.tools.javac.code.Types; |
56 import com.sun.tools.javac.jvm.Pool; |
58 import com.sun.tools.javac.jvm.Pool; |
65 import java.util.ArrayList; |
67 import java.util.ArrayList; |
66 import java.util.Arrays; |
68 import java.util.Arrays; |
67 import java.util.Locale; |
69 import java.util.Locale; |
68 |
70 |
69 import javax.tools.Diagnostic; |
71 import javax.tools.Diagnostic; |
70 import javax.tools.JavaCompiler; |
|
71 import javax.tools.JavaFileObject; |
72 import javax.tools.JavaFileObject; |
72 import javax.tools.SimpleJavaFileObject; |
73 import javax.tools.SimpleJavaFileObject; |
73 import javax.tools.StandardJavaFileManager; |
|
74 import javax.tools.ToolProvider; |
|
75 |
74 |
76 import static com.sun.tools.javac.jvm.ClassFile.*; |
75 import static com.sun.tools.javac.jvm.ClassFile.*; |
77 |
76 |
78 public class TestInvokeDynamic |
77 public class TestInvokeDynamic |
79 extends JavacTestingAbstractThreadedTest |
78 extends JavacTestingAbstractThreadedTest |