# HG changeset patch # User Doug Simon # Date 1424214564 -3600 # Node ID 501d2d0778c36becdfe897f6945d9c484be276ed # Parent cdf80eaa38caadab6880213fc06790265758fa78# Parent f04d2a9f2020e48c6cf90aae606b9aa2f4a065fa Merge. diff -r f04d2a9f2020 -r 501d2d0778c3 graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java Tue Feb 17 23:39:41 2015 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java Wed Feb 18 00:09:24 2015 +0100 @@ -25,7 +25,6 @@ import static com.oracle.graal.compiler.common.GraalOptions.*; import com.oracle.graal.api.meta.*; -import com.oracle.graal.api.replacements.*; import com.oracle.graal.hotspot.*; import com.oracle.graal.hotspot.bridge.*; import com.oracle.graal.hotspot.phases.*; @@ -124,13 +123,9 @@ }); config.setInlineInvokePlugin(new InlineInvokePlugin() { public ResolvedJavaMethod getInlinedMethod(GraphBuilderContext builder, ResolvedJavaMethod method, ValueNode[] args, JavaType returnType, int depth) { - if (builder.parsingReplacement()) { - if (method.getAnnotation(MethodSubstitution.class) != null) { - ResolvedJavaMethod subst = replacements.getMethodSubstitutionMethod(method); - if (subst != null) { - return subst; - } - } + ResolvedJavaMethod subst = replacements.getMethodSubstitutionMethod(method); + if (subst != null) { + return subst; } if (method.hasBytecodes() && method.getCode().length <= TrivialInliningSize.getValue() && depth < InlineDuringParsingMaxDepth.getValue()) { return method; diff -r f04d2a9f2020 -r 501d2d0778c3 graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java --- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Tue Feb 17 23:39:41 2015 +0100 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Wed Feb 18 00:09:24 2015 +0100 @@ -894,7 +894,7 @@ InvocationPlugin plugin = graphBuilderConfig.getInvocationPlugins().lookupInvocation(targetMethod); if (plugin != null) { int beforeStackSize = frameState.stackSize; - boolean needsNullCheck = !targetMethod.isStatic() && !StampTool.isPointerNonNull(args[0].stamp()); + boolean needsNullCheck = !targetMethod.isStatic() && args[0].getKind() == Kind.Object && !StampTool.isPointerNonNull(args[0].stamp()); int nodeCount = currentGraph.getNodeCount(); Mark mark = needsNullCheck ? currentGraph.getMark() : null; if (InvocationPlugin.execute(this, plugin, args)) { diff -r f04d2a9f2020 -r 501d2d0778c3 src/share/vm/classfile/classFileParser.cpp --- a/src/share/vm/classfile/classFileParser.cpp Tue Feb 17 23:39:41 2015 +0100 +++ b/src/share/vm/classfile/classFileParser.cpp Wed Feb 18 00:09:24 2015 +0100 @@ -4147,9 +4147,10 @@ tty->print("[Loaded %s from %s]\n", this_klass->external_name(), InstanceKlass::cast(class_loader->klass())->external_name()); } - // uncomment and use -verbose:class to investigate - // why each class is loaded - JavaThread::current()->print_stack_on(tty); + if (WizardMode) { + // useful when investigating why a class is loaded + JavaThread::current()->print_stack_on(tty); + } } if (TraceClassResolution) {