]> granicus.if.org Git - llvm/commit
[X86][AVX] SimplifyDemandedVectorElts - combine PERMPD(x) -> EXTRACTF128(X)
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 27 Jun 2019 11:16:03 +0000 (11:16 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 27 Jun 2019 11:16:03 +0000 (11:16 +0000)
commitd56a9b86741b0182b49427532a894eaeae92d2d1
tree9af800b9e93afc7cf0b469aaef56f1b32c97abe2
parent2cb558589f001230b679e6d5137b2cb7090689c4
[X86][AVX] SimplifyDemandedVectorElts - combine PERMPD(x) -> EXTRACTF128(X)

If we only use the bottom lane, see if we can simplify this to extract_subvector - which is always at least as quick as PERMPD/PERMQ.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@364518 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/var-permute-128.ll
test/CodeGen/X86/vector-shuffle-256-v16.ll
test/CodeGen/X86/vector-shuffle-512-v32.ll
test/CodeGen/X86/vector-shuffle-v48.ll