[PATCH] AVX-512 vector shuffle lowering

Elena Demikhovsky elena.demikhovsky at intel.com
Wed Jun 24 01:58:21 PDT 2015


Hi chandlerc, qcolombet, andreadb,

Implemented lowering for 512-bit vector shuffles. 
Vector types: <8 x 64>, <16 x 32>, <32 x 16> float and integer. 

AVX-512 provides vector shuffle instructions with variable mask (mask in register) for one and two sources (VPERM and VPERMT2).
Use them instead of splitting vectors.

All new shuffle instructions are for integer and FP data types.

More optimizations in the next patch.

REPOSITORY
  rL LLVM

http://reviews.llvm.org/D10683

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/vector-shuffle-512-v16.ll
  test/CodeGen/X86/vector-shuffle-512-v32.ll
  test/CodeGen/X86/vector-shuffle-512-v8.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D10683.28322.patch
Type: text/x-patch
Size: 89122 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150624/2b730b9d/attachment.bin>


More information about the llvm-commits mailing list