# HG changeset patch # User Thomas Wuerthinger # Date 1451658058 -3600 # Node ID 2afef5808af5367d6f69bda8521d068b228326b1 # Parent 9c2976c7d96af9521be36dec0873f2aa9a5b6e3a Remove NodeIterable#filterInterface. diff -r 9c2976c7d96a -r 2afef5808af5 graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodeIterable.java --- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodeIterable.java Fri Jan 01 15:16:18 2016 +0100 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodeIterable.java Fri Jan 01 15:20:58 2016 +0100 @@ -36,10 +36,6 @@ return (NodeIterable) new FilteredNodeIterable<>(this).and(NodePredicates.isA(clazz)); } - default NodeIterable filterInterface(Class iface) { - return new FilteredNodeIterable<>(this).and(NodePredicates.isAInterface(iface)); - } - default FilteredNodeIterable filter(NodePredicate predicate) { return new FilteredNodeIterable<>(this).and(predicate); } diff -r 9c2976c7d96a -r 2afef5808af5 graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StructuredGraph.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StructuredGraph.java Fri Jan 01 15:16:18 2016 +0100 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/StructuredGraph.java Fri Jan 01 15:20:58 2016 +0100 @@ -43,6 +43,7 @@ import com.oracle.graal.graph.spi.SimplifierTool; import com.oracle.graal.nodes.calc.FloatingNode; import com.oracle.graal.nodes.java.MethodCallTargetNode; +import com.oracle.graal.nodes.spi.VirtualizableAllocation; import com.oracle.graal.nodes.util.GraphUtil; /** @@ -609,4 +610,13 @@ } } } + + public final boolean hasVirtualizableAllocation() { + for (Node n : getNodes()) { + if (n instanceof VirtualizableAllocation) { + return true; + } + } + return false; + } } diff -r 9c2976c7d96a -r 2afef5808af5 graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapePhase.java --- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapePhase.java Fri Jan 01 15:16:18 2016 +0100 +++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/PartialEscapePhase.java Fri Jan 01 15:20:58 2016 +0100 @@ -77,7 +77,7 @@ @Override protected void run(StructuredGraph graph, PhaseContext context) { if (VirtualUtil.matches(graph, EscapeAnalyzeOnly.getValue())) { - if (readElimination || graph.getNodes().filterInterface(VirtualizableAllocation.class).isNotEmpty()) { + if (readElimination || graph.hasVirtualizableAllocation()) { runAnalysis(graph, context); } }