https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110992
Xi Ruoyao <xry111 at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |xry111 at gcc dot gnu.org
See Also| |https://gcc.gnu.org/bugzill
| |a/show_bug.cgi?id=111126
--- Comment #14 from Xi Ruoyao <xry111 at gcc dot gnu.org> ---
(In reply to Jeffrey A. Law from comment #13)
> So like the other bug involving multiplies against objects with a known
> range [0,1], we should very seriously consider turning the multiply into a
> conditional move. ie x * b where b is known to have the range [0,1] we can
> turn that into
>
> dest = b ? x : 0
>
> Some processors that don't have generalized conditional moves do have
> conditional zero instructions. ie, zicond on RISC-V.
It's PR111126.