[PATCH] [X86][SSE] Keep 4i32 vector insertions in integer domain on pre-SSE4.1 targets

Simon Pilgrim llvm-dev at redking.me.uk
Thu Dec 4 06:42:40 PST 2014


Hi chandlerc, andreadb,

4i32 shuffles for single insertions into zero vectors lowers to X86vzmovl was using movss - causing domain switch stalls. 

This patch fixes this by using movq( punpckldq $SRC, ZERO) ) instead.

Follow up to D6458 which dealt with SSE4.1 targets.

http://reviews.llvm.org/D6526

Files:
  lib/Target/X86/X86InstrSSE.td
  test/CodeGen/X86/uint_to_fp-2.ll
  test/CodeGen/X86/vector-shuffle-128-v4.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6526.16925.patch
Type: text/x-patch
Size: 6161 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141204/9dea868d/attachment.bin>


More information about the llvm-commits mailing list