Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of

MachineBasicBlock::canFallThrough(), which is target-independent and more
thorough.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90634 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2009-12-05 00:44:40 +00:00
parent 735985fbbe
commit 864e2efce2
26 changed files with 1 additions and 211 deletions

View File

@@ -1140,7 +1140,7 @@ ReoptimizeBlock:
// falls through into MBB and we can't understand the prior block's branch
// condition.
if (MBB->empty()) {
bool PredHasNoFallThrough = TII->BlockHasNoFallThrough(PrevBB);
bool PredHasNoFallThrough = !PrevBB.canFallThrough();
if (PredHasNoFallThrough || !PriorUnAnalyzable ||
!PrevBB.isSuccessor(MBB)) {
// If the prior block falls through into us, turn it into an

View File

@@ -376,15 +376,6 @@ MachineVerifier::visitMachineBasicBlockBefore(const MachineBasicBlock *MBB) {
report("MBB doesn't fall through but is empty!", MBB);
}
}
if (TII->BlockHasNoFallThrough(*MBB)) {
if (MBB->empty()) {
report("TargetInstrInfo says the block has no fall through, but the "
"block is empty!", MBB);
} else if (!MBB->back().getDesc().isBarrier()) {
report("TargetInstrInfo says the block has no fall through, but the "
"block does not end in a barrier!", MBB);
}
}
} else {
// Block is last in function.
if (MBB->empty()) {