[X86] Add test case to show missed opportunity to use a single pmuludq to implement...
authorCraig Topper <craig.topper@intel.com>
Mon, 19 Nov 2018 22:04:12 +0000 (22:04 +0000)
committerCraig Topper <craig.topper@intel.com>
Mon, 19 Nov 2018 22:04:12 +0000 (22:04 +0000)
commitdbe34736345a280c3836ba86775f49da522783df
tree0e012a0778943786f60146c1b61637a21dfd7ef6
parent700b1ef54daff2b99cb52c56db682721ef1094c8
[X86] Add test case to show missed opportunity to use a single pmuludq to implement a multiply when a zext lives in another basic block.

This can occur when one of the inputs to the multiply is loop invariant. Though my test cases just use two basic blocks with an unconditional jump which we won't merge until after isel in the codegen pipeline.

For scalars, I believe SelectionDAGBuilder can add an AssertZExt to pass knowledge across basic blocks but its explicitly disabled for vectors.

llvm-svn: 347266
llvm/test/CodeGen/X86/vector-mul.ll