diff options
author | Arnold Schwaighofer <aschwaighofer@apple.com> | 2013-09-20 21:18:20 +0000 |
---|---|---|
committer | Arnold Schwaighofer <aschwaighofer@apple.com> | 2013-09-20 21:18:20 +0000 |
commit | 47249631122d85fc85be4fb56330d9901482c017 (patch) | |
tree | 6a7e2f58e742ef23ae69d2110e73442538458896 /llvm/docs/CommandGuide/llvm-diff.rst | |
parent | 2c93cb2a6fa853f8d367a1f52b559ac4d0c759ca (diff) | |
download | bcm5719-llvm-47249631122d85fc85be4fb56330d9901482c017.tar.gz bcm5719-llvm-47249631122d85fc85be4fb56330d9901482c017.zip |
SLPVectorizer: Handle more horizontal reductions (disabled)
Match reductions starting at binary operation feeding into a phi. The code
handles trees like
r += v1 + v2 + v3 ...
and
r += v1
r += v2
...
and
r *= v1 + v2 + ...
We currently only handle associative operations (add, fadd fast).
The code can now also handle reductions feeding into stores.
a[i] = v1 + v2 + v3 + ...
The code is currently disabled behind the flag "-slp-vectorize-hor". The cost
model for most architectures is not there yet.
I found one opportunity of a horizontal reduction feeding a phi in TSVC
(LoopRerolling-flt) and there are several opportunities where reductions feed
into stores.
radar://14607682
llvm-svn: 191108
Diffstat (limited to 'llvm/docs/CommandGuide/llvm-diff.rst')
0 files changed, 0 insertions, 0 deletions