hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/ConvertNode.java
--- a/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/ConvertNode.java Mon Dec 12 16:16:27 2016 +0300
+++ b/hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/calc/ConvertNode.java Wed Mar 22 13:42:45 2017 -0700
@@ -41,6 +41,14 @@
Constant reverse(Constant c, ConstantReflectionProvider constantReflection);
/**
+ * Checks whether a null check may skip the conversion. This is true if in the conversion NULL
+ * is converted to NULL and if it is the only value converted to NULL.
+ *
+ * @return whether a null check may skip the conversion
+ */
+ boolean mayNullCheckSkipConversion();
+
+ /**
* Check whether a conversion is lossless.
*
* @return true iff reverse(convert(c)) == c for all c