17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 /**
25 * @test
26 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
27 * @library ../../../../../
28 * @modules jdk.vm.ci/jdk.vm.ci.meta
29 * jdk.vm.ci/jdk.vm.ci.runtime
30 * java.base/jdk.internal.misc
31 * @build jdk.vm.ci.runtime.test.TestMetaAccessProvider
32 * @run junit/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI jdk.vm.ci.runtime.test.TestMetaAccessProvider
33 */
34
35 package jdk.vm.ci.runtime.test;
36
37 import static jdk.vm.ci.meta.MetaUtil.toInternalName;
38 import static org.junit.Assert.assertEquals;
39 import static org.junit.Assert.assertNotNull;
40 import static org.junit.Assert.assertNull;
41 import static org.junit.Assert.assertTrue;
42
43 import java.lang.reflect.Field;
44 import java.lang.reflect.Method;
45 import jdk.vm.ci.meta.DeoptimizationAction;
46 import jdk.vm.ci.meta.DeoptimizationReason;
47
48 import jdk.vm.ci.meta.JavaConstant;
49 import jdk.vm.ci.meta.JavaKind;
50 import jdk.vm.ci.meta.MetaAccessProvider;
51 import jdk.vm.ci.meta.ResolvedJavaField;
52 import jdk.vm.ci.meta.ResolvedJavaMethod;
53 import jdk.vm.ci.meta.ResolvedJavaType;
54 import jdk.vm.ci.meta.Signature;
55
56 import org.junit.Test;
57
58 /**
59 * Tests for {@link MetaAccessProvider}.
60 */
61 public class TestMetaAccessProvider extends TypeUniverse {
62 private static final DeoptimizationAction DEOPT_ACTION = DeoptimizationAction.InvalidateRecompile;
63 private static final DeoptimizationReason DEOPT_REASON = DeoptimizationReason.Aliasing;
64 private static final int INT_23BITS_SET = 0x7FFFFF;
65 private static final int[] DEBUG_IDS = new int[]{0, 1, 42, INT_23BITS_SET};
66 private static final int[] VALID_ENCODED_VALUES = new int[]{
67 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[0]).asInt(),
68 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[1]).asInt(),
69 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[2]).asInt(),
70 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[3]).asInt()
71 };
72
73 @Test
74 public void lookupJavaTypeTest() {
75 for (Class<?> c : classes) {
76 ResolvedJavaType type = metaAccess.lookupJavaType(c);
77 assertNotNull(c.toString(), type);
|
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 /**
25 * @test
26 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64")
27 * @library ../../../../../
28 * @modules jdk.vm.ci/jdk.vm.ci.meta
29 * jdk.vm.ci/jdk.vm.ci.runtime
30 * java.base/jdk.internal.misc
31 * @build jdk.vm.ci.runtime.test.TestMetaAccessProvider
32 * @run junit/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI jdk.vm.ci.runtime.test.TestMetaAccessProvider
33 */
34
35 package jdk.vm.ci.runtime.test;
36
37 import jdk.vm.ci.meta.DeoptimizationAction;
38 import jdk.vm.ci.meta.DeoptimizationReason;
39 import jdk.vm.ci.meta.JavaConstant;
40 import jdk.vm.ci.meta.JavaKind;
41 import jdk.vm.ci.meta.MetaAccessProvider;
42 import jdk.vm.ci.meta.ResolvedJavaField;
43 import jdk.vm.ci.meta.ResolvedJavaMethod;
44 import jdk.vm.ci.meta.ResolvedJavaType;
45 import jdk.vm.ci.meta.Signature;
46 import org.junit.Test;
47
48 import java.lang.reflect.Field;
49 import java.lang.reflect.Method;
50
51 import static jdk.vm.ci.meta.MetaUtil.toInternalName;
52 import static org.junit.Assert.assertEquals;
53 import static org.junit.Assert.assertNotNull;
54 import static org.junit.Assert.assertNull;
55 import static org.junit.Assert.assertTrue;
56
57 /**
58 * Tests for {@link MetaAccessProvider}.
59 */
60 public class TestMetaAccessProvider extends TypeUniverse {
61 private static final DeoptimizationAction DEOPT_ACTION = DeoptimizationAction.InvalidateRecompile;
62 private static final DeoptimizationReason DEOPT_REASON = DeoptimizationReason.Aliasing;
63 private static final int INT_23BITS_SET = 0x7FFFFF;
64 private static final int[] DEBUG_IDS = new int[]{0, 1, 42, INT_23BITS_SET};
65 private static final int[] VALID_ENCODED_VALUES = new int[]{
66 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[0]).asInt(),
67 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[1]).asInt(),
68 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[2]).asInt(),
69 metaAccess.encodeDeoptActionAndReason(DEOPT_ACTION, DEOPT_REASON, DEBUG_IDS[3]).asInt()
70 };
71
72 @Test
73 public void lookupJavaTypeTest() {
74 for (Class<?> c : classes) {
75 ResolvedJavaType type = metaAccess.lookupJavaType(c);
76 assertNotNull(c.toString(), type);
|