[X86] Only pass v64i8/v32i16 as v16i32 on non-avx512bw targets if the v16i32 type...
authorCraig Topper <craig.topper@intel.com>
Tue, 12 Nov 2019 20:26:18 +0000 (12:26 -0800)
committerCraig Topper <craig.topper@intel.com>
Tue, 12 Nov 2019 22:56:01 +0000 (14:56 -0800)
commit0f04ffc073deeb1738f1d9bd5c8161d13fe42592
tree29c31dcb20b890745e6d5b93a9cfd7fa2d54afff
parent38c356176b5370164578c1d08e984964354b7189
[X86] Only pass v64i8/v32i16 as v16i32 on non-avx512bw targets if the v16i32 type won't be split by prefer-vector-width=256

Otherwise just let the v64i8/v32i16 types be split to v32i8/v16i16.

In reality this shouldn't happen because it means we have a 512-bit
vector argument, but min-legal-vector-width says a value less than
512. But a 512-bit argument should have been factored into the
preferred vector width.
llvm/lib/Target/X86/X86ISelLowering.cpp