Lines Matching defs:LoopEnd
113 MachineInstr *&LoopDec, MachineInstr *&LoopEnd) {
122 LoopEnd = nullptr;
125 LoopEnd = &T;
130 LoopEnd = &T;
134 if (!LoopEnd) {
135 LLVM_DEBUG(dbgs() << " no LoopEnd\n");
138 LLVM_DEBUG(dbgs() << " found loop end: " << *LoopEnd);
149 if (LoopEnd->getOpcode() == ARM::t2LoopEndDec)
150 LoopDec = LoopEnd;
153 LookThroughCOPY(MRI->getVRegDef(LoopEnd->getOperand(0).getReg()), MRI);
232 MachineInstr *LoopEnd, *LoopPhi, *LoopStart, *LoopDec;
233 if (!findLoopComponents(ML, MRI, LoopStart, LoopPhi, LoopDec, LoopEnd))
327 MachineInstr *LoopEnd, *LoopPhi, *LoopStart, *LoopDec;
328 if (!findLoopComponents(ML, MRI, LoopStart, LoopPhi, LoopDec, LoopEnd))
347 RevertLoopEnd(LoopEnd, TII);
383 !CheckUsers(DecReg, {LoopPhi, LoopEnd}, MRI) ||
389 RevertLoopEnd(LoopEnd, TII);
409 if (!TII->analyzeBranch(*LoopEnd->getParent(), TBB, FBB, Cond) && !FBB) {
410 // If the LoopEnd falls through, need to insert a t2B to the fall-through
412 MachineFunction::iterator MBBI = ++LoopEnd->getParent()->getIterator();
413 BuildMI(LoopEnd->getParent(), DebugLoc(), TII->get(ARM::t2B))
420 BuildMI(*LoopEnd->getParent(), *LoopEnd, LoopEnd->getDebugLoc(),
423 .add(LoopEnd->getOperand(1));
428 LoopEnd->eraseFromParent();
443 // Find some loop components including the LoopEnd/Dec/Start, and any VCTP's
445 MachineInstr *LoopEnd, *LoopPhi, *LoopStart, *LoopDec;
446 if (!findLoopComponents(ML, MRI, LoopStart, LoopPhi, LoopDec, LoopEnd))
448 if (LoopDec != LoopEnd || (LoopStart->getOpcode() != ARM::t2DoLoopStart &&