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

--- Comment #5 from Uroš Bizjak <ubizjak at gmail dot com> ---
(In reply to Andrew Pinski from comment #2)
> So the difference between good1 and bad1 at the gimple level is the order of
> operands of the bit_ior:
> good1:
> 
>   ov_8 = _13 != 0;
>   _9 = x_2(D) != 0;
>   _10 = ov_8 | _9;
>   if (_10 != 0)
> 
> bad1:
>   ov_7 = _13 != 0;
>   _1 = x_8(D) != 0;
>   _2 = _1 | ov_7;
>   if (_2 != 0)

Couldn't optimizers rewrite boolean OR to bitwise OR in the above code?

Reply via email to