summaryrefslogtreecommitdiff
path: root/lib/Target/ARM/ARMConstantIslandPass.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2011-12-08 01:10:05 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2011-12-08 01:10:05 +0000
commit99486be8bad67f70445df99fd0c07d17eb8b1c05 (patch)
tree689447e40a1890ec3ccd506ef533d74d85f421ca /lib/Target/ARM/ARMConstantIslandPass.cpp
parent517a013a4fb6ead3b395e05dfdc04a622931eb36 (diff)
downloadllvm-99486be8bad67f70445df99fd0c07d17eb8b1c05.tar.gz
llvm-99486be8bad67f70445df99fd0c07d17eb8b1c05.tar.bz2
llvm-99486be8bad67f70445df99fd0c07d17eb8b1c05.tar.xz
Simplify offset verification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146121 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMConstantIslandPass.cpp')
-rw-r--r--lib/Target/ARM/ARMConstantIslandPass.cpp13
1 files changed, 4 insertions, 9 deletions
diff --git a/lib/Target/ARM/ARMConstantIslandPass.cpp b/lib/Target/ARM/ARMConstantIslandPass.cpp
index e14db5d52f..844469eadd 100644
--- a/lib/Target/ARM/ARMConstantIslandPass.cpp
+++ b/lib/Target/ARM/ARMConstantIslandPass.cpp
@@ -292,19 +292,14 @@ namespace {
/// verify - check BBOffsets, BBSizes, alignment of islands
void ARMConstantIslands::verify(MachineFunction &MF) {
- if (!isThumb)
- return;
#ifndef NDEBUG
for (MachineFunction::iterator MBBI = MF.begin(), E = MF.end();
MBBI != E; ++MBBI) {
MachineBasicBlock *MBB = MBBI;
- if (!MBB->empty() &&
- MBB->begin()->getOpcode() == ARM::CONSTPOOL_ENTRY) {
- unsigned MBBId = MBB->getNumber();
- assert(HasInlineAsm ||
- (BBInfo[MBBId].Offset%4 == 0 && BBInfo[MBBId].Size%4 == 0) ||
- (BBInfo[MBBId].Offset%4 != 0 && BBInfo[MBBId].Size%4 != 0));
- }
+ unsigned Align = MBB->getAlignment();
+ unsigned MBBId = MBB->getNumber();
+ assert(BBInfo[MBBId].Offset % (1u << Align) == 0);
+ assert(!MBBId || BBInfo[MBBId - 1].postOffset() <= BBInfo[MBBId].Offset);
}
for (unsigned i = 0, e = CPUsers.size(); i != e; ++i) {
CPUser &U = CPUsers[i];