# HG changeset patch # User Miguel Garcia # Date 1398787816 -7200 # Node ID bda013e0d8bb75f27560646d5d8bd8b638530046 # Parent be6685c6a8317de9510f0a2e41bcc60355a4754c [flow-sensitive] bug fix, registerTypeSwitchNode diff -r be6685c6a831 -r bda013e0d8bb graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FlowSensitiveReduction.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FlowSensitiveReduction.java Tue Apr 29 18:07:41 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/cfs/FlowSensitiveReduction.java Tue Apr 29 18:10:16 2014 +0200 @@ -197,18 +197,13 @@ // `begin` denotes the default case of the TypeSwitchNode return; } - // preferable would be trackExact, but not there yet - state.addNullness(false, loadHub.object(), begin); if (state.knownNotToConform(loadHub.object(), type)) { postponedDeopts.addDeoptAfter(begin, UnreachedCode); state.impossiblePath(); return; } - if (type.isInterface()) { - state.trackNN(loadHub.object(), begin); - } else { - state.trackIO(loadHub.object(), type, begin); - } + // it's unwarranted to assume loadHub.object() to be non-null + // it also seems unwarranted state.trackCC(loadHub.object(), type, begin); } }