diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-12-08 01:10:05 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-12-08 01:10:05 +0000 |
commit | bd97f5d753cd98f4b48731cfaa9df8c0aca29c94 (patch) | |
tree | 54e26a32c8740c3020c0f156d367a36d03a19985 /llvm/lib/Target/ARM/ARMConstantIslandPass.cpp | |
parent | 0dd1bc9c792efc9417551492c3826b1673b168b4 (diff) | |
download | bcm5719-llvm-bd97f5d753cd98f4b48731cfaa9df8c0aca29c94.tar.gz bcm5719-llvm-bd97f5d753cd98f4b48731cfaa9df8c0aca29c94.zip |
Simplify offset verification.
llvm-svn: 146121
Diffstat (limited to 'llvm/lib/Target/ARM/ARMConstantIslandPass.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/ARMConstantIslandPass.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp b/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp index e14db5d52fb..844469eadd6 100644 --- a/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp +++ b/llvm/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]; |