summaryrefslogtreecommitdiff
path: root/lib/Target/ARM/ARMConstantIslandPass.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-12-16 23:00:05 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-12-16 23:00:05 +0000
commitb076fb7762498289718dbe4cb5de03e6e93bd4e7 (patch)
treef33c8231346449038deea044067ec33e89db8090 /lib/Target/ARM/ARMConstantIslandPass.cpp
parentefb0d1e42f266efbd3d15b0c12c0790e90c5be66 (diff)
downloadllvm-b076fb7762498289718dbe4cb5de03e6e93bd4e7.tar.gz
llvm-b076fb7762498289718dbe4cb5de03e6e93bd4e7.tar.bz2
llvm-b076fb7762498289718dbe4cb5de03e6e93bd4e7.tar.xz
Fix off-by-one error in bucket sort.
The bad sorting caused a misaligned basic block when building 176.vpr in ARM mode. <rdar://problem/10594653> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146767 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMConstantIslandPass.cpp')
-rw-r--r--lib/Target/ARM/ARMConstantIslandPass.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMConstantIslandPass.cpp b/lib/Target/ARM/ARMConstantIslandPass.cpp
index 7cdce3db16..2a7721bc74 100644
--- a/lib/Target/ARM/ARMConstantIslandPass.cpp
+++ b/lib/Target/ARM/ARMConstantIslandPass.cpp
@@ -537,7 +537,7 @@ ARMConstantIslands::DoInitialPlacement(std::vector<MachineInstr*> &CPEMIs) {
// Ensure that future entries with higher alignment get inserted before
// CPEMI. This is bucket sort with iterators.
- for (unsigned a = LogAlign + 1; a < MaxAlign; ++a)
+ for (unsigned a = LogAlign + 1; a <= MaxAlign; ++a)
if (InsPoint[a] == InsAt)
InsPoint[a] = CPEMI;