Mercurial > hg > truffle
changeset 8421:24608582da70
method substitutions are now stored with a MethodSubstitution.class key value in the compiler storage of the original (i.e., substituted) method
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Thu, 21 Mar 2013 12:23:37 +0100 |
parents | 5d3fa6f949fb |
children | 1571adaf302b |
files | graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java make/build-graal.xml mx/projects |
diffstat | 5 files changed, 8 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java Thu Mar 21 12:14:09 2013 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java Thu Mar 21 12:23:37 2013 +0100 @@ -29,10 +29,10 @@ import com.oracle.graal.api.code.*; import com.oracle.graal.api.meta.*; +import com.oracle.graal.api.replacements.*; import com.oracle.graal.compiler.*; import com.oracle.graal.debug.*; import com.oracle.graal.debug.internal.*; -import com.oracle.graal.graph.*; import com.oracle.graal.hotspot.meta.*; import com.oracle.graal.nodes.*; import com.oracle.graal.phases.*; @@ -138,7 +138,7 @@ @Override public CompilationResult call() throws Exception { graalRuntime.evictDeoptedGraphs(); - StructuredGraph graph = (StructuredGraph) method.getCompilerStorage().get(Graph.class); + StructuredGraph graph = (StructuredGraph) method.getCompilerStorage().get(MethodSubstitution.class); if (graph == null || entryBCI != INVOCATION_ENTRY_BCI) { graph = new StructuredGraph(method, entryBCI); } else {
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Thu Mar 21 12:14:09 2013 +0100 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Thu Mar 21 12:23:37 2013 +0100 @@ -31,6 +31,7 @@ import com.oracle.graal.api.meta.*; import com.oracle.graal.api.meta.JavaTypeProfile.ProfiledType; import com.oracle.graal.api.meta.ResolvedJavaType.Representation; +import com.oracle.graal.api.replacements.*; import com.oracle.graal.debug.*; import com.oracle.graal.graph.*; import com.oracle.graal.nodes.*; @@ -1181,7 +1182,7 @@ } public static StructuredGraph getIntrinsicGraph(ResolvedJavaMethod target) { - return (StructuredGraph) target.getCompilerStorage().get(Graph.class); + return (StructuredGraph) target.getCompilerStorage().get(MethodSubstitution.class); } public static Class<? extends FixedWithNextNode> getMacroNodeClass(ResolvedJavaMethod target) {
--- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Thu Mar 21 12:14:09 2013 +0100 +++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsInstaller.java Thu Mar 21 12:23:37 2013 +0100 @@ -164,7 +164,7 @@ try { Debug.log("substitution: " + MetaUtil.format("%H.%n(%p)", original) + " --> " + MetaUtil.format("%H.%n(%p)", substitute)); StructuredGraph graph = makeGraph(substitute, inliningPolicy(substitute)); - Object oldValue = original.getCompilerStorage().put(Graph.class, graph); + Object oldValue = original.getCompilerStorage().put(MethodSubstitution.class, graph); assert oldValue == null; } finally { substitute = null;
--- a/make/build-graal.xml Thu Mar 21 12:14:09 2013 +0100 +++ b/make/build-graal.xml Thu Mar 21 12:23:37 2013 +0100 @@ -38,6 +38,7 @@ <src path="${src.dir}/com.oracle.graal.debug"/> <src path="${src.dir}/com.oracle.graal.nodes"/> <src path="${src.dir}/com.oracle.graal.phases"/> + <src path="${src.dir}/com.oracle.graal.api.replacements"/> <src path="${src.dir}/com.oracle.graal.phases.common"/> <src path="${src.dir}/com.oracle.graal.virtual"/> <src path="${src.dir}/com.oracle.graal.loop"/> @@ -48,7 +49,6 @@ <src path="${src.dir}/com.oracle.graal.bytecode"/> <src path="${src.dir}/com.oracle.graal.java"/> <src path="${src.dir}/com.oracle.graal.word"/> - <src path="${src.dir}/com.oracle.graal.api.replacements"/> <src path="${src.dir}/com.oracle.graal.replacements"/> <src path="${src.dir}/com.oracle.graal.api.runtime"/> <src path="${src.dir}/com.oracle.graal.printer"/>
--- a/mx/projects Thu Mar 21 12:14:09 2013 +0100 +++ b/mx/projects Thu Mar 21 12:23:37 2013 +0100 @@ -192,7 +192,7 @@ # graal.replacements project@com.oracle.graal.replacements@subDir=graal project@com.oracle.graal.replacements@sourceDirs=src -project@com.oracle.graal.replacements@dependencies=com.oracle.graal.compiler,com.oracle.graal.java,com.oracle.graal.word,com.oracle.graal.api.replacements +project@com.oracle.graal.replacements@dependencies=com.oracle.graal.compiler,com.oracle.graal.java,com.oracle.graal.word project@com.oracle.graal.replacements@checkstyle=com.oracle.graal.graph project@com.oracle.graal.replacements@javaCompliance=1.7 @@ -227,7 +227,7 @@ # graal.phases.common project@com.oracle.graal.phases.common@subDir=graal project@com.oracle.graal.phases.common@sourceDirs=src -project@com.oracle.graal.phases.common@dependencies=com.oracle.graal.phases +project@com.oracle.graal.phases.common@dependencies=com.oracle.graal.phases,com.oracle.graal.api.replacements project@com.oracle.graal.phases.common@checkstyle=com.oracle.graal.graph project@com.oracle.graal.phases.common@javaCompliance=1.7