[PATCH] D18189: [X86][XOP] Support for VPPERM byte shuffle instruction

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 23 10:26:54 PDT 2016


RKSimon added a comment.

In http://reviews.llvm.org/D18189#381588, @spatel wrote:

> In http://reviews.llvm.org/D18189#379265, @RKSimon wrote:
>
> > ping - I'm primarily interested in whether anybody has any concerns about the changes to X86MCInstLower.cpp - I realise not many people are up on the workings of XOP ;-)
>
>
> I'm not a good reviewer for XOP or AVX512... :)
>  But can this patch be split up as:
>
> 1. Add support for VPPERM without changing getShuffleComment()
> 2. Enhance getShuffleComment() to support VPPERM (and VPERMT2?)


Yes thats pretty trivial - I was really trying to avoid overloading the list with patches about instruction sets that not many people are interested in ;-) The split is very clean already:

1 - Add support for VPPERM:
X86ISelLowering.h
X86ISelLowering.cpp
X86InstrFragmentsSIMD.td
X86InstrXOP.td
X86IntrinsicsInfo.h

2 - Add support for constant pool decoding of 2 input shuffles:
X86MCInstLower.cpp

3 - Enable VPPERM constant pool decoding:
X86ShuffleDecodeConstantPool.h
X86ShuffleDecodeConstantPool.cpp
vector-shuffle-combining-xop.ll

Whether we merge 2 + 3 depends on if we want immediate test cases for (2) - without them all we show is that it doesn't break existing unary shuffle decodes.


Repository:
  rL LLVM

http://reviews.llvm.org/D18189





More information about the llvm-commits mailing list