reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
71 for (unsigned R = 0, RN = DFG.getTRI().getNumRegs(); R != RN; ++R) { 84 if (!DFG.IsCode<NodeAttrs::Stmt>(IA)) 88 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) { 96 NodeAddr<InstrNode*> IA = DA.Addr->getOwner(DFG); 97 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) { 97 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) { 101 for (NodeAddr<DefNode*> TA : DFG.getRelatedRefs(IA, DA)) 128 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) 128 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) 129 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) 135 auto RA = DFG.addr<RefNode*>(N); 136 if (DFG.IsDef(RA)) 145 auto RA = DFG.addr<RefNode*>(N); 146 dbgs() << PrintNode<RefNode*>(RA, DFG) << "\n"; 151 for (NodeAddr<DefNode*> DA : IA.Addr->members_if(DFG.IsDef, DFG)) 151 for (NodeAddr<DefNode*> DA : IA.Addr->members_if(DFG.IsDef, DFG)) 157 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { 157 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { 158 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) { 159 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) 162 if (DFG.IsCode<NodeAttrs::Stmt>(IA)) 168 dbgs() << "Dead instr: " << PrintNode<InstrNode*>(IA, DFG) << "\n"; 188 auto BA = DFG.addr<NodeBase*>(I); 191 DRNs.push_back(DFG.addr<RefNode*>(I)); 198 for (auto N : NodeAddr<CodeNode*>(BA).Addr->members(DFG)) 200 DINs.push_back(DFG.addr<InstrNode*>(I)); 223 dbgs() << " " << PrintNode<RefNode*>(RA, DFG) << '\n'; 224 if (DFG.IsUse(RA)) 225 DFG.unlinkUse(RA, true); 226 else if (DFG.IsDef(RA)) 227 DFG.unlinkDef(RA, true); 232 NodeAddr<BlockNode*> BA = IA.Addr->getOwner(DFG); 233 BA.Addr->removeMember(IA, DFG); 234 if (!DFG.IsCode<NodeAttrs::Stmt>(IA))lib/Target/Hexagon/RDFDeadCode.h
45 DataFlowGraph &getDFG() { return DFG; }