Lines Matching refs:HexagonSplitDoubleRegs
44 class HexagonSplitDoubleRegs : public MachineFunctionPass { class
47 HexagonSplitDoubleRegs() : MachineFunctionPass(ID), TRI(nullptr), in HexagonSplitDoubleRegs() function in __anon50e8d8320111::HexagonSplitDoubleRegs
102 char HexagonSplitDoubleRegs::ID;
103 int HexagonSplitDoubleRegs::Counter = 0;
104 const TargetRegisterClass *const HexagonSplitDoubleRegs::DoubleRC
108 INITIALIZE_PASS(HexagonSplitDoubleRegs, "hexagon-split-double",
124 void HexagonSplitDoubleRegs::dump_partition(raw_ostream &os, in dump_partition()
133 bool HexagonSplitDoubleRegs::isInduction(unsigned Reg, LoopRegMap &IRM) const { in isInduction()
143 bool HexagonSplitDoubleRegs::isVolatileInstr(const MachineInstr *MI) const { in isVolatileInstr()
151 bool HexagonSplitDoubleRegs::isFixedInstr(const MachineInstr *MI) const { in isFixedInstr()
211 void HexagonSplitDoubleRegs::partitionRegisters(UUSetMap &P2Rs) { in partitionRegisters()
313 int32_t HexagonSplitDoubleRegs::profit(const MachineInstr *MI) const { in profit()
388 bool HexagonSplitDoubleRegs::isProfitable(const USet &Part, LoopRegMap &IRM) in isProfitable()
443 void HexagonSplitDoubleRegs::collectIndRegsForLoop(const MachineLoop *L, in collectIndRegsForLoop()
539 void HexagonSplitDoubleRegs::collectIndRegs(LoopRegMap &IRM) { in collectIndRegs()
561 void HexagonSplitDoubleRegs::createHalfInstr(unsigned Opc, MachineInstr *MI, in createHalfInstr()
596 void HexagonSplitDoubleRegs::splitMemRef(MachineInstr *MI, in splitMemRef()
669 void HexagonSplitDoubleRegs::splitImmediate(MachineInstr *MI, in splitImmediate()
697 void HexagonSplitDoubleRegs::splitCombine(MachineInstr *MI, in splitCombine()
730 void HexagonSplitDoubleRegs::splitExt(MachineInstr *MI, in splitExt()
751 void HexagonSplitDoubleRegs::splitShift(MachineInstr *MI, in splitShift()
875 void HexagonSplitDoubleRegs::splitAslOr(MachineInstr *MI, in splitAslOr()
968 bool HexagonSplitDoubleRegs::splitInstr(MachineInstr *MI, in splitInstr()
1051 void HexagonSplitDoubleRegs::replaceSubregUses(MachineInstr *MI, in replaceSubregUses()
1074 void HexagonSplitDoubleRegs::collapseRegPairs(MachineInstr *MI, in collapseRegPairs()
1102 bool HexagonSplitDoubleRegs::splitPartition(const USet &Part) { in splitPartition()
1163 bool HexagonSplitDoubleRegs::runOnMachineFunction(MachineFunction &MF) { in runOnMachineFunction()
1208 return new HexagonSplitDoubleRegs(); in createHexagonSplitDoubleRegs()