diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-12-16 23:00:05 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-12-16 23:00:05 +0000 |
commit | b076fb7762498289718dbe4cb5de03e6e93bd4e7 (patch) | |
tree | f33c8231346449038deea044067ec33e89db8090 /lib/Target/ARM/ARMConstantIslandPass.cpp | |
parent | efb0d1e42f266efbd3d15b0c12c0790e90c5be66 (diff) | |
download | llvm-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.cpp | 2 |
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; |