<div dir="ltr">I don't understand this patch at all. MOVSD wasn't even added until SSE2. I'm actually confused by the partial register update stall comment. There is no partial register stall. The MOVSD instruction takes two registers as input and merges them. That's how the instruction works. It's a normal data dependency. I don't think there's any special penalty for that. BLENDI would behave the same way.</div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature" data-smartmail="gmail_signature">~Craig</div></div>
<br><div class="gmail_quote">On Sat, Sep 9, 2017 at 2:49 AM, Jun Ryung Ju via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Fixing X86 DAG Selecting that if BLENDPD instruction has 1 mask and target architecture doesn't suffer from partial register stalls replace BLENDPD to MOVSD<br></div>
<br>______________________________<wbr>_________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>