22 */
23
24 /*
25 * @test
26 * @bug 8136421
27 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
28 * @library / /testlibrary /test/lib/
29 * @library ../common/patches
30 * @modules java.base/jdk.internal.misc
31 * @modules jdk.vm.ci/jdk.vm.ci.hotspot
32 * @build jdk.vm.ci/jdk.vm.ci.hotspot.CompilerToVMHelper
33 * @build compiler.jvmci.compilerToVM.GetImplementorTest
34 * @run main/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI
35 * compiler.jvmci.compilerToVM.GetImplementorTest
36 */
37
38 package compiler.jvmci.compilerToVM;
39
40 import compiler.jvmci.common.testcases.AbstractClass;
41 import compiler.jvmci.common.testcases.AbstractClassExtender;
42 import compiler.jvmci.common.testcases.DoNotImplementInterface;
43 import compiler.jvmci.common.testcases.DoNotExtendClass;
44 import compiler.jvmci.common.testcases.MultipleImplementer1;
45 import compiler.jvmci.common.testcases.MultipleImplementer2;
46 import compiler.jvmci.common.testcases.MultipleImplementersInterface;
47 import compiler.jvmci.common.testcases.SingleImplementer;
48 import compiler.jvmci.common.testcases.SingleImplementerInterface;
49 import compiler.jvmci.common.testcases.SingleSubclass;
50 import compiler.jvmci.common.testcases.SingleSubclassedClass;
51 import java.util.HashSet;
52 import java.util.Set;
53 import java.util.stream.Stream;
54 import jdk.vm.ci.hotspot.CompilerToVMHelper;
55 import jdk.vm.ci.hotspot.HotSpotResolvedObjectType;
56 import jdk.test.lib.Asserts;
57 import jdk.test.lib.Utils;
58
59 public class GetImplementorTest {
60 public static void main(String args[]) {
61 GetImplementorTest test = new GetImplementorTest();
62 for (TestCase tcase : createTestCases()) {
63 test.runTest(tcase);
64 }
65 }
66
67 private static Set<TestCase> createTestCases() {
68 Set<TestCase> result = new HashSet<>();
69 Stream.of(
70 SingleSubclass.class,
71 AbstractClassExtender.class,
72 MultipleImplementer2.class,
73 MultipleImplementer1.class,
74 MultipleImplementersInterface.class,
75 DoNotImplementInterface.class,
76 DoNotExtendClass.class,
77 AbstractClass.class,
|
22 */
23
24 /*
25 * @test
26 * @bug 8136421
27 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
28 * @library / /testlibrary /test/lib/
29 * @library ../common/patches
30 * @modules java.base/jdk.internal.misc
31 * @modules jdk.vm.ci/jdk.vm.ci.hotspot
32 * @build jdk.vm.ci/jdk.vm.ci.hotspot.CompilerToVMHelper
33 * @build compiler.jvmci.compilerToVM.GetImplementorTest
34 * @run main/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI
35 * compiler.jvmci.compilerToVM.GetImplementorTest
36 */
37
38 package compiler.jvmci.compilerToVM;
39
40 import compiler.jvmci.common.testcases.AbstractClass;
41 import compiler.jvmci.common.testcases.AbstractClassExtender;
42 import compiler.jvmci.common.testcases.DoNotExtendClass;
43 import compiler.jvmci.common.testcases.DoNotImplementInterface;
44 import compiler.jvmci.common.testcases.MultipleImplementer1;
45 import compiler.jvmci.common.testcases.MultipleImplementer2;
46 import compiler.jvmci.common.testcases.MultipleImplementersInterface;
47 import compiler.jvmci.common.testcases.SingleImplementer;
48 import compiler.jvmci.common.testcases.SingleImplementerInterface;
49 import compiler.jvmci.common.testcases.SingleSubclass;
50 import compiler.jvmci.common.testcases.SingleSubclassedClass;
51 import jdk.test.lib.Asserts;
52 import jdk.test.lib.Utils;
53 import jdk.vm.ci.hotspot.CompilerToVMHelper;
54 import jdk.vm.ci.hotspot.HotSpotResolvedObjectType;
55
56 import java.util.HashSet;
57 import java.util.Set;
58 import java.util.stream.Stream;
59
60 public class GetImplementorTest {
61 public static void main(String args[]) {
62 GetImplementorTest test = new GetImplementorTest();
63 for (TestCase tcase : createTestCases()) {
64 test.runTest(tcase);
65 }
66 }
67
68 private static Set<TestCase> createTestCases() {
69 Set<TestCase> result = new HashSet<>();
70 Stream.of(
71 SingleSubclass.class,
72 AbstractClassExtender.class,
73 MultipleImplementer2.class,
74 MultipleImplementer1.class,
75 MultipleImplementersInterface.class,
76 DoNotImplementInterface.class,
77 DoNotExtendClass.class,
78 AbstractClass.class,
|