[X86] combineMulToPMADDWD - don't bitcast the source ops before splitting to ensure...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 10 Jun 2022 12:29:04 +0000 (13:29 +0100)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 10 Jun 2022 12:44:49 +0000 (13:44 +0100)
commit5acbb2dda26217bb6e551af501d30637010b3a97
tree1343652b2cb12ccd17dec42d165175cb674b9eaa
parent12ccdd67aaf56bd05ab3375d81c58dfd5a2db02c
[X86] combineMulToPMADDWD - don't bitcast the source ops before splitting to ensure we split the build vectors early

Fixes a regression on D127115 - splitting was creating extract_subvector(bitcast(build_vector())) patterns which prevented the build vectors being split before being bitcast to vXi16 types, resulting in various issues with further folding of the (now legal) build vectors
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/slow-pmulld.ll