https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114894
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Note we should catch this too:
```
int fmul2(unsigned a, int b)
{
int c = a * b;
int d = a != 0;
return c & -d;
}
```
Which is more complex ...
