On Wed, 25 Nov 2020, Jakub Jelinek wrote:
> Hi!
>
> The following patch adds some improvements for __builtin_mul_overflow
> expansion.
> One optimization is for the u1 * u2 -> sr case, as documented we normally
> do:
> u1 * u2 -> sr
> res = (S) (u1 * u2)
> ovf = res < 0 || ma
Hi!
The following patch adds some improvements for __builtin_mul_overflow
expansion.
One optimization is for the u1 * u2 -> sr case, as documented we normally
do:
u1 * u2 -> sr
res = (S) (u1 * u2)
ovf = res < 0 || main_ovf (true)
where main_ovf (true) stands for jump on unsign