]> granicus.if.org Git - llvm/commit
[X86] Make getSetCCResultType return vXi1 for any vXi32/vXi64 vector over 512 bits...
authorCraig Topper <craig.topper@intel.com>
Mon, 27 Nov 2017 17:51:55 +0000 (17:51 +0000)
committerCraig Topper <craig.topper@intel.com>
Mon, 27 Nov 2017 17:51:55 +0000 (17:51 +0000)
commitbe0b1c9108ff2b7533c7bf0311801c22ccbbd66b
tree4a9a3e2b480ae5866ae6d10afaf2665414398991
parent7090837bc75f1852f58cd4bad3d049d0a869801b
[X86] Make getSetCCResultType return vXi1 for any vXi32/vXi64 vector over 512 bits long when AVX512 is enabled.

Similar for vXi16/vXi8 with BWI.

Any vector larger than 512 bits will be split to 512 bits during legalization. But without this we will fold sexts with them before that making it difficult to recover leading to scalarization.

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