< prev index next >

test/compiler/jvmci/compilerToVM/GetResolvedJavaMethodTest.java

Print this page

        

*** 50,59 **** --- 50,60 ---- import jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod; import jdk.vm.ci.hotspot.PublicMetaspaceWrapperObject; import sun.hotspot.WhiteBox; import java.lang.reflect.Field; + import java.lang.reflect.Method; public class GetResolvedJavaMethodTest { private static enum TestCase { NULL_BASE { @Override
*** 63,75 **** } }, JAVA_METHOD_BASE { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { ! HotSpotResolvedJavaMethod methodInstance ! = CompilerToVMHelper.getResolvedJavaMethodAtSlot( ! TEST_CLASS, 0); try { METASPACE_METHOD_FIELD.set(methodInstance, getPtrToMethod()); } catch (ReflectiveOperationException e) { throw new Error("TEST BUG : " + e, e); --- 64,74 ---- } }, JAVA_METHOD_BASE { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { ! HotSpotResolvedJavaMethod methodInstance = TEST_METHOD; try { METASPACE_METHOD_FIELD.set(methodInstance, getPtrToMethod()); } catch (ReflectiveOperationException e) { throw new Error("TEST BUG : " + e, e);
*** 80,92 **** }, JAVA_METHOD_BASE_IN_TWO { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { long ptr = getPtrToMethod(); ! HotSpotResolvedJavaMethod methodInstance ! = CompilerToVMHelper.getResolvedJavaMethodAtSlot( ! TEST_CLASS, 0); try { METASPACE_METHOD_FIELD.set(methodInstance, ptr / 2L); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); } --- 79,89 ---- }, JAVA_METHOD_BASE_IN_TWO { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { long ptr = getPtrToMethod(); ! HotSpotResolvedJavaMethod methodInstance = TEST_METHOD; try { METASPACE_METHOD_FIELD.set(methodInstance, ptr / 2L); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); }
*** 96,108 **** }, JAVA_METHOD_BASE_ZERO { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { long ptr = getPtrToMethod(); ! HotSpotResolvedJavaMethod methodInstance ! = CompilerToVMHelper.getResolvedJavaMethodAtSlot( ! TEST_CLASS, 0); try { METASPACE_METHOD_FIELD.set(methodInstance, 0L); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); } --- 93,103 ---- }, JAVA_METHOD_BASE_ZERO { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { long ptr = getPtrToMethod(); ! HotSpotResolvedJavaMethod methodInstance = TEST_METHOD; try { METASPACE_METHOD_FIELD.set(methodInstance, 0L); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); }
*** 116,135 **** private static final Unsafe UNSAFE = UnsafeHelper.getUnsafe(); private static final WhiteBox WB = WhiteBox.getWhiteBox(); private static final Field METASPACE_METHOD_FIELD; private static final Class<?> TEST_CLASS = GetResolvedJavaMethodTest.class; private static final long PTR; static { ! HotSpotResolvedJavaMethod method ! = CompilerToVMHelper.getResolvedJavaMethodAtSlot(TEST_CLASS, 0); try { // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethodImpl.metaspaceMethod ! METASPACE_METHOD_FIELD = method.getClass() .getDeclaredField("metaspaceMethod"); METASPACE_METHOD_FIELD.setAccessible(true); ! PTR = (long) METASPACE_METHOD_FIELD.get(method); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); } } --- 111,135 ---- private static final Unsafe UNSAFE = UnsafeHelper.getUnsafe(); private static final WhiteBox WB = WhiteBox.getWhiteBox(); private static final Field METASPACE_METHOD_FIELD; private static final Class<?> TEST_CLASS = GetResolvedJavaMethodTest.class; + private static final HotSpotResolvedJavaMethod TEST_METHOD; private static final long PTR; static { ! try { ! Method method = TEST_CLASS.getDeclaredMethod("test", TestCase.class); ! TEST_METHOD = CompilerToVMHelper.asResolvedJavaMethod(method); ! } catch (NoSuchMethodException e) { ! throw new Error("TESTBUG : " + e, e); ! } try { // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethodImpl.metaspaceMethod ! METASPACE_METHOD_FIELD = TEST_METHOD.getClass() .getDeclaredField("metaspaceMethod"); METASPACE_METHOD_FIELD.setAccessible(true); ! PTR = (long) METASPACE_METHOD_FIELD.get(TEST_METHOD); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); } }
< prev index next >