[X86] Allow pack instructions to be used for 512->256 truncates when -mprefer-vector...
authorCraig Topper <craig.topper@intel.com>
Wed, 7 Aug 2019 21:16:10 +0000 (21:16 +0000)
committerCraig Topper <craig.topper@intel.com>
Wed, 7 Aug 2019 21:16:10 +0000 (21:16 +0000)
commit7f7ef0208b57a4d253cd8b07053460f40ad7cbc8
treeb05475a04ead756451dbe459b9b9d518663260b1
parentd47be4da5ab2dd68e89701b2f3c9b355ab95ef36
[X86] Allow pack instructions to be used for 512->256 truncates when -mprefer-vector-width=256 is causing 512-bit vectors to be split

If we're splitting the 512-bit vector anyway and we have zero/sign bits, then we might as well use pack instructions to concat and truncate at once.

Differential Revision: https://reviews.llvm.org/D65904

llvm-svn: 368210
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/min-legal-vector-width.ll