On 5/7/21 9:03 PM, Andrew MacLeod wrote:
+ else
+{
+ range_on_entry (r, bb, name);
+ // See if there was a deref in this block, if applicable
+ if (!cfun->can_throw_non_call_exceptions && r.varying_p () &&
+ m_cache.m_non_null.non_null_deref_p (name, bb))
+ r
Range on exit was not ding the right thing when a basic block contained
no statements other than a PHI node.
Rather than returning the value of the PHI, it was instead asking for
range-on-entry for the phi, which would trigger a walk back to the top
of the CFG looking for the definition. When