src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/IntegerBelowNode.java
changeset 48861 47f19ff9903c
parent 48190 25cfedf27edc
child 50330 2cbc42a5764b
equal deleted inserted replaced
48860:5bce1b7e7800 48861:47f19ff9903c
    20  * or visit www.oracle.com if you need additional information or have any
    20  * or visit www.oracle.com if you need additional information or have any
    21  * questions.
    21  * questions.
    22  */
    22  */
    23 package org.graalvm.compiler.nodes.calc;
    23 package org.graalvm.compiler.nodes.calc;
    24 
    24 
    25 import jdk.vm.ci.meta.ConstantReflectionProvider;
       
    26 import jdk.vm.ci.meta.MetaAccessProvider;
       
    27 import org.graalvm.compiler.core.common.NumUtil;
    25 import org.graalvm.compiler.core.common.NumUtil;
    28 import org.graalvm.compiler.core.common.calc.Condition;
    26 import org.graalvm.compiler.core.common.calc.CanonicalCondition;
    29 import org.graalvm.compiler.core.common.type.IntegerStamp;
    27 import org.graalvm.compiler.core.common.type.IntegerStamp;
    30 import org.graalvm.compiler.core.common.type.StampFactory;
    28 import org.graalvm.compiler.core.common.type.StampFactory;
    31 import org.graalvm.compiler.graph.Node;
    29 import org.graalvm.compiler.graph.Node;
    32 import org.graalvm.compiler.graph.NodeClass;
    30 import org.graalvm.compiler.graph.NodeClass;
    33 import org.graalvm.compiler.graph.spi.CanonicalizerTool;
    31 import org.graalvm.compiler.graph.spi.CanonicalizerTool;
    34 import org.graalvm.compiler.nodeinfo.NodeInfo;
    32 import org.graalvm.compiler.nodeinfo.NodeInfo;
    35 import org.graalvm.compiler.nodes.LogicNode;
    33 import org.graalvm.compiler.nodes.LogicNode;
    36 import org.graalvm.compiler.nodes.NodeView;
    34 import org.graalvm.compiler.nodes.NodeView;
    37 import org.graalvm.compiler.nodes.ValueNode;
    35 import org.graalvm.compiler.nodes.ValueNode;
       
    36 import org.graalvm.compiler.options.OptionValues;
    38 
    37 
    39 import jdk.vm.ci.code.CodeUtil;
    38 import jdk.vm.ci.code.CodeUtil;
    40 import org.graalvm.compiler.options.OptionValues;
    39 import jdk.vm.ci.meta.ConstantReflectionProvider;
       
    40 import jdk.vm.ci.meta.MetaAccessProvider;
    41 
    41 
    42 @NodeInfo(shortName = "|<|")
    42 @NodeInfo(shortName = "|<|")
    43 public final class IntegerBelowNode extends IntegerLowerThanNode {
    43 public final class IntegerBelowNode extends IntegerLowerThanNode {
    44     public static final NodeClass<IntegerBelowNode> TYPE = NodeClass.create(IntegerBelowNode.class);
    44     public static final NodeClass<IntegerBelowNode> TYPE = NodeClass.create(IntegerBelowNode.class);
    45     private static final BelowOp OP = new BelowOp();
    45     private static final BelowOp OP = new BelowOp();
   124         protected IntegerStamp forInteger(int bits, long min, long max) {
   124         protected IntegerStamp forInteger(int bits, long min, long max) {
   125             return StampFactory.forUnsignedInteger(bits, min, max);
   125             return StampFactory.forUnsignedInteger(bits, min, max);
   126         }
   126         }
   127 
   127 
   128         @Override
   128         @Override
   129         protected Condition getCondition() {
   129         protected CanonicalCondition getCondition() {
   130             return Condition.BT;
   130             return CanonicalCondition.BT;
   131         }
   131         }
   132 
   132 
   133         @Override
   133         @Override
   134         protected IntegerLowerThanNode createNode(ValueNode x, ValueNode y) {
   134         protected IntegerLowerThanNode createNode(ValueNode x, ValueNode y) {
   135             return new IntegerBelowNode(x, y);
   135             return new IntegerBelowNode(x, y);