On 9/7/26 8:43 AM, [email protected] wrote:
From: Kyrylo Tkachov <[email protected]> noce_try_shifted_store_flag tests COMMON for null after it has already returned unless CODE was set, and only the two arms that set COMMON set CODE. noce_try_store_flag_mask decides which arm is the zero one with an assignment inside a disjunction, which leaves REVERSEP true on the path that matches nothing. Test for the two forms separately. noce_convert_multiple_sets calls set_used_flags on the two condition operands after calling it on the condition, which already walks into them. That was their only use, so the locals go too. No functional change. gcc/ChangeLog: * ifcvt.cc (noce_try_shifted_store_flag): Drop the vacuous null test on common. (noce_try_store_flag_mask): Match the two forms without assigning inside the condition. (noce_convert_multiple_sets): Drop the redundant set_used_flags calls and the locals they were the only use of.
OK jeff
