--- old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/calc/FloatConvert.java 2017-11-03 23:55:49.447896474 -0700 +++ new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/calc/FloatConvert.java 2017-11-03 23:55:48.955874456 -0700 @@ -25,21 +25,23 @@ import org.graalvm.compiler.debug.GraalError; public enum FloatConvert { - F2I(FloatConvertCategory.FloatingPointToInteger), - D2I(FloatConvertCategory.FloatingPointToInteger), - F2L(FloatConvertCategory.FloatingPointToInteger), - D2L(FloatConvertCategory.FloatingPointToInteger), - I2F(FloatConvertCategory.IntegerToFloatingPoint), - L2F(FloatConvertCategory.IntegerToFloatingPoint), - D2F(FloatConvertCategory.FloatingPointToFloatingPoint), - I2D(FloatConvertCategory.IntegerToFloatingPoint), - L2D(FloatConvertCategory.IntegerToFloatingPoint), - F2D(FloatConvertCategory.FloatingPointToFloatingPoint); + F2I(FloatConvertCategory.FloatingPointToInteger, 32), + D2I(FloatConvertCategory.FloatingPointToInteger, 64), + F2L(FloatConvertCategory.FloatingPointToInteger, 32), + D2L(FloatConvertCategory.FloatingPointToInteger, 64), + I2F(FloatConvertCategory.IntegerToFloatingPoint, 32), + L2F(FloatConvertCategory.IntegerToFloatingPoint, 64), + D2F(FloatConvertCategory.FloatingPointToFloatingPoint, 64), + I2D(FloatConvertCategory.IntegerToFloatingPoint, 32), + L2D(FloatConvertCategory.IntegerToFloatingPoint, 64), + F2D(FloatConvertCategory.FloatingPointToFloatingPoint, 32); - private FloatConvertCategory category; + private final FloatConvertCategory category; + private final int inputBits; - FloatConvert(FloatConvertCategory category) { + FloatConvert(FloatConvertCategory category, int inputBits) { this.category = category; + this.inputBits = inputBits; } public FloatConvertCategory getCategory() { @@ -72,4 +74,8 @@ throw GraalError.shouldNotReachHere(); } } + + public int getInputBits() { + return inputBits; + } }