[PATCH] [X86][SSE] Improved (v)insertps shuffle matching

Simon Pilgrim llvm-dev at redking.me.uk
Thu Jan 8 10:18:01 PST 2015


Hi chandlerc, andreadb, spatel,

In the current code we only attempt to match against insertps if we have exactly one element from the second input vector, irrespective of how much of the shuffle result is zeroable.

This patch checks to see if there is a single non-zeroable element from either input that requires insertion. It also supports matching of cases where only one of the inputs need to be referenced.

We also split (v)insertps shuffle matching off into a new lowerVectorShuffleAsInsertPS function.

REPOSITORY
  rL LLVM

http://reviews.llvm.org/D6879

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/combine-or.ll
  test/CodeGen/X86/masked_memop.ll
  test/CodeGen/X86/vector-shuffle-combining.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6879.17902.patch
Type: text/x-patch
Size: 9980 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150108/8a244512/attachment.bin>


More information about the llvm-commits mailing list