Lines Matching refs:NodeAddr

82 void DeadCodeElimination::scanInstr(NodeAddr<InstrNode*> IA,  in scanInstr()
86 if (!isLiveInstr(NodeAddr<StmtNode*>(IA).Addr->getCode())) in scanInstr()
88 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) { in scanInstr()
94 void DeadCodeElimination::processDef(NodeAddr<DefNode*> DA, in processDef()
96 NodeAddr<InstrNode*> IA = DA.Addr->getOwner(DFG); in processDef()
97 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) { in processDef()
101 for (NodeAddr<DefNode*> TA : DFG.getRelatedRefs(IA, DA)) in processDef()
105 void DeadCodeElimination::processUse(NodeAddr<UseNode*> UA, in processUse()
107 for (NodeAddr<DefNode*> DA : LV.getAllReachingDefs(UA)) { in processUse()
128 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) in collect()
129 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) in collect()
150 auto IsDead = [this] (NodeAddr<InstrNode*> IA) -> bool { in collect()
151 for (NodeAddr<DefNode*> DA : IA.Addr->members_if(DFG.IsDef, DFG)) in collect()
157 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { in collect()
158 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) { in collect()
159 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) in collect()
163 if (isLiveInstr(NodeAddr<StmtNode*>(IA).Addr->getCode())) in collect()
198 append_range(DRNs, NodeAddr<CodeNode*>(BA).Addr->members(DFG)); in erase()
208 auto UsesFirst = [] (NodeAddr<RefNode*> A, NodeAddr<RefNode*> B) -> bool { in erase()
220 for (NodeAddr<RefNode*> RA : DRNs) { in erase()
230 for (NodeAddr<InstrNode*> IA : DINs) { in erase()
231 NodeAddr<BlockNode*> BA = IA.Addr->getOwner(DFG); in erase()
236 MachineInstr *MI = NodeAddr<StmtNode*>(IA).Addr->getCode(); in erase()