Lines Matching refs:NodeAddr
91 bool processBlock(NodeAddr<BlockNode *> BA);
93 NodeAddr<UseNode *> UseN, unsigned UseMOnum);
94 bool processAddUses(NodeAddr<StmtNode *> AddSN, MachineInstr *AddMI,
100 bool canRemoveAddasl(NodeAddr<StmtNode *> AddAslSN, MachineInstr &MI,
102 bool isSafeToExtLR(NodeAddr<StmtNode *> SN, MachineInstr *MI,
104 void getAllRealUses(NodeAddr<StmtNode *> SN, NodeList &UNodeList);
105 bool allValidCandidates(NodeAddr<StmtNode *> SA, NodeList &UNodeList);
110 bool changeAddAsl(NodeAddr<UseNode *> AddAslUN, MachineInstr *AddAslMI,
160 bool HexagonOptAddrMode::canRemoveAddasl(NodeAddr<StmtNode *> AddAslSN, in canRemoveAddasl()
171 for (NodeAddr<UseNode *> UA : AddAslSN.Addr->members_if(DFG->IsUse, *DFG)) { in canRemoveAddasl()
180 NodeAddr<UseNode *> UA = *I; in canRemoveAddasl()
181 NodeAddr<InstrNode *> IA = UA.Addr->getOwner(*DFG); in canRemoveAddasl()
184 NodeAddr<RefNode*> AA = LV->getNearestAliasedRef(OffsetRR, IA); in canRemoveAddasl()
189 MachineInstr &UseMI = *NodeAddr<StmtNode *>(IA).Addr->getCode(); in canRemoveAddasl()
190 NodeAddr<DefNode *> OffsetRegDN = DFG->addr<DefNode *>(OffsetRegRD); in canRemoveAddasl()
214 bool HexagonOptAddrMode::allValidCandidates(NodeAddr<StmtNode *> SA, in allValidCandidates()
217 NodeAddr<UseNode *> UN = *I; in allValidCandidates()
234 NodeAddr<UseNode *> DA = DFG->addr<UseNode *>(DI); in allValidCandidates()
235 NodeAddr<StmtNode *> TempIA = DA.Addr->getOwner(*DFG); in allValidCandidates()
237 << Print<NodeAddr<InstrNode *>>(TempIA, *DFG) << "\n"; in allValidCandidates()
246 void HexagonOptAddrMode::getAllRealUses(NodeAddr<StmtNode *> SA, in getAllRealUses()
248 for (NodeAddr<DefNode *> DA : SA.Addr->members_if(DFG->IsDef, *DFG)) { in getAllRealUses()
250 << Print<NodeAddr<DefNode *>>(DA, *DFG) << "\n"); in getAllRealUses()
256 NodeAddr<UseNode *> UA = DFG->addr<UseNode *>(UI); in getAllRealUses()
258 NodeAddr<StmtNode *> TempIA = UA.Addr->getOwner(*DFG); in getAllRealUses()
260 << Print<NodeAddr<InstrNode *>>(TempIA, *DFG) << "\n"; in getAllRealUses()
264 NodeAddr<PhiNode *> PA = UA.Addr->getOwner(*DFG); in getAllRealUses()
275 NodeAddr<UseNode *> phiUA = DFG->addr<UseNode *>(phiUI.first); in getAllRealUses()
286 bool HexagonOptAddrMode::isSafeToExtLR(NodeAddr<StmtNode *> SN, in isSafeToExtLR()
293 for (NodeAddr<UseNode *> UA : SN.Addr->members_if(DFG->IsUse, *DFG)) { in isSafeToExtLR()
302 NodeAddr<UseNode *> UA = *I; in isSafeToExtLR()
303 NodeAddr<InstrNode *> IA = UA.Addr->getOwner(*DFG); in isSafeToExtLR()
308 NodeAddr<RefNode*> AA = LV->getNearestAliasedRef(LRExtRR, IA); in isSafeToExtLR()
322 MachineInstr *UseMI = NodeAddr<StmtNode *>(IA).Addr->getCode(); in isSafeToExtLR()
323 NodeAddr<DefNode *> LRExtRegDN = DFG->addr<DefNode *>(LRExtRegRD); in isSafeToExtLR()
415 bool HexagonOptAddrMode::processAddUses(NodeAddr<StmtNode *> AddSN, in processAddUses()
422 NodeAddr<UseNode *> UN = *I; in processAddUses()
423 NodeAddr<StmtNode *> SN = UN.Addr->getOwner(*DFG); in processAddUses()
457 for (NodeAddr<UseNode *> UA : AddSN.Addr->members_if(DFG->IsUse, *DFG)) { in processAddUses()
467 NodeAddr<UseNode *> UseN = *I; in processAddUses()
471 NodeAddr<StmtNode *> OwnerN = UseN.Addr->getOwner(*DFG); in processAddUses()
480 NodeAddr<DefNode *> LRExtRegDN = DFG->addr<DefNode *>(LRExtRegRD); in processAddUses()
517 NodeAddr<UseNode *> UN = *I; in analyzeUses()
518 NodeAddr<StmtNode *> SN = UN.Addr->getOwner(*DFG); in analyzeUses()
680 bool HexagonOptAddrMode::changeAddAsl(NodeAddr<UseNode *> AddAslUN, in changeAddAsl()
684 NodeAddr<StmtNode *> SA = AddAslUN.Addr->getOwner(*DFG); in changeAddAsl()
692 NodeAddr<UseNode *> UseUN = *I; in changeAddAsl()
696 NodeAddr<StmtNode *> UseIA = UseUN.Addr->getOwner(*DFG); in changeAddAsl()
698 << Print<NodeAddr<InstrNode *>>(UseIA, *DFG) << "\n"); in changeAddAsl()
746 NodeAddr<UseNode *> UseN, in xformUseMI()
764 bool HexagonOptAddrMode::processBlock(NodeAddr<BlockNode *> BA) { in processBlock()
771 NodeAddr<StmtNode *> SA = IA; in processBlock()
781 << Print<NodeAddr<InstrNode *>>(IA, *DFG) << '\n'); in processBlock()
821 NodeAddr<UseNode *> UseN = *I; in processBlock()
825 NodeAddr<StmtNode *> OwnerN = UseN.Addr->getOwner(*DFG); in processBlock()
878 NodeAddr<FuncNode *> FA = DFG->getFunc(); in runOnMachineFunction()
880 << Print<NodeAddr<FuncNode *>>(FA, *DFG) << "\n"); in runOnMachineFunction()
882 for (NodeAddr<BlockNode *> BA : FA.Addr->members(*DFG)) in runOnMachineFunction()