diff --git a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/classinitialization/EnsureClassInitializedNode.java b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/classinitialization/EnsureClassInitializedNode.java index abaf9fdebb56..f2576d2da549 100644 --- a/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/classinitialization/EnsureClassInitializedNode.java +++ b/substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/classinitialization/EnsureClassInitializedNode.java @@ -44,6 +44,7 @@ import jdk.graal.compiler.nodes.spi.CanonicalizerTool; import jdk.graal.compiler.nodes.spi.Lowerable; import jdk.graal.compiler.nodes.type.StampTool; +import jdk.graal.compiler.nodes.util.GraphUtil; import jdk.vm.ci.meta.ConstantReflectionProvider; import jdk.vm.ci.meta.ResolvedJavaType; @@ -98,8 +99,9 @@ public boolean hasSideEffect() { } public ResolvedJavaType constantTypeOrNull(ConstantReflectionProvider constantReflection) { - if (hub.isConstant()) { - return constantReflection.asJavaType(hub.asConstant()); + ValueNode value = GraphUtil.unproxify(hub); + if (value.isConstant()) { + return constantReflection.asJavaType(value.asConstant()); } else { return null; }