Lines Matching refs:DFG
46 RegisterRef DstR = DFG.makeRegRef(Dst.getReg(), Dst.getSubReg()); in interpretAsCopy()
47 RegisterRef SrcR = DFG.makeRegRef(Src.getReg(), Src.getSubReg()); in interpretAsCopy()
50 const TargetRegisterInfo &TRI = DFG.getTRI(); in interpretAsCopy()
70 NodeAddr<BlockNode*> BA = DFG.findBlock(B); in scanBlock()
72 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) { in scanBlock()
73 if (DFG.IsCode<NodeAttrs::Stmt>(IA)) { in scanBlock()
102 scanBlock(&DFG.getMF().front()); in run()
107 dbgs() << "Instr: " << *DFG.addr<StmtNode*>(I).Addr->getCode(); in run()
110 dbgs() << ' ' << Print<RegisterRef>(J.first, DFG) << '=' in run()
111 << Print<RegisterRef>(J.second, DFG); in run()
122 const TargetRegisterInfo &TRI = DFG.getTRI(); in run()
138 auto SA = DFG.addr<InstrNode*>(C); in run()
144 for (NodeAddr<DefNode*> DA : SA.Addr->members_if(DFG.IsDef, DFG)) { in run()
145 RegisterRef DR = DA.Addr->getRegRef(DFG); in run()
156 auto UA = DFG.addr<UseNode*>(N); in run()
161 if (UA.Addr->getRegRef(DFG) != DR) in run()
164 NodeAddr<InstrNode*> IA = UA.Addr->getOwner(DFG); in run()
165 assert(DFG.IsCode<NodeAttrs::Stmt>(IA)); in run()
174 dbgs() << "Can replace " << Print<RegisterRef>(DR, DFG) in run()
175 << " with " << Print<RegisterRef>(SR, DFG) << " in " in run()
182 DFG.unlinkUse(UA, false); in run()
184 UA.Addr->linkToDef(UA.Id, DFG.addr<DefNode*>(AtCopy)); in run()