mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-10-02 02:55:35 +00:00
Reduce indentation with early exit.
No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166829 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0de4fd23a7
commit
96e6da4841
@ -588,35 +588,34 @@ TwoAddressInstructionPass::convertInstTo3Addr(MachineBasicBlock::iterator &mi,
|
|||||||
MachineFunction::iterator MFI = MBB;
|
MachineFunction::iterator MFI = MBB;
|
||||||
MachineInstr *NewMI = TII->convertToThreeAddress(MFI, mi, LV);
|
MachineInstr *NewMI = TII->convertToThreeAddress(MFI, mi, LV);
|
||||||
assert(MBB == MFI && "convertToThreeAddress changed iterator reference");
|
assert(MBB == MFI && "convertToThreeAddress changed iterator reference");
|
||||||
if (NewMI) {
|
if (!NewMI)
|
||||||
DEBUG(dbgs() << "2addr: CONVERTING 2-ADDR: " << *mi);
|
return false;
|
||||||
DEBUG(dbgs() << "2addr: TO 3-ADDR: " << *NewMI);
|
|
||||||
bool Sunk = false;
|
|
||||||
|
|
||||||
if (Indexes)
|
DEBUG(dbgs() << "2addr: CONVERTING 2-ADDR: " << *mi);
|
||||||
Indexes->replaceMachineInstrInMaps(mi, NewMI);
|
DEBUG(dbgs() << "2addr: TO 3-ADDR: " << *NewMI);
|
||||||
|
bool Sunk = false;
|
||||||
|
|
||||||
if (NewMI->findRegisterUseOperand(RegB, false, TRI))
|
if (Indexes)
|
||||||
// FIXME: Temporary workaround. If the new instruction doesn't
|
Indexes->replaceMachineInstrInMaps(mi, NewMI);
|
||||||
// uses RegB, convertToThreeAddress must have created more
|
|
||||||
// then one instruction.
|
|
||||||
Sunk = sink3AddrInstruction(NewMI, RegB, mi);
|
|
||||||
|
|
||||||
MBB->erase(mi); // Nuke the old inst.
|
if (NewMI->findRegisterUseOperand(RegB, false, TRI))
|
||||||
|
// FIXME: Temporary workaround. If the new instruction doesn't
|
||||||
|
// uses RegB, convertToThreeAddress must have created more
|
||||||
|
// then one instruction.
|
||||||
|
Sunk = sink3AddrInstruction(NewMI, RegB, mi);
|
||||||
|
|
||||||
if (!Sunk) {
|
MBB->erase(mi); // Nuke the old inst.
|
||||||
DistanceMap.insert(std::make_pair(NewMI, Dist));
|
|
||||||
mi = NewMI;
|
|
||||||
nmi = llvm::next(mi);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Update source and destination register maps.
|
if (!Sunk) {
|
||||||
SrcRegMap.erase(RegA);
|
DistanceMap.insert(std::make_pair(NewMI, Dist));
|
||||||
DstRegMap.erase(RegB);
|
mi = NewMI;
|
||||||
return true;
|
nmi = llvm::next(mi);
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
// Update source and destination register maps.
|
||||||
|
SrcRegMap.erase(RegA);
|
||||||
|
DstRegMap.erase(RegB);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// scanUses - Scan forward recursively for only uses, update maps if the use
|
/// scanUses - Scan forward recursively for only uses, update maps if the use
|
||||||
|
Loading…
Reference in New Issue
Block a user