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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |enhancement

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.

Note this also should be optimized:
```
_Bool foo1(_Bool x, _Bool y, unsigned a)
{
  _Bool c = a != 0;
    return x & !c | (y | c);
}
```

Down to:
```
_Bool foo1_(_Bool x, _Bool y, unsigned a)
{
  _Bool c = a != 0;
  return x | (y | c);
}
```

Reply via email to