https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111542
--- Comment #7 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #2)
> Note IOR with != 0 has the same issue.
> Full testcase:
> ```
> _Bool f_and(int x,int y)
> {
> _Bool a = x == 0;
> _Bool b = y == 0;
> _Bool t = a & b;
> return t & !a;
> }
>
>
> _Bool f_or(int x,int y)
> {
> _Bool a = x != 0;
> _Bool b = y != 0;
> _Bool t = a | b;
> return t | !a;
> }
> ```
f_or is caught since the fix for PR 111543 (r14-4241-g1bf0cd05cb3088).