[Bug middle-end/110726] [14 Regression] wrong code on llvm-16 around 'a |= a == 0'

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jul 18 19:39:56 GMT 2023


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

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
/* a | (a == b)  -->  a | (b^1) (boolean version of the above). */
(simplify
 (bit_ior:c @0 (nop_convert? (eq:c @0 @1)))
 (bit_ior @0 (bit_xor @1 { build_one_cst (type); })))


So I guess the issue is eq on generic has an integer type rather than boolean
type ...


More information about the Gcc-bugs mailing list