Home | History | Annotate | Download | only in Hexagon

Lines Matching refs:IA

71 void DeadCodeElimination::scanInstr(NodeAddr<InstrNode*> IA,
73 if (!DFG.IsCode<NodeAttrs::Stmt>(IA))
75 if (!isLiveInstr(NodeAddr<StmtNode*>(IA).Addr->getCode()))
77 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) {
85 NodeAddr<InstrNode*> IA = DA.Addr->getOwner(DFG);
86 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) {
90 for (NodeAddr<DefNode*> TA : DFG.getRelatedRefs(IA, DA))
118 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG))
119 scanInstr(IA, WorkQ);
139 auto IsDead = [this] (NodeAddr<InstrNode*> IA) -> bool {
140 for (NodeAddr<DefNode*> DA : IA.Addr->members_if(DFG.IsDef, DFG))
147 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) {
148 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG))
151 if (DFG.IsCode<NodeAttrs::Stmt>(IA))
152 if (isLiveInstr(NodeAddr<StmtNode*>(IA).Addr->getCode()))
154 if (IsDead(IA)) {
155 DeadInstrs.insert(IA.Id);
157 dbgs() << "Dead instr: " << PrintNode<InstrNode*>(IA, DFG) << "\n";
220 for (NodeAddr<InstrNode*> IA : DINs) {
221 NodeAddr<BlockNode*> BA = IA.Addr->getOwner(DFG);
222 BA.Addr->removeMember(IA, DFG);
223 if (!DFG.IsCode<NodeAttrs::Stmt>(IA))
226 MachineInstr *MI = NodeAddr<StmtNode*>(IA).Addr->getCode();