Lines Matching refs:MI
113 void print(const MachineInstr &MI);
493 const MachineInstr &MI = *I;
494 if (IsInBundle && !MI.isInsideBundle()) {
499 print(MI);
500 if (!IsInBundle && MI.getFlag(MachineInstr::BundledSucc)) {
512 static bool hasComplexRegisterTies(const MachineInstr &MI) {
513 const MCInstrDesc &MCID = MI.getDesc();
514 for (unsigned I = 0, E = MI.getNumOperands(); I < E; ++I) {
515 const auto &Operand = MI.getOperand(I);
520 int TiedIdx = Operand.isTied() ? int(MI.findTiedOperandIdx(I)) : -1;
527 void MIPrinter::print(const MachineInstr &MI) {
528 const auto &SubTarget = MI.getParent()->getParent()->getSubtarget();
533 if (MI.isCFIInstruction())
534 assert(MI.getNumOperands() == 1 && "Expected 1 operand in CFI instruction");
536 bool ShouldPrintRegisterTies = hasComplexRegisterTies(MI);
537 unsigned I = 0, E = MI.getNumOperands();
538 for (; I < E && MI.getOperand(I).isReg() && MI.getOperand(I).isDef() &&
539 !MI.getOperand(I).isImplicit();
543 print(MI.getOperand(I), TRI, I, ShouldPrintRegisterTies, /*IsDef=*/true);
548 if (MI.getFlag(MachineInstr::FrameSetup))
550 OS << TII->getName(MI.getOpcode());
558 print(MI.getOperand(I), TRI, I, ShouldPrintRegisterTies);
562 if (MI.getDebugLoc()) {
566 MI.getDebugLoc()->printAsOperand(OS, MST);
569 if (!MI.memoperands_empty()) {
572 for (const auto *Op : MI.memoperands()) {