Search in sources :

Example 1 with ZeroExtend

use of org.graalvm.compiler.core.common.type.ArithmeticOpTable.IntegerConvertOp.ZeroExtend in project graal by oracle.

the class ZeroExtendNode method create.

public static ValueNode create(ValueNode input, int inputBits, int resultBits, NodeView view, boolean alwaysPositive) {
    IntegerConvertOp<ZeroExtend> signExtend = ArithmeticOpTable.forStamp(input.stamp(view)).getZeroExtend();
    ValueNode synonym = findSynonym(signExtend, input, inputBits, resultBits, signExtend.foldStamp(inputBits, resultBits, input.stamp(view)));
    if (synonym != null) {
        return synonym;
    }
    return canonical(null, input, inputBits, resultBits, view, alwaysPositive);
}
Also used : ZeroExtend(org.graalvm.compiler.core.common.type.ArithmeticOpTable.IntegerConvertOp.ZeroExtend) ValueNode(org.graalvm.compiler.nodes.ValueNode)

Aggregations

ZeroExtend (org.graalvm.compiler.core.common.type.ArithmeticOpTable.IntegerConvertOp.ZeroExtend)1 ValueNode (org.graalvm.compiler.nodes.ValueNode)1