reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/TwoAddressInstructionPass.cpp
 1704          mi != me; ) {
 1705       MachineBasicBlock::iterator nmi = std::next(mi);
 1708       if (mi->isDebugInstr() || SunkInstrs.count(&*mi)) {
 1708       if (mi->isDebugInstr() || SunkInstrs.count(&*mi)) {
 1709         mi = nmi;
 1715       if (mi->isRegSequence())
 1716         eliminateRegSequence(mi);
 1718       DistanceMap.insert(std::make_pair(&*mi, ++Dist));
 1720       processCopy(&*mi);
 1724       if (!collectTiedOperands(&*mi, TiedOperands)) {
 1725         mi = nmi;
 1731       LLVM_DEBUG(dbgs() << '\t' << *mi);
 1742           Register SrcReg = mi->getOperand(SrcIdx).getReg();
 1743           Register DstReg = mi->getOperand(DstIdx).getReg();
 1745               tryInstructionTransform(mi, nmi, SrcIdx, DstIdx, Dist, false)) {
 1749             mi = nmi;
 1757         processTiedPairs(&*mi, TO.second, Dist);
 1758         LLVM_DEBUG(dbgs() << "\t\trewrite to:\t" << *mi);
 1762       if (mi->isInsertSubreg()) {
 1765         unsigned SubIdx = mi->getOperand(3).getImm();
 1766         mi->RemoveOperand(3);
 1767         assert(mi->getOperand(0).getSubReg() == 0 && "Unexpected subreg idx");
 1768         mi->getOperand(0).setSubReg(SubIdx);
 1769         mi->getOperand(0).setIsUndef(mi->getOperand(1).isUndef());
 1769         mi->getOperand(0).setIsUndef(mi->getOperand(1).isUndef());
 1770         mi->RemoveOperand(1);
 1771         mi->setDesc(TII->get(TargetOpcode::COPY));
 1772         LLVM_DEBUG(dbgs() << "\t\tconvert to:\t" << *mi);
 1778       mi = nmi;