reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
469 if (MI->isCopy() && !TRI->regsOverlap(MI->getOperand(0).getReg(), 469 if (MI->isCopy() && !TRI->regsOverlap(MI->getOperand(0).getReg(), 470 MI->getOperand(1).getReg())) { 471 Register Def = MI->getOperand(0).getReg(); 472 Register Src = MI->getOperand(1).getReg(); 493 if (eraseIfRedundant(*MI, Def, Src) || eraseIfRedundant(*MI, Src, Def)) 493 if (eraseIfRedundant(*MI, Def, Src) || eraseIfRedundant(*MI, Src, Def)) 496 forwardUses(*MI); 499 Src = MI->getOperand(1).getReg(); 503 ReadRegister(Src, *MI, RegularUse); 504 for (const MachineOperand &MO : MI->implicit_operands()) { 510 ReadRegister(Reg, *MI, RegularUse); 513 LLVM_DEBUG(dbgs() << "MCP: Copy is a deletion candidate: "; MI->dump()); 517 MaybeDeadCopies.insert(MI); 527 for (const MachineOperand &MO : MI->implicit_operands()) { 536 Tracker.trackCopy(MI, *TRI); 542 for (const MachineOperand &MO : MI->operands()) 549 ReadRegister(Reg, *MI, RegularUse); 553 forwardUses(*MI); 558 for (const MachineOperand &MO : MI->operands()) { 574 ReadRegister(Reg, *MI, MO.isDebug() ? DebugUse : RegularUse);