https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111763

Roger Sayle <roger at nextmovesoftware dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |roger at nextmovesoftware dot 
com
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2026-10-12

--- Comment #1 from Roger Sayle <roger at nextmovesoftware dot com> ---
Following the patch for PR 108477, GCC will now convert to the "in | 2" to "in
+ 2" in the following intermediate example.

int f3(int in) {
  in = (in & ~(unsigned long)(1|2));
  in = in | 2;
  return in;
}

so the remaining missing piece is (for match.pd) to convert (x & C1)|C2 into 
(x & C3)|C2 where C3 = C1&~C2.

Reply via email to