reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1756 if (!CP.setRegisters(CopyMI)) { 1761 if (CP.getNewRC()) { 1762 auto SrcRC = MRI->getRegClass(CP.getSrcReg()); 1763 auto DstRC = MRI->getRegClass(CP.getDstReg()); 1764 unsigned SrcIdx = CP.getSrcIdx(); 1765 unsigned DstIdx = CP.getDstIdx(); 1766 if (CP.isFlipped()) { 1771 CP.getNewRC(), *LIS)) { 1780 if (!CP.isPhys() && CopyMI->allDefsAreDead()) { 1788 if (!CP.isPhys()) { 1801 if (CP.getSrcReg() == CP.getDstReg()) { 1801 if (CP.getSrcReg() == CP.getDstReg()) { 1802 LiveInterval &LI = LIS->getInterval(CP.getSrcReg()); 1827 if (CP.isPhys()) { 1829 << printReg(CP.getSrcReg(), TRI) << " with " 1830 << printReg(CP.getDstReg(), TRI, CP.getSrcIdx()) << '\n'); 1830 << printReg(CP.getDstReg(), TRI, CP.getSrcIdx()) << '\n'); 1831 if (!canJoinPhys(CP)) { 1835 if (reMaterializeTrivialDef(CP, CopyMI, IsDefCopy)) 1843 if (!CP.isPartial() && LIS->getInterval(CP.getSrcReg()).size() > 1843 if (!CP.isPartial() && LIS->getInterval(CP.getSrcReg()).size() > 1844 LIS->getInterval(CP.getDstReg()).size()) 1845 CP.flip(); 1849 << TRI->getRegClassName(CP.getNewRC()) << " with "; 1850 if (CP.getDstIdx() && CP.getSrcIdx()) 1850 if (CP.getDstIdx() && CP.getSrcIdx()) 1851 dbgs() << printReg(CP.getDstReg()) << " in " 1852 << TRI->getSubRegIndexName(CP.getDstIdx()) << " and " 1853 << printReg(CP.getSrcReg()) << " in " 1854 << TRI->getSubRegIndexName(CP.getSrcIdx()) << '\n'; 1856 dbgs() << printReg(CP.getSrcReg(), TRI) << " in " 1857 << printReg(CP.getDstReg(), TRI, CP.getSrcIdx()) << '\n'; 1857 << printReg(CP.getDstReg(), TRI, CP.getSrcIdx()) << '\n'; 1868 if (!joinIntervals(CP)) { 1874 if (reMaterializeTrivialDef(CP, CopyMI, IsDefCopy)) 1879 if (!CP.isPartial() && !CP.isPhys()) { 1879 if (!CP.isPartial() && !CP.isPhys()) { 1880 bool Changed = adjustCopiesBackFrom(CP, CopyMI); 1883 std::tie(Changed, Shrink) = removeCopyByCommutingDef(CP, CopyMI); 1887 unsigned DstReg = CP.isFlipped() ? CP.getSrcReg() : CP.getDstReg(); 1887 unsigned DstReg = CP.isFlipped() ? CP.getSrcReg() : CP.getDstReg(); 1887 unsigned DstReg = CP.isFlipped() ? CP.getSrcReg() : CP.getDstReg(); 1899 if (!CP.isPartial() && !CP.isPhys()) 1899 if (!CP.isPartial() && !CP.isPhys()) 1900 if (removePartialRedundancy(CP, *CopyMI)) 1911 if (CP.isCrossClass()) { 1913 MRI->setRegClass(CP.getDstReg(), CP.getNewRC()); 1913 MRI->setRegClass(CP.getDstReg(), CP.getNewRC()); 1918 if (!CP.isPhys() && RegClassInfo.isProperSubClass(CP.getNewRC())) 1918 if (!CP.isPhys() && RegClassInfo.isProperSubClass(CP.getNewRC())) 1919 InflateRegs.push_back(CP.getDstReg()); 1928 if (CP.getDstIdx()) 1929 updateRegDefsUses(CP.getDstReg(), CP.getDstReg(), CP.getDstIdx()); 1929 updateRegDefsUses(CP.getDstReg(), CP.getDstReg(), CP.getDstIdx()); 1929 updateRegDefsUses(CP.getDstReg(), CP.getDstReg(), CP.getDstIdx()); 1930 updateRegDefsUses(CP.getSrcReg(), CP.getDstReg(), CP.getSrcIdx()); 1930 updateRegDefsUses(CP.getSrcReg(), CP.getDstReg(), CP.getSrcIdx()); 1930 updateRegDefsUses(CP.getSrcReg(), CP.getDstReg(), CP.getSrcIdx()); 1934 LiveInterval &LI = LIS->getInterval(CP.getDstReg()); 1948 if (ToBeUpdated.count(CP.getSrcReg())) 1952 LiveInterval &LI = LIS->getInterval(CP.getDstReg()); 1958 LIS->removeInterval(CP.getSrcReg()); 1961 TRI->updateRegAllocHint(CP.getSrcReg(), CP.getDstReg(), *MF); 1961 TRI->updateRegAllocHint(CP.getSrcReg(), CP.getDstReg(), *MF); 1964 dbgs() << "\tSuccess: " << printReg(CP.getSrcReg(), TRI, CP.getSrcIdx()) 1964 dbgs() << "\tSuccess: " << printReg(CP.getSrcReg(), TRI, CP.getSrcIdx()) 1965 << " -> " << printReg(CP.getDstReg(), TRI, CP.getDstIdx()) << '\n'; 1965 << " -> " << printReg(CP.getDstReg(), TRI, CP.getDstIdx()) << '\n'; 1967 if (CP.isPhys()) 1968 dbgs() << printReg(CP.getDstReg(), TRI); 1970 dbgs() << LIS->getInterval(CP.getDstReg());