projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
d3d03fe
)
SLP Vectorizer: do not search for store-chains that are wider than the vector-registe...
author
Nadav Rotem
<nrotem@apple.com>
Fri, 21 Jun 2013 04:18:13 +0000
(
04:18
+0000)
committer
Nadav Rotem
<nrotem@apple.com>
Fri, 21 Jun 2013 04:18:13 +0000
(
04:18
+0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184527
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/Transforms/Vectorize/VecUtils.cpp
patch
|
blob
|
history
diff --git
a/lib/Transforms/Vectorize/VecUtils.cpp
b/lib/Transforms/Vectorize/VecUtils.cpp
index 16189860420de1c0c4ba399f8ab870f5aecdd246..3db4adf95c8ee4144a9180ed1c674a732cc01f80 100644
(file)
--- a/
lib/Transforms/Vectorize/VecUtils.cpp
+++ b/
lib/Transforms/Vectorize/VecUtils.cpp
@@
-141,9
+141,11
@@
bool BoUpSLP::vectorizeStoreChain(ArrayRef<Value *> Chain, int CostThreshold) {
}
}
- if (Changed)
- return
true
;
+ if (Changed
|| ChainLen > VF
)
+ return
Changed
;
+ // Handle short chains. This helps us catch types such as <3 x float> that
+ // are smaller than vector size.
int Cost = getTreeCost(Chain);
if (Cost < CostThreshold) {
DEBUG(dbgs() << "SLP: Found store chain cost = " << Cost