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

--- Comment #19 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Uroš Bizjak from comment #18)
> The only remaining question is on cvtsd2ss mem->xmm, where ICC goes with the
> same strategy as with other non-conversion SSE unops:
> 
>    vmovsd    d(%rip), %xmm0
>    vcvtsd2ss %xmm0, %xmm0, %xmm0
> 
> but with cvtss2sd:
> 
>    vxorpd    %xmm0, %xmm0, %xmm0
>    vcvtss2sd f(%rip), %xmm0, %xmm0
> 
> Do we need XOR for cvtsd2ss mem->xmm?

Yes, we do since

     vcvtss2sd f(%rip), %xmm0, %xmm0

partially updates %xmm0.

Reply via email to