[X86] Use ANY_EXTEND instead of SIGN_EXTEND in the AVX2 and later path for legalizing...
authorCraig Topper <craig.topper@intel.com>
Fri, 16 Nov 2018 01:16:59 +0000 (01:16 +0000)
committerCraig Topper <craig.topper@intel.com>
Fri, 16 Nov 2018 01:16:59 +0000 (01:16 +0000)
commit5802b82b408dbe784ca4d09817a78924fa7ab4c3
tree1c67ad0ebe1422e928e8686a6a87631027503133
parent1acafd863f53810c21cf73603f767314992aa27b
[X86] Use ANY_EXTEND instead of SIGN_EXTEND in the AVX2 and later path for legalizing vXi8 multiply.

We aren't going to use the upper bits of the multiply result that the extend would effect. So we don't need a specific type of extend.

This makes some reduction test cases shorter because we were previously trying to sign_extend a truncate which we can't eliminate.

llvm-svn: 347011
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/avx2-arith.ll
llvm/test/CodeGen/X86/combine-mul.ll
llvm/test/CodeGen/X86/pmul.ll
llvm/test/CodeGen/X86/vector-mul.ll
llvm/test/CodeGen/X86/vector-reduce-mul.ll
llvm/test/CodeGen/X86/vector-shift-shl-128.ll