Lines Matching refs:LoopPhi
112 MachineInstr *&LoopStart, MachineInstr *&LoopPhi, in findLoopComponents() argument
161 LoopPhi = in findLoopComponents()
163 if (!LoopPhi || LoopPhi->getOpcode() != TargetOpcode::PHI || in findLoopComponents()
164 LoopPhi->getNumOperands() != 5 || in findLoopComponents()
165 (LoopPhi->getOperand(2).getMBB() != Latch && in findLoopComponents()
166 LoopPhi->getOperand(4).getMBB() != Latch)) { in findLoopComponents()
170 LLVM_DEBUG(dbgs() << " found loop phi: " << *LoopPhi); in findLoopComponents()
172 Register StartReg = LoopPhi->getOperand(2).getMBB() == Latch in findLoopComponents()
173 ? LoopPhi->getOperand(3).getReg() in findLoopComponents()
174 : LoopPhi->getOperand(1).getReg(); in findLoopComponents()
232 MachineInstr *LoopEnd, *LoopPhi, *LoopStart, *LoopDec; in LowerWhileLoopStart() local
233 if (!findLoopComponents(ML, MRI, LoopStart, LoopPhi, LoopDec, LoopEnd)) in LowerWhileLoopStart()
327 MachineInstr *LoopEnd, *LoopPhi, *LoopStart, *LoopDec; in MergeLoopEnd() local
328 if (!findLoopComponents(ML, MRI, LoopStart, LoopPhi, LoopDec, LoopEnd)) in MergeLoopEnd()
356 Register PhiReg = LoopPhi->getOperand(0).getReg(); in MergeLoopEnd()
383 !CheckUsers(DecReg, {LoopPhi, LoopEnd}, MRI) || in MergeLoopEnd()
384 !CheckUsers(StartReg, {LoopPhi}, MRI)) { in MergeLoopEnd()
399 if (LoopPhi->getOperand(2).getMBB() == ML->getLoopLatch()) { in MergeLoopEnd()
400 LoopPhi->getOperand(3).setReg(StartReg); in MergeLoopEnd()
401 LoopPhi->getOperand(1).setReg(DecReg); in MergeLoopEnd()
403 LoopPhi->getOperand(1).setReg(StartReg); in MergeLoopEnd()
404 LoopPhi->getOperand(3).setReg(DecReg); in MergeLoopEnd()
445 MachineInstr *LoopEnd, *LoopPhi, *LoopStart, *LoopDec; in ConvertTailPredLoop() local
446 if (!findLoopComponents(ML, MRI, LoopStart, LoopPhi, LoopDec, LoopEnd)) in ConvertTailPredLoop()
536 Register LR = LoopPhi->getOperand(0).getReg(); in ConvertTailPredLoop()