Mercurial > hg > graal-compiler
changeset 13916:77aa8ef31649
Truffle: canonicalize inlined invoke usages during partial evaluation
author | Andreas Woess <andreas.woess@jku.at> |
---|---|
date | Sat, 08 Feb 2014 06:38:33 +0100 |
parents | d6b340b757a2 |
children | f2345d7c52ef |
files | graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java |
diffstat | 1 files changed, 2 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java Sat Feb 08 06:33:29 2014 +0100 +++ b/graal/com.oracle.graal.truffle/src/com/oracle/graal/truffle/PartialEvaluator.java Sat Feb 08 06:38:33 2014 +0100 @@ -208,6 +208,7 @@ if (TraceTruffleExpansion.getValue()) { expansionLogger.preExpand(methodCallTargetNode, inlineGraph); } + List<Node> invokeUsages = methodCallTargetNode.invoke().asNode().usages().snapshot(); Map<Node, Node> inlined = InliningUtil.inline(methodCallTargetNode.invoke(), inlineGraph, false); if (TraceTruffleExpansion.getValue()) { expansionLogger.postExpand(inlined); @@ -216,7 +217,7 @@ int nodeCountAfter = graph.getNodeCount(); Debug.dump(graph, "After inlining %s %+d (%d)", methodCallTargetNode.targetMethod().toString(), nodeCountAfter - nodeCountBefore, nodeCountAfter); } - canonicalizer.applyIncremental(graph, phaseContext, mark); + canonicalizer.applyIncremental(graph, phaseContext, invokeUsages, mark); changed = true; } }