Lines Matching refs:DFG
96 auto SNA = DFG.addr<RefNode*>(Start); in getAllReachingDefs()
107 auto TA = DFG.addr<DefNode*>(DefQ[i]); in getAllReachingDefs()
119 for (auto S : DFG.getRelatedRefs(TA.Addr->getOwner(DFG), TA)) in getAllReachingDefs()
128 auto TA = DFG.addr<DefNode*>(N); in getAllReachingDefs()
133 Owners.insert(TA.Addr->getOwner(DFG).Id); in getAllReachingDefs()
142 NodeAddr<BlockNode*> BA = PA.Addr->getOwner(DFG); in getAllReachingDefs()
149 auto OA = DFG.addr<InstrNode*>(A), OB = DFG.addr<InstrNode*>(B); in getAllReachingDefs()
202 auto TA = DFG.addr<InstrNode*>(T); in getAllReachingDefs()
203 bool IsPhi = DFG.IsCode<NodeAttrs::Phi>(TA); in getAllReachingDefs()
205 for (NodeAddr<DefNode*> DA : TA.Addr->members_if(DefInSet, DFG)) { in getAllReachingDefs()
246 const auto DA = DFG.addr<const DefNode*>(D); in getAllReachingDefsRec()
266 NodeAddr<PhiNode*> PA = DA.Addr->getOwner(DFG); in getAllReachingDefsRec()
271 for (auto U : PA.Addr->members_if(DFG.IsRef<NodeAttrs::Use>, DFG)) { in getAllReachingDefsRec()
293 auto UA = DFG.addr<UseNode*>(U); in getAllReachedUses()
302 auto DA = DFG.addr<DefNode*>(D); in getAllReachedUses()
328 NodeAddr<FuncNode*> FA = DFG.getFunc(); in computePhiInfo()
329 auto Blocks = FA.Addr->members(DFG); in computePhiInfo()
331 auto Ps = BA.Addr->members_if(DFG.IsCode<NodeAttrs::Phi>, DFG); in computePhiInfo()
344 auto PhiRefs = PhiA.Addr->members(DFG); in computePhiInfo()
351 if (!DFG.IsRef<NodeAttrs::Def>(R)) in computePhiInfo()
357 NodeAddr<DefNode*> DA = DFG.addr<DefNode*>(DefQ[i]); in computePhiInfo()
360 NodeAddr<UseNode*> A = DFG.addr<UseNode*>(UN); in computePhiInfo()
367 NodeAddr<DefNode*> A = DFG.addr<DefNode*>(DN); in computePhiInfo()
368 for (auto T : DFG.getRelatedRefs(A.Addr->getOwner(DFG), A)) { in computePhiInfo()
401 auto UA = DFG.addr<UseNode*>(*I); in computePhiInfo()
425 if (!DFG.IsRef<NodeAttrs::Use>(I)) in computePhiInfo()
432 UpMap[DA.Addr->getOwner(DFG).Id] = DefRRs; in computePhiInfo()
442 dbgs() << "phi " << Print<NodeId>(I.first, DFG) << " -> {"; in computePhiInfo()
444 dbgs() << ' ' << Print<NodeId>(R.first, DFG) in computePhiInfo()
445 << Print<RegisterSet>(R.second, DFG); in computePhiInfo()
474 auto PA = DFG.addr<PhiNode*>(PhiUQ[i]); in computePhiInfo()
476 for (auto U : PA.Addr->members_if(DFG.IsRef<NodeAttrs::Use>, DFG)) { in computePhiInfo()
511 dbgs() << "phi " << Print<NodeId>(I.first, DFG); in computePhiInfo()
512 NodeAddr<PhiNode*> PA = DFG.addr<PhiNode*>(I.first); in computePhiInfo()
513 NodeList Ds = PA.Addr->members_if(DFG.IsRef<NodeAttrs::Def>, DFG); in computePhiInfo()
516 dbgs() << '<' << Print<RegisterRef>(RR, DFG) << '>'; in computePhiInfo()
520 dbgs() << " -> " << Print<RefMap>(I.second, DFG) << '\n'; in computePhiInfo()
530 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { in computeLiveIns()
532 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) { in computeLiveIns()
533 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) in computeLiveIns()
539 MachineFunction &MF = DFG.getMF(); in computeLiveIns()
564 NodeAddr<FuncNode*> FA = DFG.getFunc(); in computeLiveIns()
565 auto Blocks = FA.Addr->members(DFG); in computeLiveIns()
571 for (auto P : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Phi>, DFG)) in computeLiveIns()
580 << Print<RefMap>(I.second, DFG) << '\n'; in computeLiveIns()
587 auto Phis = BA.Addr->members_if(DFG.IsCode<NodeAttrs::Phi>, DFG); in computeLiveIns()
593 for (auto U : PA.Addr->members_if(DFG.IsRef<NodeAttrs::Use>, DFG)) { in computeLiveIns()
601 auto PrA = DFG.addr<BlockNode*>(UA.Addr->getPredecessor()); in computeLiveIns()
623 << Print<RefMap>(I.second, DFG) << '\n'; in computeLiveIns()
642 dbgs() << ' ' << Print<RegisterRef>({unsigned(x),0}, DFG); in computeLiveIns()
644 dbgs() << "\tcomp = " << Print<RegisterSet>(LiveMap[&B], DFG) << '\n'; in computeLiveIns()
651 for (auto &B : DFG.getMF()) { in resetLiveIns()
669 for (auto &B : DFG.getMF()) in resetKills()
735 for (NodeAddr<RefNode*> TA = DFG.getNextShadow(IA, RA); in isRestricted()
736 TA.Id != 0 && TA.Id != Start; TA = DFG.getNextShadow(IA, TA)) { in isRestricted()
740 if (RAI.alias(RR, DFG.addr<DefNode*>(RD).Addr->getRegRef())) in isRestricted()
748 assert(DFG.IsRef<NodeAttrs::Use>(RA)); in getRestrictedRegRef()
752 RA = DFG.addr<DefNode*>(RD); in getRestrictedRegRef()
815 dbgs() << "\n LiveIn: " << Print<RefMap>(LiveIn, DFG); in traverse()
816 dbgs() << "\n Local: " << Print<RegisterSet>(LiveMap[B], DFG) << '\n'; in traverse()
826 dbgs() << " LiveIn: " << Print<RefMap>(LiveIn, DFG) << '\n'; in traverse()
827 dbgs() << " Local: " << Print<RegisterSet>(LiveMap[B], DFG) << '\n'; in traverse()
840 auto DA = DFG.addr<DefNode*>(R); in traverse()
842 NodeAddr<InstrNode*> IA = DA.Addr->getOwner(DFG); in traverse()
843 NodeAddr<BlockNode*> BA = IA.Addr->getOwner(DFG); in traverse()
855 auto DUA = DFG.addr<UseNode*>(U); in traverse()
868 auto DA = DFG.addr<DefNode*>(R); in traverse()
872 NodeAddr<InstrNode*> IA = TA.Addr->getOwner(DFG); in traverse()
873 NodeAddr<BlockNode*> BA = IA.Addr->getOwner(DFG); in traverse()
890 dbgs() << " LiveIn: " << Print<RefMap>(LiveIn, DFG) << '\n'; in traverse()
891 dbgs() << " Local: " << Print<RegisterSet>(LiveMap[B], DFG) << '\n'; in traverse()
895 for (auto I : DFG.getFunc().Addr->findBlock(B, DFG).Addr->members(DFG)) { in traverse()
899 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) { in traverse()
909 dbgs() << " LiveIn: " << Print<RefMap>(LiveIn, DFG) << '\n'; in traverse()
910 dbgs() << " Local: " << Print<RegisterSet>(LiveMap[B], DFG) << '\n'; in traverse()
922 dbgs() << " LiveIn: " << Print<RefMap>(LiveIn, DFG) << '\n'; in traverse()
923 dbgs() << " Local: " << Print<RegisterSet>(Local, DFG) << '\n'; in traverse()