21 * questions.
22 */
23
24 /**
25 * @test
26 * @bug 8151664
27 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
28 * @library /testlibrary /test/lib /
29 * @modules java.base/jdk.internal.misc
30 * @modules java.base/jdk.internal.vm.annotation
31 * jdk.vm.ci/jdk.vm.ci.hotspot
32 * jdk.vm.ci/jdk.vm.ci.meta
33 * jdk.vm.ci/jdk.vm.ci.runtime
34 * @compile StableFieldTest.java
35 * @run main ClassFileInstaller compiler.jvmci.meta.StableFieldTest
36 * @run main/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -Xbootclasspath/a:. compiler.jvmci.meta.StableFieldTest
37 */
38
39 package compiler.jvmci.meta;
40
41 import java.lang.reflect.Field;
42 import jdk.internal.vm.annotation.Stable;
43 import jdk.vm.ci.hotspot.HotSpotResolvedJavaField;
44 import jdk.vm.ci.meta.MetaAccessProvider;
45 import jdk.vm.ci.meta.ResolvedJavaField;
46 import jdk.vm.ci.runtime.JVMCI;
47
48 public class StableFieldTest {
49
50 @Stable static int myStaticField = 5;
51 @Stable int myInstanceField = 10;
52
53 public static void main(String[] args) throws Throwable {
54 MetaAccessProvider metaAccess = JVMCI.getRuntime().getHostJVMCIBackend().getMetaAccess();
55 for (String name : new String[] {"myStaticField", "myInstanceField"}) {
56 java.lang.reflect.Field javaField = StableFieldTest.class.getDeclaredField(name);
57 HotSpotResolvedJavaField field = (HotSpotResolvedJavaField) metaAccess.lookupJavaField(javaField);
58 if (!field.isStable()) {
59 throw new AssertionError("Expected HotSpotResolvedJavaField.isStable() to return true for " + javaField);
60 }
61 }
62 }
63 }
|
21 * questions.
22 */
23
24 /**
25 * @test
26 * @bug 8151664
27 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
28 * @library /testlibrary /test/lib /
29 * @modules java.base/jdk.internal.misc
30 * @modules java.base/jdk.internal.vm.annotation
31 * jdk.vm.ci/jdk.vm.ci.hotspot
32 * jdk.vm.ci/jdk.vm.ci.meta
33 * jdk.vm.ci/jdk.vm.ci.runtime
34 * @compile StableFieldTest.java
35 * @run main ClassFileInstaller compiler.jvmci.meta.StableFieldTest
36 * @run main/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI -Xbootclasspath/a:. compiler.jvmci.meta.StableFieldTest
37 */
38
39 package compiler.jvmci.meta;
40
41 import jdk.internal.vm.annotation.Stable;
42 import jdk.vm.ci.hotspot.HotSpotResolvedJavaField;
43 import jdk.vm.ci.meta.MetaAccessProvider;
44 import jdk.vm.ci.runtime.JVMCI;
45
46 public class StableFieldTest {
47
48 @Stable static int myStaticField = 5;
49 @Stable int myInstanceField = 10;
50
51 public static void main(String[] args) throws Throwable {
52 MetaAccessProvider metaAccess = JVMCI.getRuntime().getHostJVMCIBackend().getMetaAccess();
53 for (String name : new String[] {"myStaticField", "myInstanceField"}) {
54 java.lang.reflect.Field javaField = StableFieldTest.class.getDeclaredField(name);
55 HotSpotResolvedJavaField field = (HotSpotResolvedJavaField) metaAccess.lookupJavaField(javaField);
56 if (!field.isStable()) {
57 throw new AssertionError("Expected HotSpotResolvedJavaField.isStable() to return true for " + javaField);
58 }
59 }
60 }
61 }
|