Mercurial > hg > graal-compiler
changeset 23241:6186cfd47d3c
Further simplifications of node predicates.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Fri, 01 Jan 2016 19:09:36 +0100 |
parents | 6b75e88713cc |
children | 706aa729f311 |
files | graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeBitMap.java graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodeIterable.java graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicates.java |
diffstat | 3 files changed, 8 insertions(+), 56 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeBitMap.java Fri Jan 01 18:50:05 2016 +0100 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/NodeBitMap.java Fri Jan 01 19:09:36 2016 +0100 @@ -220,11 +220,6 @@ } @Override - public NodeIterable<Node> distinct() { - return this; - } - - @Override public int count() { int count = 0; for (long l : bits) {
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodeIterable.java Fri Jan 01 18:50:05 2016 +0100 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodeIterable.java Fri Jan 01 19:09:36 2016 +0100 @@ -40,10 +40,6 @@ return new FilteredNodeIterable<>(this).and(predicate); } - default NodeIterable<T> distinct() { - return new FilteredNodeIterable<>(this).distinct(); - } - default List<T> snapshot() { ArrayList<T> list = new ArrayList<>(); snapshotTo(list); @@ -83,6 +79,13 @@ } default boolean contains(T node) { - return this.filter(NodePredicates.equals(node)).isNotEmpty(); + Iterator<T> iterator = iterator(); + while (iterator.hasNext()) { + T next = iterator.next(); + if (next == node) { + return true; + } + } + return false; } }
--- a/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicates.java Fri Jan 01 18:50:05 2016 +0100 +++ b/graal/com.oracle.graal.graph/src/com/oracle/graal/graph/iterators/NodePredicates.java Fri Jan 01 19:09:36 2016 +0100 @@ -42,10 +42,6 @@ return IS_NULL; } - public static NodePredicate equals(Node n) { - return new EqualsPredicate(n); - } - public static NegativeTypePredicate isNotA(Class<? extends Node> clazz) { return new NegativeTypePredicate(clazz); } @@ -54,16 +50,6 @@ return new PositiveTypePredicate(clazz); } - public static NodePredicate isAInterface(Class<?> iface) { - assert iface.isInterface(); - return new PositiveTypePredicate(iface); - } - - public static NodePredicate isNotAInterface(Class<?> iface) { - assert iface.isInterface(); - return new NegativeTypePredicate(iface); - } - static final class TautologyPredicate implements NodePredicate { @Override @@ -130,38 +116,6 @@ } } - static final class EqualsPredicate implements NodePredicate { - - private final Node u; - - EqualsPredicate(Node u) { - this.u = u; - } - - @Override - public boolean apply(Node n) { - return u == n; - } - } - - static final class NotEqualsPredicate implements NodePredicate { - - private final Node u; - - NotEqualsPredicate(Node u) { - this.u = u; - } - - @Override - public boolean apply(Node n) { - return u != n; - } - - public NodePredicate negate() { - return new EqualsPredicate(u); - } - } - public static final class PositiveTypePredicate implements NodePredicate { private final Class<?> type;