mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-01-10 18:11:19 +00:00
ARM: Remove implicit ilist iterator conversions, NFC
llvm-svn: 250759
This commit is contained in:
parent
6372a0bd51
commit
9f9559e807
@ -440,7 +440,7 @@ ReverseBranchCondition(SmallVectorImpl<MachineOperand> &Cond) const {
|
||||
|
||||
bool ARMBaseInstrInfo::isPredicated(const MachineInstr *MI) const {
|
||||
if (MI->isBundle()) {
|
||||
MachineBasicBlock::const_instr_iterator I = MI;
|
||||
MachineBasicBlock::const_instr_iterator I = MI->getIterator();
|
||||
MachineBasicBlock::const_instr_iterator E = MI->getParent()->instr_end();
|
||||
while (++I != E && I->isInsideBundle()) {
|
||||
int PIdx = I->findFirstPredOperandIdx();
|
||||
@ -647,7 +647,7 @@ unsigned ARMBaseInstrInfo::GetInstSizeInBytes(const MachineInstr *MI) const {
|
||||
|
||||
unsigned ARMBaseInstrInfo::getInstBundleLength(const MachineInstr *MI) const {
|
||||
unsigned Size = 0;
|
||||
MachineBasicBlock::const_instr_iterator I = MI;
|
||||
MachineBasicBlock::const_instr_iterator I = MI->getIterator();
|
||||
MachineBasicBlock::const_instr_iterator E = MI->getParent()->instr_end();
|
||||
while (++I != E && I->isInsideBundle()) {
|
||||
assert(!I->isBundle() && "No nested bundle!");
|
||||
@ -3435,7 +3435,7 @@ static const MachineInstr *getBundledDefMI(const TargetRegisterInfo *TRI,
|
||||
|
||||
assert(Idx != -1 && "Cannot find bundled definition!");
|
||||
DefIdx = Idx;
|
||||
return II;
|
||||
return &*II;
|
||||
}
|
||||
|
||||
static const MachineInstr *getBundledUseMI(const TargetRegisterInfo *TRI,
|
||||
@ -3443,7 +3443,7 @@ static const MachineInstr *getBundledUseMI(const TargetRegisterInfo *TRI,
|
||||
unsigned &UseIdx, unsigned &Dist) {
|
||||
Dist = 0;
|
||||
|
||||
MachineBasicBlock::const_instr_iterator II = MI; ++II;
|
||||
MachineBasicBlock::const_instr_iterator II = ++MI->getIterator();
|
||||
assert(II->isInsideBundle() && "Empty bundle?");
|
||||
MachineBasicBlock::const_instr_iterator E = MI->getParent()->instr_end();
|
||||
|
||||
@ -3464,7 +3464,7 @@ static const MachineInstr *getBundledUseMI(const TargetRegisterInfo *TRI,
|
||||
}
|
||||
|
||||
UseIdx = Idx;
|
||||
return II;
|
||||
return &*II;
|
||||
}
|
||||
|
||||
/// Return the number of cycles to add to (or subtract from) the static
|
||||
@ -3986,11 +3986,11 @@ unsigned ARMBaseInstrInfo::getInstrLatency(const InstrItineraryData *ItinData,
|
||||
// other passes may query the latency of a bundled instruction.
|
||||
if (MI->isBundle()) {
|
||||
unsigned Latency = 0;
|
||||
MachineBasicBlock::const_instr_iterator I = MI;
|
||||
MachineBasicBlock::const_instr_iterator I = MI->getIterator();
|
||||
MachineBasicBlock::const_instr_iterator E = MI->getParent()->instr_end();
|
||||
while (++I != E && I->isInsideBundle()) {
|
||||
if (I->getOpcode() != ARM::t2IT)
|
||||
Latency += getInstrLatency(ItinData, I, PredCost);
|
||||
Latency += getInstrLatency(ItinData, &*I, PredCost);
|
||||
}
|
||||
return Latency;
|
||||
}
|
||||
|
@ -342,7 +342,7 @@ void ARMConstantIslands::verify() {
|
||||
#ifndef NDEBUG
|
||||
for (MachineFunction::iterator MBBI = MF->begin(), E = MF->end();
|
||||
MBBI != E; ++MBBI) {
|
||||
MachineBasicBlock *MBB = MBBI;
|
||||
MachineBasicBlock *MBB = &*MBBI;
|
||||
unsigned MBBId = MBB->getNumber();
|
||||
assert(!MBBId || BBInfo[MBBId - 1].postOffset() <= BBInfo[MBBId].Offset);
|
||||
}
|
||||
@ -639,12 +639,12 @@ void ARMConstantIslands::doInitialJumpTablePlacement(
|
||||
/// into the block immediately after it.
|
||||
bool ARMConstantIslands::BBHasFallthrough(MachineBasicBlock *MBB) {
|
||||
// Get the next machine basic block in the function.
|
||||
MachineFunction::iterator MBBI = MBB;
|
||||
MachineFunction::iterator MBBI = MBB->getIterator();
|
||||
// Can't fall off end of function.
|
||||
if (std::next(MBBI) == MBB->getParent()->end())
|
||||
return false;
|
||||
|
||||
MachineBasicBlock *NextBB = std::next(MBBI);
|
||||
MachineBasicBlock *NextBB = &*std::next(MBBI);
|
||||
if (std::find(MBB->succ_begin(), MBB->succ_end(), NextBB) == MBB->succ_end())
|
||||
return false;
|
||||
|
||||
@ -722,15 +722,15 @@ initializeFunctionInfo(const std::vector<MachineInstr*> &CPEMIs) {
|
||||
// has any inline assembly in it. If so, we have to be conservative about
|
||||
// alignment assumptions, as we don't know for sure the size of any
|
||||
// instructions in the inline assembly.
|
||||
for (MachineFunction::iterator I = MF->begin(), E = MF->end(); I != E; ++I)
|
||||
computeBlockSize(I);
|
||||
for (MachineBasicBlock &MBB : *MF)
|
||||
computeBlockSize(&MBB);
|
||||
|
||||
// The known bits of the entry block offset are determined by the function
|
||||
// alignment.
|
||||
BBInfo.front().KnownBits = MF->getAlignment();
|
||||
|
||||
// Compute block offsets and known bits.
|
||||
adjustBBOffsetsAfter(MF->begin());
|
||||
adjustBBOffsetsAfter(&MF->front());
|
||||
|
||||
// Now go back through the instructions and build up our data structures.
|
||||
for (MachineFunction::iterator MBBI = MF->begin(), E = MF->end();
|
||||
@ -968,7 +968,7 @@ MachineBasicBlock *ARMConstantIslands::splitBlockBeforeInstr(MachineInstr *MI) {
|
||||
// Create a new MBB for the code after the OrigBB.
|
||||
MachineBasicBlock *NewBB =
|
||||
MF->CreateMachineBasicBlock(OrigBB->getBasicBlock());
|
||||
MachineFunction::iterator MBBI = OrigBB; ++MBBI;
|
||||
MachineFunction::iterator MBBI = ++OrigBB->getIterator();
|
||||
MF->insert(MBBI, NewBB);
|
||||
|
||||
// Splice the instructions starting with MI over to NewBB.
|
||||
@ -1088,7 +1088,7 @@ bool ARMConstantIslands::isWaterInRange(unsigned UserOffset,
|
||||
unsigned CPELogAlign = getCPELogAlign(U.CPEMI);
|
||||
unsigned CPEOffset = BBInfo[Water->getNumber()].postOffset(CPELogAlign);
|
||||
unsigned NextBlockOffset, NextBlockAlignment;
|
||||
MachineFunction::const_iterator NextBlock = Water;
|
||||
MachineFunction::const_iterator NextBlock = Water->getIterator();
|
||||
if (++NextBlock == MF->end()) {
|
||||
NextBlockOffset = BBInfo[Water->getNumber()].postOffset();
|
||||
NextBlockAlignment = 0;
|
||||
@ -1350,7 +1350,7 @@ void ARMConstantIslands::createNewWater(unsigned CPUserIndex,
|
||||
if (isOffsetInRange(UserOffset, CPEOffset, U)) {
|
||||
DEBUG(dbgs() << "Split at end of BB#" << UserMBB->getNumber()
|
||||
<< format(", expected CPE offset %#x\n", CPEOffset));
|
||||
NewMBB = std::next(MachineFunction::iterator(UserMBB));
|
||||
NewMBB = &*++UserMBB->getIterator();
|
||||
// Add an unconditional branch from UserMBB to fallthrough block. Record
|
||||
// it for branch lengthening; this new branch will not get out of range,
|
||||
// but if the preceding conditional branch is out of range, the targets
|
||||
@ -1503,8 +1503,7 @@ bool ARMConstantIslands::handleConstantPoolUser(unsigned CPUserIndex) {
|
||||
NewWaterList.insert(NewIsland);
|
||||
|
||||
// The new CPE goes before the following block (NewMBB).
|
||||
NewMBB = std::next(MachineFunction::iterator(WaterBB));
|
||||
|
||||
NewMBB = &*++WaterBB->getIterator();
|
||||
} else {
|
||||
// No water found.
|
||||
DEBUG(dbgs() << "No water found\n");
|
||||
@ -1515,7 +1514,7 @@ bool ARMConstantIslands::handleConstantPoolUser(unsigned CPUserIndex) {
|
||||
// next iteration for constant pools, but in this context, we don't want
|
||||
// it. Check for this so it will be removed from the WaterList.
|
||||
// Also remove any entry from NewWaterList.
|
||||
MachineBasicBlock *WaterBB = std::prev(MachineFunction::iterator(NewMBB));
|
||||
MachineBasicBlock *WaterBB = &*--NewMBB->getIterator();
|
||||
IP = std::find(WaterList.begin(), WaterList.end(), WaterBB);
|
||||
if (IP != WaterList.end())
|
||||
NewWaterList.erase(WaterBB);
|
||||
@ -1532,7 +1531,7 @@ bool ARMConstantIslands::handleConstantPoolUser(unsigned CPUserIndex) {
|
||||
WaterList.erase(IP);
|
||||
|
||||
// Okay, we know we can put an island before NewMBB now, do it!
|
||||
MF->insert(NewMBB, NewIsland);
|
||||
MF->insert(NewMBB->getIterator(), NewIsland);
|
||||
|
||||
// Update internal data structures to account for the newly inserted MBB.
|
||||
updateForInsertedWaterBlock(NewIsland);
|
||||
@ -1553,7 +1552,7 @@ bool ARMConstantIslands::handleConstantPoolUser(unsigned CPUserIndex) {
|
||||
|
||||
// Increase the size of the island block to account for the new entry.
|
||||
BBInfo[NewIsland->getNumber()].Size += Size;
|
||||
adjustBBOffsetsAfter(std::prev(MachineFunction::iterator(NewIsland)));
|
||||
adjustBBOffsetsAfter(&*--NewIsland->getIterator());
|
||||
|
||||
// Finally, change the CPI in the instruction operand to be ID.
|
||||
for (unsigned i = 0, e = UserMI->getNumOperands(); i != e; ++i)
|
||||
@ -1732,7 +1731,7 @@ ARMConstantIslands::fixupConditionalBr(ImmBranch &Br) {
|
||||
MBB->back().eraseFromParent();
|
||||
// BBInfo[SplitBB].Offset is wrong temporarily, fixed below
|
||||
}
|
||||
MachineBasicBlock *NextBB = std::next(MachineFunction::iterator(MBB));
|
||||
MachineBasicBlock *NextBB = &*++MBB->getIterator();
|
||||
|
||||
DEBUG(dbgs() << " Insert B to BB#" << DestBB->getNumber()
|
||||
<< " also invert condition and change dest. to BB#"
|
||||
@ -2060,7 +2059,7 @@ bool ARMConstantIslands::preserveBaseRegister(MachineInstr *JumpMI,
|
||||
/// we can switch the first register to PC and usually remove the address
|
||||
/// calculation that preceded it.
|
||||
static bool jumpTableFollowsTB(MachineInstr *JTMI, MachineInstr *CPEMI) {
|
||||
MachineFunction::iterator MBB = JTMI->getParent();
|
||||
MachineFunction::iterator MBB = JTMI->getParent()->getIterator();
|
||||
MachineFunction *MF = MBB->getParent();
|
||||
++MBB;
|
||||
|
||||
@ -2235,7 +2234,7 @@ adjustJTTargetBlockForward(MachineBasicBlock *BB, MachineBasicBlock *JTBB) {
|
||||
MachineBasicBlock *TBB = nullptr, *FBB = nullptr;
|
||||
SmallVector<MachineOperand, 4> Cond;
|
||||
SmallVector<MachineOperand, 4> CondPrior;
|
||||
MachineFunction::iterator BBi = BB;
|
||||
MachineFunction::iterator BBi = BB->getIterator();
|
||||
MachineFunction::iterator OldPrior = std::prev(BBi);
|
||||
|
||||
// If the block terminator isn't analyzable, don't try to move the block
|
||||
@ -2258,7 +2257,7 @@ adjustJTTargetBlockForward(MachineBasicBlock *BB, MachineBasicBlock *JTBB) {
|
||||
// Create a new MBB for the code after the jump BB.
|
||||
MachineBasicBlock *NewBB =
|
||||
MF->CreateMachineBasicBlock(JTBB->getBasicBlock());
|
||||
MachineFunction::iterator MBBI = JTBB; ++MBBI;
|
||||
MachineFunction::iterator MBBI = ++JTBB->getIterator();
|
||||
MF->insert(MBBI, NewBB);
|
||||
|
||||
// Add an unconditional branch from NewBB to BB.
|
||||
|
@ -731,7 +731,7 @@ void ARMExpandPseudo::ExpandMOV32BitImm(MachineBasicBlock &MBB,
|
||||
HI16.addImm(Pred).addReg(PredReg);
|
||||
|
||||
if (RequiresBundling)
|
||||
finalizeBundle(MBB, &*LO16, &*MBBI);
|
||||
finalizeBundle(MBB, LO16->getIterator(), MBBI->getIterator());
|
||||
|
||||
TransferImpOps(MI, LO16, HI16);
|
||||
MI.eraseFromParent();
|
||||
|
@ -3050,7 +3050,7 @@ bool ARMFastISel::fastLowerArguments() {
|
||||
BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, DbgLoc,
|
||||
TII.get(TargetOpcode::COPY),
|
||||
ResultReg).addReg(DstReg, getKillRegState(true));
|
||||
updateValueMap(I, ResultReg);
|
||||
updateValueMap(&*I, ResultReg);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -1895,7 +1895,7 @@ void ARMFrameLowering::adjustForSegmentedStacks(
|
||||
// we do not have to do the following updates for them.
|
||||
for (int Idx = 0; Idx < NbAddedBlocks; ++Idx) {
|
||||
BeforePrologueRegion.erase(AddedBlocks[Idx]);
|
||||
MF.insert(&PrologueMBB, AddedBlocks[Idx]);
|
||||
MF.insert(PrologueMBB.getIterator(), AddedBlocks[Idx]);
|
||||
}
|
||||
|
||||
for (MachineBasicBlock *MBB : BeforePrologueRegion) {
|
||||
|
@ -343,7 +343,7 @@ void ARMDAGToDAGISel::PreprocessISelDAG() {
|
||||
bool isThumb2 = Subtarget->isThumb();
|
||||
for (SelectionDAG::allnodes_iterator I = CurDAG->allnodes_begin(),
|
||||
E = CurDAG->allnodes_end(); I != E; ) {
|
||||
SDNode *N = I++; // Preincrement iterator to avoid invalidation issues.
|
||||
SDNode *N = &*I++; // Preincrement iterator to avoid invalidation issues.
|
||||
|
||||
if (N->getOpcode() != ISD::ADD)
|
||||
continue;
|
||||
@ -531,7 +531,7 @@ bool ARMDAGToDAGISel::canExtractShiftFromMul(const SDValue &N,
|
||||
}
|
||||
|
||||
void ARMDAGToDAGISel::replaceDAGValue(const SDValue &N, SDValue M) {
|
||||
CurDAG->RepositionNode(N.getNode(), M.getNode());
|
||||
CurDAG->RepositionNode(N.getNode()->getIterator(), M.getNode());
|
||||
CurDAG->ReplaceAllUsesWith(N, M);
|
||||
}
|
||||
|
||||
|
@ -3222,9 +3222,9 @@ ARMTargetLowering::LowerFormalArguments(SDValue Chain,
|
||||
"Byval arguments cannot be implicit");
|
||||
unsigned CurByValIndex = CCInfo.getInRegsParamsProcessed();
|
||||
|
||||
int FrameIndex = StoreByValRegs(CCInfo, DAG, dl, Chain, CurOrigArg,
|
||||
CurByValIndex, VA.getLocMemOffset(),
|
||||
Flags.getByValSize());
|
||||
int FrameIndex = StoreByValRegs(
|
||||
CCInfo, DAG, dl, Chain, &*CurOrigArg, CurByValIndex,
|
||||
VA.getLocMemOffset(), Flags.getByValSize());
|
||||
InVals.push_back(DAG.getFrameIndex(FrameIndex, PtrVT));
|
||||
CCInfo.nextInRegsParam();
|
||||
} else {
|
||||
@ -7033,7 +7033,7 @@ void ARMTargetLowering::EmitSjLjDispatchBlock(MachineInstr *MI,
|
||||
for (SmallVectorImpl<unsigned>::iterator
|
||||
CSI = CallSiteIdxs.begin(), CSE = CallSiteIdxs.end();
|
||||
CSI != CSE; ++CSI) {
|
||||
CallSiteNumToLPad[*CSI].push_back(BB);
|
||||
CallSiteNumToLPad[*CSI].push_back(&*BB);
|
||||
MaxCSNum = std::max(MaxCSNum, *CSI);
|
||||
}
|
||||
break;
|
||||
@ -7503,8 +7503,7 @@ ARMTargetLowering::EmitStructByval(MachineInstr *MI,
|
||||
// Otherwise, we will generate unrolled scalar copies.
|
||||
const TargetInstrInfo *TII = Subtarget->getInstrInfo();
|
||||
const BasicBlock *LLVM_BB = BB->getBasicBlock();
|
||||
MachineFunction::iterator It = BB;
|
||||
++It;
|
||||
MachineFunction::iterator It = ++BB->getIterator();
|
||||
|
||||
unsigned dest = MI->getOperand(0).getReg();
|
||||
unsigned src = MI->getOperand(1).getReg();
|
||||
@ -7892,8 +7891,7 @@ ARMTargetLowering::EmitInstrWithCustomInserter(MachineInstr *MI,
|
||||
// destination vreg to set, the condition code register to branch on, the
|
||||
// true/false values to select between, and a branch opcode to use.
|
||||
const BasicBlock *LLVM_BB = BB->getBasicBlock();
|
||||
MachineFunction::iterator It = BB;
|
||||
++It;
|
||||
MachineFunction::iterator It = ++BB->getIterator();
|
||||
|
||||
// thisMBB:
|
||||
// ...
|
||||
@ -8011,8 +8009,7 @@ ARMTargetLowering::EmitInstrWithCustomInserter(MachineInstr *MI,
|
||||
// RSBBB: V3 = RSBri V2, 0 (compute ABS if V2 < 0)
|
||||
// SinkBB: V1 = PHI(V2, V3)
|
||||
const BasicBlock *LLVM_BB = BB->getBasicBlock();
|
||||
MachineFunction::iterator BBI = BB;
|
||||
++BBI;
|
||||
MachineFunction::iterator BBI = ++BB->getIterator();
|
||||
MachineFunction *Fn = BB->getParent();
|
||||
MachineBasicBlock *RSBBB = Fn->CreateMachineBasicBlock(LLVM_BB);
|
||||
MachineBasicBlock *SinkBB = Fn->CreateMachineBasicBlock(LLVM_BB);
|
||||
|
@ -1903,9 +1903,8 @@ bool ARMPreAllocLoadStoreOpt::runOnMachineFunction(MachineFunction &Fn) {
|
||||
MF = &Fn;
|
||||
|
||||
bool Modified = false;
|
||||
for (MachineFunction::iterator MFI = Fn.begin(), E = Fn.end(); MFI != E;
|
||||
++MFI)
|
||||
Modified |= RescheduleLoadStoreInstrs(MFI);
|
||||
for (MachineBasicBlock &MFI : Fn)
|
||||
Modified |= RescheduleLoadStoreInstrs(&MFI);
|
||||
|
||||
return Modified;
|
||||
}
|
||||
|
@ -256,8 +256,8 @@ bool Thumb2ITBlockPass::InsertITInstructions(MachineBasicBlock &MBB) {
|
||||
LastITMI->findRegisterUseOperand(ARM::ITSTATE)->setIsKill();
|
||||
|
||||
// Finalize the bundle.
|
||||
MachineBasicBlock::instr_iterator LI = LastITMI;
|
||||
finalizeBundle(MBB, InsertPos.getInstrIterator(), std::next(LI));
|
||||
finalizeBundle(MBB, InsertPos.getInstrIterator(),
|
||||
++LastITMI->getIterator());
|
||||
|
||||
Modified = true;
|
||||
++NumITs;
|
||||
|
Loading…
Reference in New Issue
Block a user