27 * @bug 8136421
28 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
29 * @library /testlibrary /test/lib /
30 * @library ../common/patches
31 * @modules java.base/jdk.internal.misc
32 * @modules jdk.vm.ci/jdk.vm.ci.hotspot
33 * jdk.vm.ci/jdk.vm.ci.meta
34 * @build jdk.vm.ci/jdk.vm.ci.hotspot.CompilerToVMHelper
35 * @build jdk.vm.ci/jdk.vm.ci.hotspot.PublicMetaspaceWrapperObject
36 * @build compiler.jvmci.compilerToVM.GetConstantPoolTest
37 * @build sun.hotspot.WhiteBox
38 * @run main ClassFileInstaller sun.hotspot.WhiteBox
39 * sun.hotspot.WhiteBox$WhiteBoxPermission
40 * @run main/othervm -Xbootclasspath/a:.
41 * -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
42 * -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI
43 * compiler.jvmci.compilerToVM.GetConstantPoolTest
44 */
45 package compiler.jvmci.compilerToVM;
46
47 import java.lang.reflect.Field;
48 import jdk.vm.ci.meta.ConstantPool;
49 import jdk.vm.ci.hotspot.CompilerToVMHelper;
50 import jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod;
51 import jdk.vm.ci.hotspot.HotSpotResolvedObjectType;
52 import jdk.vm.ci.hotspot.PublicMetaspaceWrapperObject;
53 import jdk.test.lib.Utils;
54 import sun.hotspot.WhiteBox;
55 import jdk.internal.misc.Unsafe;
56
57 /**
58 * Tests for jdk.vm.ci.hotspot.CompilerToVM::getConstantPool method
59 */
60 public class GetConstantPoolTest {
61 private static enum TestCase {
62 NULL_BASE {
63 @Override
64 ConstantPool getConstantPool() {
65 return CompilerToVMHelper.getConstantPool(null,
66 getPtrToCpAddress());
67 }
68 },
69 JAVA_METHOD_BASE {
70 @Override
71 ConstantPool getConstantPool() {
72 HotSpotResolvedJavaMethod methodInstance
73 = CompilerToVMHelper.getResolvedJavaMethodAtSlot(
74 TEST_CLASS, 0);
75 Field field;
76 try {
|
27 * @bug 8136421
28 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
29 * @library /testlibrary /test/lib /
30 * @library ../common/patches
31 * @modules java.base/jdk.internal.misc
32 * @modules jdk.vm.ci/jdk.vm.ci.hotspot
33 * jdk.vm.ci/jdk.vm.ci.meta
34 * @build jdk.vm.ci/jdk.vm.ci.hotspot.CompilerToVMHelper
35 * @build jdk.vm.ci/jdk.vm.ci.hotspot.PublicMetaspaceWrapperObject
36 * @build compiler.jvmci.compilerToVM.GetConstantPoolTest
37 * @build sun.hotspot.WhiteBox
38 * @run main ClassFileInstaller sun.hotspot.WhiteBox
39 * sun.hotspot.WhiteBox$WhiteBoxPermission
40 * @run main/othervm -Xbootclasspath/a:.
41 * -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI
42 * -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI
43 * compiler.jvmci.compilerToVM.GetConstantPoolTest
44 */
45 package compiler.jvmci.compilerToVM;
46
47 import jdk.internal.misc.Unsafe;
48 import jdk.test.lib.Utils;
49 import jdk.vm.ci.hotspot.CompilerToVMHelper;
50 import jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod;
51 import jdk.vm.ci.hotspot.PublicMetaspaceWrapperObject;
52 import jdk.vm.ci.meta.ConstantPool;
53 import sun.hotspot.WhiteBox;
54
55 import java.lang.reflect.Field;
56
57 /**
58 * Tests for jdk.vm.ci.hotspot.CompilerToVM::getConstantPool method
59 */
60 public class GetConstantPoolTest {
61 private static enum TestCase {
62 NULL_BASE {
63 @Override
64 ConstantPool getConstantPool() {
65 return CompilerToVMHelper.getConstantPool(null,
66 getPtrToCpAddress());
67 }
68 },
69 JAVA_METHOD_BASE {
70 @Override
71 ConstantPool getConstantPool() {
72 HotSpotResolvedJavaMethod methodInstance
73 = CompilerToVMHelper.getResolvedJavaMethodAtSlot(
74 TEST_CLASS, 0);
75 Field field;
76 try {
|