[SLPVectorizer] Improved support of partial tree vectorization.
authorAlexey Bataev <a.bataev@hotmail.com>
Tue, 29 Nov 2016 08:21:14 +0000 (08:21 +0000)
committerAlexey Bataev <a.bataev@hotmail.com>
Tue, 29 Nov 2016 08:21:14 +0000 (08:21 +0000)
commit4fa063ebc978fd01904796ca28372091f381d69a
tree2b389c22b0826db07b766a56231fc234d14633be
parent84569e6caaf5af80459d8c4f4da511fdcba91a89
[SLPVectorizer] Improved support of partial tree vectorization.

Currently SLP vectorizer tries to vectorize a binary operation and dies
immediately after unsuccessful the first unsuccessfull attempt. Patch
tries to improve the situation, trying to vectorize all binary
operations of all children nodes in the binop tree.

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

llvm-svn: 288115
llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll