diff options
| author | Arnold Schwaighofer <aschwaighofer@apple.com> | 2014-05-04 17:10:15 +0000 |
|---|---|---|
| committer | Arnold Schwaighofer <aschwaighofer@apple.com> | 2014-05-04 17:10:15 +0000 |
| commit | cd566c423acc5a10426bebe807d81d21e0688bb8 (patch) | |
| tree | b8732e6212aa3fcaf95d245ec27c1a49dd3c42c7 /llvm/lib/Transforms/Scalar | |
| parent | c72473d87b51717fee63a9c4059f2d75dbfb5382 (diff) | |
| download | bcm5719-llvm-cd566c423acc5a10426bebe807d81d21e0688bb8.tar.gz bcm5719-llvm-cd566c423acc5a10426bebe807d81d21e0688bb8.zip | |
SLPVectorizer: Bring back the insertelement patch (r205965) with fixes
When can't assume a vectorized tree is rooted in an instruction. The IRBuilder
could have constant folded it. When we rebuild the build_vector (the series of
InsertElement instructions) use the last original InsertElement instruction. The
vectorized tree root is guaranteed to be before it.
Also, we can't assume that the n-th InsertElement inserts the n-th element into
a vector.
This reverts r207746 which reverted the revert of the revert of r205018 or so.
Fixes the test case in PR19621.
llvm-svn: 207939
Diffstat (limited to 'llvm/lib/Transforms/Scalar')
0 files changed, 0 insertions, 0 deletions

