diff options
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 3dd0296c1ec..6a7cc202ab3 100644 --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -13691,17 +13691,11 @@ bool DAGCombiner::MergeConsecutiveStores(StoreSDNode *St) { continue; } - bool Merged = MergeStoresOfConstantsOrVecElts( - StoreNodes, MemVT, NumStoresToMerge, false, true, false); - if (!Merged) { - StoreNodes.erase(StoreNodes.begin(), - StoreNodes.begin() + NumStoresToMerge); - continue; - } - // Remove merged stores for next iteration. + RV |= MergeStoresOfConstantsOrVecElts(StoreNodes, MemVT, NumStoresToMerge, + false, true, false); + StoreNodes.erase(StoreNodes.begin(), StoreNodes.begin() + NumStoresToMerge); - RV = true; continue; } |

