summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-10-22 06:47:35 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-10-22 06:47:35 +0000
commit943f4f41f2551a33fcce2cee2373ed6d178ebbdd (patch)
treedb432bafd0cb13791128b7dc7124f0b3a9dbdbc2 /llvm
parentcf7e8947e935586d729d9138f5521a9cd5271974 (diff)
downloadbcm5719-llvm-943f4f41f2551a33fcce2cee2373ed6d178ebbdd.tar.gz
bcm5719-llvm-943f4f41f2551a33fcce2cee2373ed6d178ebbdd.zip
Load / store multiple was missing opportunites when the load / store bundles are at the end of the bb. Test case is already in, the bug is exposed by subsequent commit.
llvm-svn: 84842
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp b/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
index d2ec9ee6cdf..c9b9e84c2a3 100644
--- a/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
+++ b/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
@@ -974,6 +974,9 @@ bool ARMLoadStoreOpt::LoadStoreMultipleOpti(MachineBasicBlock &MBB) {
if (Advance) {
++Position;
++MBBI;
+ if (MBBI == E)
+ // Reach the end of the block, try merging the memory instructions.
+ TryMerge = true;
} else
TryMerge = true;
OpenPOWER on IntegriCloud