[X86] Fix wrong treatment of multi-lane blends in BUILD_VECTORtoBlendMask()
authorMichael Kuperstein <michael.m.kuperstein@intel.com>
Thu, 8 Oct 2015 08:13:02 +0000 (08:13 +0000)
committerMichael Kuperstein <michael.m.kuperstein@intel.com>
Thu, 8 Oct 2015 08:13:02 +0000 (08:13 +0000)
commit30ead638b8b7ad4d70d25ef3c70f0d6b21522784
tree10d89218e54ce32cee51885bcfc66e5cce7c06ab
parent20340541f1a016fb9c2ba7056d74614b1708495d
[X86] Fix wrong treatment of multi-lane blends in BUILD_VECTORtoBlendMask()

This fixes two separate bugs:
1) The mask for the high lane was not set correctly. That fixes PR24532.
2) The transformation should bail out if it believes it involves more than
2 lanes, as it does not currently do anything sensible in this case.

Differential Revision: http://reviews.llvm.org/D13505

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@249669 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/vector-blend.ll