--- old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java 2018-12-11 11:12:54.000000000 -0800 +++ new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java 2018-12-11 11:12:54.000000000 -0800 @@ -34,8 +34,6 @@ import java.lang.invoke.MutableCallSite; import java.lang.invoke.VolatileCallSite; import java.lang.reflect.Array; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; import java.math.BigInteger; import java.util.zip.CRC32; @@ -45,7 +43,6 @@ import org.graalvm.compiler.core.common.type.ObjectStamp; import org.graalvm.compiler.core.common.type.StampFactory; import org.graalvm.compiler.core.common.type.TypeReference; -import org.graalvm.compiler.debug.GraalError; import org.graalvm.compiler.hotspot.GraalHotSpotVMConfig; import org.graalvm.compiler.hotspot.nodes.CurrentJavaThreadNode; import org.graalvm.compiler.hotspot.replacements.AESCryptSubstitutions; @@ -66,7 +63,6 @@ import org.graalvm.compiler.hotspot.replacements.SHA5Substitutions; import org.graalvm.compiler.hotspot.replacements.SHASubstitutions; import org.graalvm.compiler.hotspot.replacements.ThreadSubstitutions; -import org.graalvm.compiler.replacements.arraycopy.ArrayCopyNode; import org.graalvm.compiler.hotspot.word.HotSpotWordTypes; import org.graalvm.compiler.nodes.ConstantNode; import org.graalvm.compiler.nodes.NamedLocationIdentity; @@ -95,6 +91,7 @@ import org.graalvm.compiler.replacements.NodeIntrinsificationProvider; import org.graalvm.compiler.replacements.ReplacementsImpl; import org.graalvm.compiler.replacements.StandardGraphBuilderPlugins; +import org.graalvm.compiler.replacements.arraycopy.ArrayCopyNode; import org.graalvm.compiler.serviceprovider.GraalServices; import org.graalvm.compiler.word.WordOperationPlugin; import org.graalvm.compiler.word.WordTypes; @@ -458,18 +455,8 @@ if (config.useMultiplyToLenIntrinsic()) { assert config.multiplyToLen != 0L; if (Java8OrEarlier) { - try { - Method m = BigInteger.class.getDeclaredMethod("multiplyToLen", int[].class, int.class, int[].class, int.class, int[].class); - if (Modifier.isStatic(m.getModifiers())) { - r.registerMethodSubstitution(BigIntegerSubstitutions.class, "multiplyToLen", "multiplyToLenStatic", int[].class, int.class, int[].class, int.class, - int[].class); - } else { - r.registerMethodSubstitution(BigIntegerSubstitutions.class, "multiplyToLen", Receiver.class, int[].class, int.class, int[].class, int.class, - int[].class); - } - } catch (NoSuchMethodException | SecurityException e) { - throw new GraalError(e); - } + r.registerMethodSubstitution(BigIntegerSubstitutions.class, "multiplyToLen", "multiplyToLenStatic", int[].class, int.class, int[].class, int.class, + int[].class); } else { r.registerMethodSubstitution(BigIntegerSubstitutions.class, "implMultiplyToLen", "multiplyToLenStatic", int[].class, int.class, int[].class, int.class, int[].class);