/external/llvm/lib/Target/Hexagon/ |
D | RDFDeadCode.cpp | 73 if (!DFG.IsCode<NodeAttrs::Stmt>(IA)) in scanInstr() 77 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) { in scanInstr() 85 NodeAddr<InstrNode*> IA = DA.Addr->getOwner(DFG); in processDef() 86 for (NodeAddr<UseNode*> UA : IA.Addr->members_if(DFG.IsUse, DFG)) { in processDef() 90 for (NodeAddr<DefNode*> TA : DFG.getRelatedRefs(IA, DA)) in processDef() 117 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) in collect() 118 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) in collect() 124 auto RA = DFG.addr<RefNode*>(N); in collect() 125 if (DFG.IsDef(RA)) in collect() 134 auto RA = DFG.addr<RefNode*>(N); in collect() [all …]
|
D | RDFLiveness.cpp | 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() [all …]
|
D | RDFCopy.cpp | 40 MachineRegisterInfo &MRI = DFG.getMF().getRegInfo(); in interpretAsCopy() 46 const TargetRegisterInfo &TRI = DFG.getTRI(); in interpretAsCopy() 61 const TargetInstrInfo &TII = DFG.getTII(); in interpretAsCopy() 65 unsigned S = DFG.getTRI().composeSubRegIndices(DefR.Sub, I.SubIdx); in interpretAsCopy() 94 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) in updateMap() 119 auto BA = DFG.getFunc().Addr->findBlock(B, DFG); in scanBlock() 120 DFG.markBlock(BA.Id, DefM); in scanBlock() 122 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) { in scanBlock() 123 if (DFG.IsCode<NodeAttrs::Stmt>(IA)) { in scanBlock() 131 DFG.pushDefs(IA, DefM); in scanBlock() [all …]
|
D | HexagonOptAddrMode.cpp | 51 : MachineFunctionPass(ID), HII(0), MDT(0), DFG(0), LV(0) { in HexagonOptAddrMode() 71 DataFlowGraph *DFG; member in __anon6cb9dbc50111::HexagonOptAddrMode 150 for (NodeAddr<UseNode *> UA : AddAslSN.Addr->members_if(DFG->IsUse, *DFG)) { in canRemoveAddasl() 160 NodeAddr<InstrNode *> IA = UA.Addr->getOwner(*DFG); in canRemoveAddasl() 166 NodeAddr<DefNode *> OffsetRegDN = DFG->addr<DefNode *>(OffsetRegRD); in canRemoveAddasl() 201 NodeAddr<UseNode *> DA = DFG->addr<UseNode *>(DI); in allValidCandidates() 202 NodeAddr<StmtNode *> TempIA = DA.Addr->getOwner(*DFG); in allValidCandidates() 204 << Print<NodeAddr<InstrNode *>>(TempIA, *DFG) << "\n"; in allValidCandidates() 215 for (NodeAddr<DefNode *> DA : SA.Addr->members_if(DFG->IsDef, *DFG)) { in getAllRealUses() 216 DEBUG(dbgs() << "\t\t[DefNode]: " << Print<NodeAddr<DefNode *>>(DA, *DFG) in getAllRealUses() [all …]
|
D | HexagonRDFOpt.cpp | 145 DataFlowGraph &DFG = getDFG(); in run() local 147 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { in run() 148 for (auto TA : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Stmt>, DFG)) { in run() 150 for (NodeAddr<RefNode*> RA : SA.Addr->members(DFG)) { in run() 152 if (DFG.IsDef(RA) && DeadNodes.count(RA.Id)) in run() 165 auto SA = DFG.addr<StmtNode*>(N); in run() 204 DataFlowGraph &DFG = getDFG(); in rewrite() local 206 auto &HII = static_cast<const HexagonInstrInfo&>(DFG.getTII()); in rewrite() 244 for (NodeAddr<DefNode*> DA : IA.Addr->members_if(DFG.IsDef, DFG)) { in rewrite() 247 Defs = DFG.getRelatedRefs(IA, DA); in rewrite()
|
D | RDFDeadCode.h | 37 : Trace(false), DFG(dfg), MRI(mri), LV(mri, dfg) {} in DeadCodeElimination() 46 DataFlowGraph &getDFG() { return DFG; } in getDFG() 53 DataFlowGraph &DFG; member
|
D | RDFCopy.h | 24 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation() 37 DataFlowGraph &DFG; member
|
D | RDFLiveness.h | 37 : DFG(g), TRI(g.getTRI()), MDT(g.getDT()), MDF(g.getDF()), in Liveness() 64 const DataFlowGraph &DFG;
|
/external/llvm-project/llvm/lib/Target/Hexagon/ |
D | RDFDeadCode.cpp | 71 for (unsigned R = 0, RN = DFG.getTRI().getNumRegs(); R != RN; ++R) { in isLiveInstr() 84 if (!DFG.IsCode<NodeAttrs::Stmt>(IA)) in scanInstr() 88 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) { in scanInstr() 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() 128 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) in collect() 129 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) in collect() 135 auto RA = DFG.addr<RefNode*>(N); in collect() 136 if (DFG.IsDef(RA)) in collect() [all …]
|
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() 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() [all …]
|
D | HexagonRDFOpt.cpp | 117 DataFlowGraph &DFG = getDFG(); in INITIALIZE_PASS_DEPENDENCY() local 125 mapRegs(DFG.makeRegRef(DstOp.getReg(), Hexagon::isub_hi), in INITIALIZE_PASS_DEPENDENCY() 126 DFG.makeRegRef(HiOp.getReg(), HiOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 127 mapRegs(DFG.makeRegRef(DstOp.getReg(), Hexagon::isub_lo), in INITIALIZE_PASS_DEPENDENCY() 128 DFG.makeRegRef(LoOp.getReg(), LoOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 140 mapRegs(DFG.makeRegRef(DstOp.getReg(), DstOp.getSubReg()), in INITIALIZE_PASS_DEPENDENCY() 141 DFG.makeRegRef(SrcOp.getReg(), SrcOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 161 DataFlowGraph &DFG = getDFG(); in run() local 163 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { in run() 164 for (auto TA : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Stmt>, DFG)) { in run() [all …]
|
D | HexagonOptAddrMode.cpp | 86 DataFlowGraph *DFG = nullptr; member in __anon413928f30111::HexagonOptAddrMode 169 for (NodeAddr<UseNode *> UA : AddAslSN.Addr->members_if(DFG->IsUse, *DFG)) { in canRemoveAddasl() 170 RegisterRef RR = UA.Addr->getRegRef(*DFG); in canRemoveAddasl() 179 NodeAddr<InstrNode *> IA = UA.Addr->getOwner(*DFG); in canRemoveAddasl() 183 if ((DFG->IsDef(AA) && AA.Id != OffsetRegRD) || in canRemoveAddasl() 188 NodeAddr<DefNode *> OffsetRegDN = DFG->addr<DefNode *>(OffsetRegRD); in canRemoveAddasl() 216 RegisterRef UR = UN.Addr->getRegRef(*DFG); in allValidCandidates() 222 << PrintNode<UseNode*>(UN, *DFG) << '\n' in allValidCandidates() 232 NodeAddr<UseNode *> DA = DFG->addr<UseNode *>(DI); in allValidCandidates() 233 NodeAddr<StmtNode *> TempIA = DA.Addr->getOwner(*DFG); in allValidCandidates() [all …]
|
D | RDFCopy.h | 28 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation() 36 DataFlowGraph &getDFG() { return DFG; } in getDFG() 44 DataFlowGraph &DFG; member
|
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
|
/external/swiftshader/third_party/llvm-10.0/llvm/lib/Target/Hexagon/ |
D | RDFDeadCode.cpp | 71 for (unsigned R = 0, RN = DFG.getTRI().getNumRegs(); R != RN; ++R) { in isLiveInstr() 84 if (!DFG.IsCode<NodeAttrs::Stmt>(IA)) in scanInstr() 88 for (NodeAddr<RefNode*> RA : IA.Addr->members(DFG)) { in scanInstr() 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() 128 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) in collect() 129 for (NodeAddr<InstrNode*> IA : BA.Addr->members(DFG)) in collect() 135 auto RA = DFG.addr<RefNode*>(N); in collect() 136 if (DFG.IsDef(RA)) in collect() [all …]
|
D | RDFLiveness.cpp | 125 auto SNA = DFG.addr<RefNode*>(Start); in getAllReachingDefs() 129 for (auto S : DFG.getRelatedRefs(RefA.Addr->getOwner(DFG), RefA)) in getAllReachingDefs() 141 auto TA = DFG.addr<DefNode*>(DefQ[i]); in getAllReachingDefs() 145 RegisterRef RR = TA.Addr->getRegRef(DFG); in getAllReachingDefs() 146 if (!DFG.IsPreservingDef(TA)) in getAllReachingDefs() 151 for (auto S : DFG.getRelatedRefs(TA.Addr->getOwner(DFG), TA)) in getAllReachingDefs() 160 auto TA = DFG.addr<DefNode*>(N); in getAllReachingDefs() 162 if (!IsPhi && !PRI.alias(RefRR, TA.Addr->getRegRef(DFG))) in getAllReachingDefs() 165 Owners.insert(TA.Addr->getOwner(DFG).Id); in getAllReachingDefs() 174 NodeAddr<BlockNode*> BA = PA.Addr->getOwner(DFG); in getAllReachingDefs() [all …]
|
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() 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() [all …]
|
D | HexagonRDFOpt.cpp | 117 DataFlowGraph &DFG = getDFG(); in INITIALIZE_PASS_DEPENDENCY() local 125 mapRegs(DFG.makeRegRef(DstOp.getReg(), Hexagon::isub_hi), in INITIALIZE_PASS_DEPENDENCY() 126 DFG.makeRegRef(HiOp.getReg(), HiOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 127 mapRegs(DFG.makeRegRef(DstOp.getReg(), Hexagon::isub_lo), in INITIALIZE_PASS_DEPENDENCY() 128 DFG.makeRegRef(LoOp.getReg(), LoOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 140 mapRegs(DFG.makeRegRef(DstOp.getReg(), DstOp.getSubReg()), in INITIALIZE_PASS_DEPENDENCY() 141 DFG.makeRegRef(SrcOp.getReg(), SrcOp.getSubReg())); in INITIALIZE_PASS_DEPENDENCY() 161 DataFlowGraph &DFG = getDFG(); in run() local 163 for (NodeAddr<BlockNode*> BA : DFG.getFunc().Addr->members(DFG)) { in run() 164 for (auto TA : BA.Addr->members_if(DFG.IsCode<NodeAttrs::Stmt>, DFG)) { in run() [all …]
|
D | HexagonOptAddrMode.cpp | 86 DataFlowGraph *DFG = nullptr; member in __anon19d09ae70111::HexagonOptAddrMode 169 for (NodeAddr<UseNode *> UA : AddAslSN.Addr->members_if(DFG->IsUse, *DFG)) { in canRemoveAddasl() 170 RegisterRef RR = UA.Addr->getRegRef(*DFG); in canRemoveAddasl() 179 NodeAddr<InstrNode *> IA = UA.Addr->getOwner(*DFG); in canRemoveAddasl() 183 if ((DFG->IsDef(AA) && AA.Id != OffsetRegRD) || in canRemoveAddasl() 188 NodeAddr<DefNode *> OffsetRegDN = DFG->addr<DefNode *>(OffsetRegRD); in canRemoveAddasl() 216 RegisterRef UR = UN.Addr->getRegRef(*DFG); in allValidCandidates() 222 << PrintNode<UseNode*>(UN, *DFG) << '\n' in allValidCandidates() 232 NodeAddr<UseNode *> DA = DFG->addr<UseNode *>(DI); in allValidCandidates() 233 NodeAddr<StmtNode *> TempIA = DA.Addr->getOwner(*DFG); in allValidCandidates() [all …]
|
D | RDFCopy.h | 28 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation() 36 DataFlowGraph &getDFG() { return DFG; } in getDFG() 44 DataFlowGraph &DFG; member
|
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
|
D | RDFLiveness.h | 55 : DFG(g), TRI(g.getTRI()), PRI(g.getPRI()), MDT(g.getDT()), in Liveness() 62 return getAllReachingDefs(RefA.Addr->getRegRef(DFG), RefA, false, in getAllReachingDefs() 100 const DataFlowGraph &DFG;
|
/external/llvm-project/llvm/lib/CodeGen/ |
D | RDFLiveness.cpp | 128 auto SNA = DFG.addr<RefNode*>(Start); in getAllReachingDefs() 132 for (auto S : DFG.getRelatedRefs(RefA.Addr->getOwner(DFG), RefA)) in getAllReachingDefs() 144 auto TA = DFG.addr<DefNode*>(DefQ[i]); in getAllReachingDefs() 148 RegisterRef RR = TA.Addr->getRegRef(DFG); in getAllReachingDefs() 149 if (!DFG.IsPreservingDef(TA)) in getAllReachingDefs() 154 for (auto S : DFG.getRelatedRefs(TA.Addr->getOwner(DFG), TA)) in getAllReachingDefs() 168 NodeAddr<BlockNode*> BA = PA.Addr->getOwner(DFG); in getAllReachingDefs() 179 auto TA = DFG.addr<DefNode*>(N); in getAllReachingDefs() 181 if (!IsPhi && !PRI.alias(RefRR, TA.Addr->getRegRef(DFG))) in getAllReachingDefs() 184 NodeAddr<InstrNode*> IA = TA.Addr->getOwner(DFG); in getAllReachingDefs() [all …]
|
/external/llvm-project/llvm/lib/Target/X86/ |
D | X86LoadValueInjectionLoadHardening.cpp | 334 DataFlowGraph DFG{MF, *TII, *TRI, MDT, MDF, TOI}; in getGadgetGraph() local 335 DFG.build(); in getGadgetGraph() 336 Liveness L{MF.getRegInfo(), DFG}; in getGadgetGraph() 370 RegisterRef DefReg = Def.Addr->getRegRef(DFG); in getGadgetGraph() 372 auto Use = DFG.addr<UseNode *>(UseID); in getGadgetGraph() 374 NodeAddr<PhiNode *> Phi = Use.Addr->getOwner(DFG); in getGadgetGraph() 376 if (DFG.getPRI().alias(RegisterRef(I.first), DefReg)) { in getGadgetGraph() 393 auto Use = DFG.addr<UseNode *>(UseID); in getGadgetGraph() 410 Transmitters[Def.Id].push_back(Use.Addr->getOwner(DFG).Id); in getGadgetGraph() 418 NodeAddr<InstrNode *> Owner{Use.Addr->getOwner(DFG)}; in getGadgetGraph() [all …]
|
/external/llvm-project/llvm/include/llvm/CodeGen/ |
D | RDFLiveness.h | 80 : DFG(g), TRI(g.getTRI()), PRI(g.getPRI()), MDT(g.getDT()), 87 return getAllReachingDefs(RefA.Addr->getRegRef(DFG), RefA, false, 125 const DataFlowGraph &DFG;
|