/openjdk10/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/ |
H A D | SignExtendNode.java | 53 public SignExtendNode(ValueNode input, int inputBits, int resultBits) { argument 54 super(TYPE, ArithmeticOpTable::getSignExtend, ArithmeticOpTable::getNarrow, inputBits, resultBits, input); 61 public static ValueNode create(ValueNode input, int inputBits, int resultBits) { argument 63 ValueNode synonym = findSynonym(signExtend, input, inputBits, resultBits, signExtend.foldStamp(inputBits, resultBits, input.stamp())); 67 return canonical(null, input, inputBits, resultBits); 85 private static ValueNode canonical(SignExtendNode self, ValueNode forValue, int inputBits, int resultBits) { argument 102 if ((inputStamp.upMask() & (1L << (inputBits - 1))) == 0L) { 105 return ZeroExtendNode.create(forValue, inputBits, resultBits); 109 return self != null ? self : new SignExtendNode(forValue, inputBits, resultBit [all...] |
H A D | IntegerConvertNode.java | 56 protected final int inputBits; field in class:IntegerConvertNode 62 protected IntegerConvertNode(NodeClass<? extends IntegerConvertNode<OP, REV>> c, SerializableIntegerConvertFunction<OP> getOp, SerializableIntegerConvertFunction<REV> getReverseOp, int inputBits, argument 64 super(c, getOp.apply(ArithmeticOpTable.forStamp(input.stamp())).foldStamp(inputBits, resultBits, input.stamp()), input); 67 this.inputBits = inputBits; 69 assert ((PrimitiveStamp) input.stamp()).getBits() == inputBits; 73 return inputBits; 103 return getArithmeticOp().foldStamp(inputBits, resultBits, newStamp); 108 ValueNode synonym = findSynonym(getOp(forValue), forValue, inputBits, resultBits, stamp()); 115 protected static <T> ValueNode findSynonym(IntegerConvertOp<T> operation, ValueNode value, int inputBits, in argument [all...] |
H A D | ZeroExtendNode.java | 57 public ZeroExtendNode(ValueNode input, int inputBits, int resultBits) { argument 58 super(TYPE, ArithmeticOpTable::getZeroExtend, ArithmeticOpTable::getNarrow, inputBits, resultBits, input); 65 public static ValueNode create(ValueNode input, int inputBits, int resultBits) { argument 67 ValueNode synonym = findSynonym(signExtend, input, inputBits, resultBits, signExtend.foldStamp(inputBits, resultBits, input.stamp())); 71 return canonical(null, input, inputBits, resultBits); 102 private static ValueNode canonical(ZeroExtendNode zeroExtendNode, ValueNode forValue, int inputBits, int resultBits) { argument 136 self = new ZeroExtendNode(forValue, inputBits, resultBits);
|
H A D | NarrowNode.java | 55 public NarrowNode(ValueNode input, int inputBits, int resultBits) { argument 56 super(TYPE, ArithmeticOpTable::getNarrow, ArithmeticOpTable::getSignExtend, inputBits, resultBits, input); 63 public static ValueNode create(ValueNode input, int inputBits, int resultBits) { argument 65 ValueNode synonym = findSynonym(signExtend, input, inputBits, resultBits, signExtend.foldStamp(inputBits, resultBits, input.stamp())); 69 return new NarrowNode(input, inputBits, resultBits);
|
/openjdk10/hotspot/src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.code/src/jdk/vm/ci/code/ |
H A D | CodeUtil.java | 113 * @param inputBits the bit width of the input value 114 * @return a signed long with the same value as the signed {@code inputBits}-bit number 117 public static long signExtend(long value, int inputBits) { argument 118 if (inputBits < 64) { 119 if ((value >>> (inputBits - 1) & 1) == 1) { 120 return value | (-1L << inputBits); 122 return value & ~(-1L << inputBits); 133 * @param inputBits the bit width of the input value 134 * @return an unsigned long with the same value as the unsigned {@code inputBits}-bit number 137 public static long zeroExtend(long value, int inputBits) { argument 153 convert(long value, int inputBits, boolean unsigned) argument [all...] |
/openjdk10/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/type/ |
H A D | IntegerStamp.java | 1381 public Constant foldConstant(int inputBits, int resultBits, Constant c) { 1383 return JavaConstant.forPrimitiveInt(resultBits, CodeUtil.zeroExtend(value.asLong(), inputBits)); 1387 public Stamp foldStamp(int inputBits, int resultBits, Stamp input) { 1389 assert inputBits == stamp.getBits(); 1390 assert inputBits <= resultBits; 1392 if (inputBits == resultBits) { 1400 long downMask = CodeUtil.zeroExtend(stamp.downMask(), inputBits); 1401 long upMask = CodeUtil.zeroExtend(stamp.upMask(), inputBits); 1408 public Stamp invertStamp(int inputBits, int resultBits, Stamp outStamp) { 1411 return StampFactory.forInteger(inputBits) [all...] |
H A D | ArithmeticOpTable.java | 779 public Stamp invertStamp(int inputBits, int resultBits, Stamp outStamp) { argument 788 public abstract Constant foldConstant(int inputBits, int resultBits, Constant value); argument 790 public abstract Stamp foldStamp(int inputBits, int resultBits, Stamp stamp); argument 799 public abstract Stamp invertStamp(int inputBits, int resultBits, Stamp outStamp); argument
|
/openjdk10/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.sparc/src/org/graalvm/compiler/core/sparc/ |
H A D | SPARCArithmeticLIRGenerator.java | 579 int inputBits = inputValue.getPlatformKind().getSizeInBytes() * 8; 580 return emitNarrow(emitSignExtend(inputValue, inputBits, XWORD.getSizeInBits()), inputBits); 615 int inputBits = inputValue.getPlatformKind().getSizeInBytes() * 8; 616 return emitNarrow(emitZeroExtend(inputValue, inputBits, XWORD.getSizeInBits()), inputBits);
|