--- old/test/compiler/jvmci/compilerToVM/GetResolvedJavaMethodTest.java 2016-09-05 18:31:23.000000000 +0200 +++ new/test/compiler/jvmci/compilerToVM/GetResolvedJavaMethodTest.java 2016-09-05 18:31:23.000000000 +0200 @@ -52,6 +52,7 @@ import sun.hotspot.WhiteBox; import java.lang.reflect.Field; +import java.lang.reflect.Method; public class GetResolvedJavaMethodTest { private static enum TestCase { @@ -65,9 +66,7 @@ JAVA_METHOD_BASE { @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { - HotSpotResolvedJavaMethod methodInstance - = CompilerToVMHelper.getResolvedJavaMethodAtSlot( - TEST_CLASS, 0); + HotSpotResolvedJavaMethod methodInstance = TEST_METHOD; try { METASPACE_METHOD_FIELD.set(methodInstance, getPtrToMethod()); @@ -82,9 +81,7 @@ @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { long ptr = getPtrToMethod(); - HotSpotResolvedJavaMethod methodInstance - = CompilerToVMHelper.getResolvedJavaMethodAtSlot( - TEST_CLASS, 0); + HotSpotResolvedJavaMethod methodInstance = TEST_METHOD; try { METASPACE_METHOD_FIELD.set(methodInstance, ptr / 2L); } catch (ReflectiveOperationException e) { @@ -98,9 +95,7 @@ @Override HotSpotResolvedJavaMethod getResolvedJavaMethod() { long ptr = getPtrToMethod(); - HotSpotResolvedJavaMethod methodInstance - = CompilerToVMHelper.getResolvedJavaMethodAtSlot( - TEST_CLASS, 0); + HotSpotResolvedJavaMethod methodInstance = TEST_METHOD; try { METASPACE_METHOD_FIELD.set(methodInstance, 0L); } catch (ReflectiveOperationException e) { @@ -118,16 +113,21 @@ 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 { - HotSpotResolvedJavaMethod method - = CompilerToVMHelper.getResolvedJavaMethodAtSlot(TEST_CLASS, 0); + 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 = method.getClass() + METASPACE_METHOD_FIELD = TEST_METHOD.getClass() .getDeclaredField("metaspaceMethod"); METASPACE_METHOD_FIELD.setAccessible(true); - PTR = (long) METASPACE_METHOD_FIELD.get(method); + PTR = (long) METASPACE_METHOD_FIELD.get(TEST_METHOD); } catch (ReflectiveOperationException e) { throw new Error("TESTBUG : " + e, e); }