https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117339
Bug ID: 117339 Summary: Missing ccmp in the case of addition in the inner condition Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: enhancement Priority: P3 Component: tree-optimization Assignee: pinskia at gcc dot gnu.org Reporter: pinskia at gcc dot gnu.org Blocks: 94174 Target Milestone: --- This is test2 from PR 94174: ``` void doit(void); void test2(unsigned long a, unsigned long l) { if (l + 1 == 0 || a <= l + 1) doit(); } ``` Extracted out since I have an idea on how to fix it based on what I did for PR 85605 . Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94174 [Bug 94174] Missed ccmp optimizations