[PATCH] D48963: [X86][SSE] Combine v16i8 SHL by constants to multiplies

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 5 04:35:59 PDT 2018


RKSimon created this revision.
RKSimon added reviewers: spatel, craig.topper, efriedma, lebedev.ri, andreadb.

Pre-AVX512 (which can perform a quick extend/shift/truncate), extending to 2 v8i16 for the PMULLW and then truncating  is more performant than relying on the generic PBLENDVB vXi8 shift path and uses a similar amount of mask constant pool data.


Repository:
  rL LLVM

https://reviews.llvm.org/D48963

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/vector-mul.ll
  test/CodeGen/X86/vector-shift-shl-128.ll
  test/CodeGen/X86/vector-shift-shl-256.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D48963.154200.patch
Type: text/x-patch
Size: 19501 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180705/790a994c/attachment.bin>


More information about the llvm-commits mailing list