summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJun Bum Lim <junbuml@codeaurora.org>2016-07-27 17:25:20 +0000
committerJun Bum Lim <junbuml@codeaurora.org>2016-07-27 17:25:20 +0000
commita033139cd4b77c0778c1c94d40db52c335653813 (patch)
tree16663f8d1e239558d93f736d72f81e8e78473a52
parent6e70f4e1714434b7150ba28e8a8e88f51e03a582 (diff)
downloadbcm5719-llvm-a033139cd4b77c0778c1c94d40db52c335653813.tar.gz
bcm5719-llvm-a033139cd4b77c0778c1c94d40db52c335653813.zip
[DSE] Fix bug in updating MadeChange flag
Summary: The MadeChange flag should be ORed to keep the previous result. Reviewers: mcrosier Subscribers: mcrosier, llvm-commits Differential Revision: https://reviews.llvm.org/D22873 llvm-svn: 276894
-rw-r--r--llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
index 463fc0456d3..c43dd818e8a 100644
--- a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
+++ b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
@@ -933,7 +933,7 @@ static bool removePartiallyOverlappedStores(AliasAnalysis *AA,
int64_t EarlierSize = int64_t(Loc.Size);
GetPointerBaseWithConstantOffset(Ptr, EarlierStart, DL);
OverlapIntervalsTy &IntervalMap = OI.second;
- Changed =
+ Changed |=
tryToShortenEnd(EarlierWrite, IntervalMap, EarlierStart, EarlierSize);
if (IntervalMap.empty())
continue;
@@ -1079,7 +1079,7 @@ static bool eliminateDeadStores(BasicBlock &BB, AliasAnalysis *AA,
int64_t EarlierSize = DepLoc.Size;
int64_t LaterSize = Loc.Size;
bool IsOverwriteEnd = (OR == OverwriteEnd);
- MadeChange = tryToShorten(DepWrite, DepWriteOffset, EarlierSize,
+ MadeChange |= tryToShorten(DepWrite, DepWriteOffset, EarlierSize,
InstWriteOffset, LaterSize, IsOverwriteEnd);
}
}
OpenPOWER on IntegriCloud