llvm-6502/lib/Transforms/Vectorize
Arnold Schwaighofer af57bdf7d6 SLPVectorizer: Sort inputs to commutative binary operations
Sort the operands of the other entries in the current vectorization root
according to the first entry's operands opcodes.

%conv0 = uitofp ...
%load0 = load float ...

= fmul %conv0, %load0
= fmul %load0, %conv1
= fmul %load0, %conv2

Make sure that we recursively vectorize <%conv0, %conv1, %conv2> and <%load0,
%load0, %load0>.

This makes it more likely to obtain vectorizable trees. We have to be careful
when we sort that we don't destroy 'good' existing ordering implied by source
order.

radar://15080067

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191977 91177308-0d34-0410-b5e6-96231b3b80d8
2013-10-04 20:39:16 +00:00
..
BBVectorize.cpp Fix code duplication 2013-10-01 00:01:14 +00:00
CMakeLists.txt SLP Vectorizer: Implement multi-block slp-vectorization. 2013-06-22 21:34:10 +00:00
LLVMBuild.txt
LoopVectorize.cpp Don't use runtime bounds check between address spaces. 2013-10-02 22:38:17 +00:00
Makefile
SLPVectorizer.cpp SLPVectorizer: Sort inputs to commutative binary operations 2013-10-04 20:39:16 +00:00
Vectorize.cpp This patch breaks up Wrap.h so that it does not have to include all of 2013-05-01 20:59:00 +00:00