mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-17 17:06:59 +00:00
SLP: When searching for vectorization opportunities scan the blocks in post-order because we grow chains upwards.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185041 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1e1c694dcd
commit
70d695801a
@ -1377,8 +1377,10 @@ struct SLPVectorizer : public FunctionPass {
|
||||
// he store instructions.
|
||||
FuncSLP R(&F, SE, DL, TTI, AA, LI, DT);
|
||||
|
||||
for (Function::iterator it = F.begin(), e = F.end(); it != e; ++it) {
|
||||
BasicBlock *BB = it;
|
||||
// Scan the blocks in the function in post order.
|
||||
for (po_iterator<BasicBlock*> it = po_begin(&F.getEntryBlock()),
|
||||
e = po_end(&F.getEntryBlock()); it != e; ++it) {
|
||||
BasicBlock *BB = *it;
|
||||
|
||||
// Vectorize trees that end at reductions.
|
||||
Changed |= vectorizeChainsInBlock(BB, R);
|
||||
|
Loading…
Reference in New Issue
Block a user