/freebsd/contrib/llvm-project/llvm/lib/Target/Hexagon/ |
H A D | RDFDeadCode.cpp | 72 for (unsigned R = 0, RN = DFG.getTRI().getNumRegs(); R != RN; ++R) { in isLiveInstr() 85 if (!DFG.IsCode<NodeAttrs::Stmt>(IA)) in scanInstr() 89 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) { in scanInstr() 97 NodeAddr<InstrNode*> IA = DA.Addr->getOwner(DFG); in processDef() 98 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) { in processDef() 102 for (NodeAddr<DefNode*> TA : DFG.getRelatedRefs(IA, DA)) in processDef() 129 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) in collect() 130 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) in collect() 136 auto RA = DFG.addr<RefNode*>(N); in collect() 137 if (DFG.IsDef(RA)) in collect() [all …]
|
H A D | RDFCopy.cpp | 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() 54 if (!DFG.isTracked(SrcR) || !DFG.isTracked(DstR)) in interpretAsCopy() 81 RegisterSet RRs(DFG.getPRI()); in updateMap() 82 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) in updateMap() 83 RRs.insert(RA.Addr->getRegRef(DFG)); in updateMap() 106 NodeAddr<BlockNode*> BA = DFG.findBlock(B); in scanBlock() 107 DFG.markBlock(BA.Id, DefM); in scanBlock() 109 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) { in scanBlock() [all …]
|
H A D | HexagonRDFOpt.cpp | 122 DataFlowGraph &DFG = getDFG(); in INITIALIZE_PASS_DEPENDENCY() local 130 mapRegs(DFG.makeRegRef(DstOp.getReg(), Hexagon::isub_hi), in INITIALIZE_PASS_DEPENDENCY() 131 DFG.makeRegRef(HiOp.getReg(), HiOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 132 mapRegs(DFG.makeRegRef(DstOp.getReg(), Hexagon::isub_lo), in INITIALIZE_PASS_DEPENDENCY() 133 DFG.makeRegRef(LoOp.getReg(), LoOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 145 mapRegs(DFG.makeRegRef(DstOp.getReg(), DstOp.getSubReg()), in INITIALIZE_PASS_DEPENDENCY() 146 DFG.makeRegRef(SrcOp.getReg(), SrcOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 166 DataFlowGraph &DFG = getDFG(); in run() local 168 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { in run() 169 for (auto TA : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Stmt>, DFG)) { in run() [all …]
|
H A D | HexagonOptAddrMode.cpp | 88 DataFlowGraph *DFG = nullptr; member in __anon8a08179c0111::HexagonOptAddrMode 173 for (NodeAddr<UseNode *> UA : AddAslSN.Addr->members_if(DFG->IsUse, *DFG)) { in canRemoveAddasl() 174 RegisterRef RR = UA.Addr->getRegRef(*DFG); in canRemoveAddasl() 183 NodeAddr<InstrNode *> IA = UA.Addr->getOwner(*DFG); in canRemoveAddasl() 187 if ((DFG->IsDef(AA) && AA.Id != OffsetRegRD) || in canRemoveAddasl() 192 NodeAddr<DefNode *> OffsetRegDN = DFG->addr<DefNode *>(OffsetRegRD); in canRemoveAddasl() 220 RegisterRef UR = UN.Addr->getRegRef(*DFG); in allValidCandidates() 226 << PrintNode<UseNode*>(UN, *DFG) << '\n' in allValidCandidates() 236 NodeAddr<UseNode *> DA = DFG->addr<UseNode *>(DI); in allValidCandidates() 237 NodeAddr<StmtNode *> TempIA = DA.Addr->getOwner(*DFG); in allValidCandidates() [all …]
|
H A D | RDFCopy.h | 28 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation() 29 RDefMap(std::less<RegisterRef>(DFG.getPRI())) {} in CopyPropagation() 36 DataFlowGraph &getDFG() { return DFG; } in getDFG() 43 DataFlowGraph &DFG; member
|
H A D | RDFDeadCode.h | 36 : Trace(false), DFG(dfg), MRI(mri), LV(mri, dfg) {} in DeadCodeElimination() 45 DataFlowGraph &getDFG() { return DFG; } in getDFG() 52 DataFlowGraph &DFG; member
|
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | RDFLiveness.cpp | 124 auto SNA = DFG.addr<RefNode *>(Start); in getAllReachingDefs() 128 for (auto S : DFG.getRelatedRefs(RefA.Addr->getOwner(DFG), RefA)) in getAllReachingDefs() 140 auto TA = DFG.addr<DefNode *>(DefQ[i]); in getAllReachingDefs() 144 RegisterRef RR = TA.Addr->getRegRef(DFG); in getAllReachingDefs() 145 if (!DFG.IsPreservingDef(TA)) in getAllReachingDefs() 150 for (auto S : DFG.getRelatedRefs(TA.Addr->getOwner(DFG), TA)) in getAllReachingDefs() 164 NodeAddr<BlockNode *> BA = PA.Addr->getOwner(DFG); in getAllReachingDefs() 175 auto TA = DFG.addr<DefNode *>(N); in getAllReachingDefs() 177 if (!IsPhi && !PRI.alias(RefRR, TA.Addr->getRegRef(DFG))) in getAllReachingDefs() 180 NodeAddr<InstrNode *> IA = TA.Addr->getOwner(DFG); in getAllReachingDefs() [all …]
|
/freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
H A D | X86LoadValueInjectionLoadHardening.cpp | 333 DataFlowGraph DFG{MF, *TII, *TRI, MDT, MDF}; in getGadgetGraph() local 334 DFG.build(); in getGadgetGraph() 335 Liveness L{MF.getRegInfo(), DFG}; in getGadgetGraph() 369 RegisterRef DefReg = Def.Addr->getRegRef(DFG); in getGadgetGraph() 371 auto Use = DFG.addr<UseNode *>(UseID); in getGadgetGraph() 373 NodeAddr<PhiNode *> Phi = Use.Addr->getOwner(DFG); in getGadgetGraph() 375 if (DFG.getPRI().alias(RegisterRef(I.first), DefReg)) { in getGadgetGraph() 392 auto Use = DFG.addr<UseNode *>(UseID); in getGadgetGraph() 409 Transmitters[Def.Id].push_back(Use.Addr->getOwner(DFG).Id); in getGadgetGraph() 417 NodeAddr<InstrNode *> Owner{Use.Addr->getOwner(DFG)}; in getGadgetGraph() [all …]
|
/freebsd/contrib/llvm-project/llvm/include/llvm/CodeGen/ |
H A D | RDFLiveness.h | 63 : DFG(g), TRI(g.getTRI()), PRI(g.getPRI()), MDT(g.getDT()), 71 return getAllReachingDefs(RefA.Addr->getRegRef(DFG), RefA, false, false, 111 const DataFlowGraph &DFG;
|