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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |12.0
                 CC|                            |rguenth at gcc dot gnu.org,
                   |                            |rsandifo at gcc dot gnu.org
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2022-02-10

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  When uncond_op is expensive (there's *div amongst them) that's
definitely unwanted.  OTOH when it is cheap then combining will reduce
latency.

GIMPLE wise it's a neutral transform if uncond_op is not single-use unless
we need two v_c_es.

In the assembly it's masked vpsrld vs. masked vpblendmd, it's not entirely
clear why one should be slower than the other (but yes, blends are usually
very cheap and also not resource constrained).

Reply via email to