[DAGCombiner] Remove reduceBuildVecConvertToConvertBuildVec and rely on the vectorize...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 2 Nov 2018 11:06:18 +0000 (11:06 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 2 Nov 2018 11:06:18 +0000 (11:06 +0000)
commitcdcbeb4997a85895266b688b6077c48fbe1c4085
tree438fa676cd6db4c0b6f1ca30190f431433cacd63
parentdfc56b43fadf5c4f84cdb8706f29ccf1ba68e5f1
[DAGCombiner] Remove reduceBuildVecConvertToConvertBuildVec and rely on the vectorizers instead (PR35732)

reduceBuildVecConvertToConvertBuildVec vectorizes int2float in the DAGCombiner, which means that even if the LV/SLP has decided to keep scalar code using the cost models, this will override this.

While there are cases where vectorization is necessary in the DAG (mainly due to legalization artefacts), I don't think this is the case here, we should assume that the vectorizers know what they are doing.

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

llvm-svn: 345964
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/ARM/vdup.ll
llvm/test/CodeGen/Mips/cconv/vector.ll
llvm/test/CodeGen/X86/2009-02-26-MachineLICMBug.ll
llvm/test/CodeGen/X86/cvtv2f32.ll