diff options
author | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2014-03-02 09:19:44 +0000 |
---|---|---|
committer | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2014-03-02 09:19:44 +0000 |
commit | 9737e3886b4ea0cfb1a42c395d63cbd3b9302a9e (patch) | |
tree | 03a72182703a064033eb27d4a91888392fa2088d /llvm/lib/Target/X86/X86InstrAVX512.td | |
parent | 03b4e3a8cb2aee0481b2f8d0f00e4dcf28142b14 (diff) | |
download | bcm5719-llvm-9737e3886b4ea0cfb1a42c395d63cbd3b9302a9e.tar.gz bcm5719-llvm-9737e3886b4ea0cfb1a42c395d63cbd3b9302a9e.zip |
AVX-512: Fixed extract_vector_elt for v8i1 vector
llvm-svn: 202624
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrAVX512.td')
-rw-r--r-- | llvm/lib/Target/X86/X86InstrAVX512.td | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86InstrAVX512.td b/llvm/lib/Target/X86/X86InstrAVX512.td index 328d74f8d7a..825ea09cfea 100644 --- a/llvm/lib/Target/X86/X86InstrAVX512.td +++ b/llvm/lib/Target/X86/X86InstrAVX512.td @@ -1213,6 +1213,11 @@ def : Pat<(v16i1 (insert_subvector undef, (v8i1 VK8:$src), (iPTR 0))), def : Pat<(v8i1 (extract_subvector (v16i1 VK16:$src), (iPTR 8))), (v8i1 (COPY_TO_REGCLASS (KSHIFTRWri VK16:$src, (i8 8)), VK8))>; +def : Pat<(v8i1 (X86vshli VK8:$src, (i8 imm:$imm))), + (v8i1 (COPY_TO_REGCLASS (KSHIFTLWri (COPY_TO_REGCLASS VK8:$src, VK16), (I8Imm $imm)), VK8))>; + +def : Pat<(v8i1 (X86vsrli VK8:$src, (i8 imm:$imm))), + (v8i1 (COPY_TO_REGCLASS (KSHIFTRWri (COPY_TO_REGCLASS VK8:$src, VK16), (I8Imm $imm)), VK8))>; //===----------------------------------------------------------------------===// // AVX-512 - Aligned and unaligned load and store // |