# HG changeset patch # User Christos Kotselidis # Date 1384029033 -3600 # Node ID 9a56121f285bee7f781077285e7c1c4a58d59142 # Parent 1619e69e4ea34d23d4b225e10b1f84132d91470f Add missing cases for CheckCast usages in NodeIntrisification when BoxingSubstitutions are disabled diff -r 1619e69e4ea3 -r 9a56121f285b graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java --- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java Sat Nov 09 21:29:44 2013 +0100 +++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/NodeIntrinsificationPhase.java Sat Nov 09 21:30:33 2013 +0100 @@ -350,6 +350,13 @@ unbox.replaceAtUsages(intrinsifiedNode); graph.removeFloating(unbox); Debug.log("%s: Removed an UnboxNode", Debug.contextSnapshot(JavaMethod.class)); + } else if (usage instanceof UnsafeStoreNode) { + UnsafeStoreNode store = (UnsafeStoreNode) usage; + store.replaceFirstInput(input, intrinsifiedNode); + } else if (usage instanceof LoadFieldNode) { + LoadFieldNode load = (LoadFieldNode) usage; + load.replaceAtUsages(intrinsifiedNode); + graph.removeFixed(load); } else if (usage instanceof MethodCallTargetNode) { MethodCallTargetNode checkCastCallTarget = (MethodCallTargetNode) usage; assert checkCastCallTarget.targetMethod().getAnnotation(NodeIntrinsic.class) != null : "checkcast at " + sourceLocation(input) +