HomePhabricator

Canonicalize splats as build_vectors (PR22283)

Description

Canonicalize splats as build_vectors (PR22283)

This is a follow-on patch to:
http://reviews.llvm.org/D7093

That patch canonicalized constant splats as build_vectors,
and this patch removes the constant check so we can canonicalize
all splats as build_vectors.

This fixes the 2nd test case in PR22283:
http://llvm.org/bugs/show_bug.cgi?id=22283

The unfortunate code duplication between SelectionDAG and DAGCombiner
is discussed in the earlier patch review. At least this patch is just
removing code...

This improves an existing x86 AVX test and changes codegen in an ARM test.

Differential Revision: http://reviews.llvm.org/D7389

Details

Committed
spatelFeb 17 2015, 8:54 AM
Differential Revision
D7389: Canonicalize splats as build_vectors (PR22283)
Parents
rL229510: Revert accidental commit.
Branches
Unknown
Tags
Unknown