[X86] Teach lower1BitShuffle to match right shifts with upper zero elements on types...
authorCraig Topper <craig.topper@intel.com>
Mon, 19 Aug 2019 05:45:39 +0000 (05:45 +0000)
committerCraig Topper <craig.topper@intel.com>
Mon, 19 Aug 2019 05:45:39 +0000 (05:45 +0000)
commitebb7ddc6330b28b8c7e53d4c68d3684c127a41c1
tree9db03b3417059390173ab5a7fd07a94a53a8d146
parentdee9546b8f8386223769e96becc2e24ddcc39de7
[X86] Teach lower1BitShuffle to match right shifts with upper zero elements on types that don't natively support KSHIFT.

We can support these by widening to a supported type,
then shifting all the way to the left and then
back to the right to ensure that we shift in zeroes.

llvm-svn: 369232
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/kshift.ll