mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-13 15:37:24 +00:00
Don't delete blocks which have their address taken.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85572 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
dfbbf6e023
commit
ab918103d2
@ -881,8 +881,9 @@ bool BranchFolder::OptimizeBlock(MachineBasicBlock *MBB) {
|
||||
|
||||
// If this block is empty, make everyone use its fall-through, not the block
|
||||
// explicitly. Landing pads should not do this since the landing-pad table
|
||||
// points to this block.
|
||||
if (MBB->empty() && !MBB->isLandingPad()) {
|
||||
// points to this block. Blocks with their addresses taken shouldn't be
|
||||
// optimized away.
|
||||
if (MBB->empty() && !MBB->isLandingPad() && !MBB->hasAddressTaken()) {
|
||||
// Dead block? Leave for cleanup later.
|
||||
if (MBB->pred_empty()) return MadeChange;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user