24 /* 25 * @test 26 * @bug 8136421 27 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64") 28 * @library / /testlibrary /test/lib 29 * @library ../common/patches 30 * @modules java.base/jdk.internal.misc 31 * @modules java.base/jdk.internal.org.objectweb.asm 32 * java.base/jdk.internal.org.objectweb.asm.tree 33 * jdk.vm.ci/jdk.vm.ci.hotspot 34 * jdk.vm.ci/jdk.vm.ci.code 35 * jdk.vm.ci/jdk.vm.ci.meta 36 * @build jdk.vm.ci/jdk.vm.ci.hotspot.CompilerToVMHelper 37 * @build compiler.jvmci.compilerToVM.GetSymbolTest 38 * @run main/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI 39 * compiler.jvmci.compilerToVM.GetSymbolTest 40 */ 41 42 package compiler.jvmci.compilerToVM; 43 44 import jdk.vm.ci.hotspot.CompilerToVMHelper; 45 import compiler.jvmci.common.CTVMUtilities; 46 import compiler.jvmci.common.testcases.SingleImplementer; 47 import java.lang.reflect.Field; 48 import java.lang.reflect.Member; 49 import java.lang.reflect.Method; 50 import java.util.ArrayList; 51 import java.util.List; 52 import java.util.function.Function; 53 import java.util.stream.Collectors; 54 import java.util.stream.Stream; 55 import jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod; 56 import jdk.vm.ci.meta.ConstantPool; 57 import jdk.test.lib.Utils; 58 59 public class GetSymbolTest { 60 private static final int CONSTANT_POOL_UTF8_TAG = 1; // see jvms, section 4.4 61 62 private static final Function<Member[], List<String>> NAMES = members -> 63 Stream.of(members) 64 .map(Member::getName) 65 .collect(Collectors.toList()); 66 67 public static void main(String[] args) { 68 new GetSymbolTest().test(SingleImplementer.class); 69 } 70 71 private void test(Class<?> aClass) { 72 Utils.ensureClassIsLoaded(aClass); 73 Method method; 74 try { 75 method = aClass.getDeclaredMethod("nonInterfaceMethod"); 76 } catch (NoSuchMethodException e) { 77 throw new Error("TEST BUG: can't find test method", e); | 24 /* 25 * @test 26 * @bug 8136421 27 * @requires (vm.simpleArch == "x64" | vm.simpleArch == "sparcv9" | vm.simpleArch == "aarch64") 28 * @library / /testlibrary /test/lib 29 * @library ../common/patches 30 * @modules java.base/jdk.internal.misc 31 * @modules java.base/jdk.internal.org.objectweb.asm 32 * java.base/jdk.internal.org.objectweb.asm.tree 33 * jdk.vm.ci/jdk.vm.ci.hotspot 34 * jdk.vm.ci/jdk.vm.ci.code 35 * jdk.vm.ci/jdk.vm.ci.meta 36 * @build jdk.vm.ci/jdk.vm.ci.hotspot.CompilerToVMHelper 37 * @build compiler.jvmci.compilerToVM.GetSymbolTest 38 * @run main/othervm -XX:+UnlockExperimentalVMOptions -XX:+EnableJVMCI 39 * compiler.jvmci.compilerToVM.GetSymbolTest 40 */ 41 42 package compiler.jvmci.compilerToVM; 43 44 import compiler.jvmci.common.CTVMUtilities; 45 import compiler.jvmci.common.testcases.SingleImplementer; 46 import jdk.test.lib.Utils; 47 import jdk.vm.ci.hotspot.CompilerToVMHelper; 48 import jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod; 49 import jdk.vm.ci.meta.ConstantPool; 50 51 import java.lang.reflect.Field; 52 import java.lang.reflect.Member; 53 import java.lang.reflect.Method; 54 import java.util.ArrayList; 55 import java.util.List; 56 import java.util.function.Function; 57 import java.util.stream.Collectors; 58 import java.util.stream.Stream; 59 60 public class GetSymbolTest { 61 private static final int CONSTANT_POOL_UTF8_TAG = 1; // see jvms, section 4.4 62 63 private static final Function<Member[], List<String>> NAMES = members -> 64 Stream.of(members) 65 .map(Member::getName) 66 .collect(Collectors.toList()); 67 68 public static void main(String[] args) { 69 new GetSymbolTest().test(SingleImplementer.class); 70 } 71 72 private void test(Class<?> aClass) { 73 Utils.ensureClassIsLoaded(aClass); 74 Method method; 75 try { 76 method = aClass.getDeclaredMethod("nonInterfaceMethod"); 77 } catch (NoSuchMethodException e) { 78 throw new Error("TEST BUG: can't find test method", e); |