[Bug middle-end/109845] Addition overflow/carry flag unnecessarily put in a temporary register
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Dec 29 09:54:36 GMT 2025
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?
More information about the Gcc-bugs
mailing list