# HG changeset patch # User Doug Simon # Date 1424208113 -3600 # Node ID cdf80eaa38caadab6880213fc06790265758fa78 # Parent 18e21237807b1db5c5beb4130e20dde6a0857a4f# Parent ee96561afbd3fad064f50912e5bfe5215024d50c Merge. diff -r ee96561afbd3 -r cdf80eaa38ca 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 18:05:57 2015 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java Tue Feb 17 22:21:53 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 ee96561afbd3 -r cdf80eaa38ca 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 18:05:57 2015 +0100 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/GraphBuilderPhase.java Tue Feb 17 22:21:53 2015 +0100 @@ -896,7 +896,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 ee96561afbd3 -r cdf80eaa38ca src/share/vm/classfile/classFileParser.cpp --- a/src/share/vm/classfile/classFileParser.cpp Tue Feb 17 18:05:57 2015 +0100 +++ b/src/share/vm/classfile/classFileParser.cpp Tue Feb 17 22:21:53 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) {