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

--- Comment #4 from Marc Glisse <glisse at gcc dot gnu.org> ---
I thought we might already simplify (u >> 32) != 0 to u >= cst (other possible
forms are u != (uint64_t)(uint32_t)u, u & cst != 0, etc, I am trying to think
which one looks most canonical).

I expect in interesting cases the code will use z = (uint64_t)x * y twice, once
to check for overflow, and once as (uint32_t)z to get the actual result (or
there is a separate x*y and we want to CSE it with the overflow version).

Reply via email to