https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113131
Bug ID: 113131 Summary: `((A&B)^C)|B` should be simplified to `C | B` Product: gcc Version: 14.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 Target Milestone: --- Testcase: ``` int f(int A, int B, int C) { return ((A&B)^C)|B; // C|B } ``` This should be simplified down to `C | B` removing the reference to `A` even.