Home
last modified time | relevance | path

Searched refs:DFG (Results 1 – 25 of 28) sorted by relevance

12

/external/llvm/lib/Target/Hexagon/
DRDFDeadCode.cpp73 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 …]
DRDFLiveness.cpp96 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 …]
DRDFCopy.cpp40 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 …]
DHexagonOptAddrMode.cpp51 : 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 …]
DHexagonRDFOpt.cpp145 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()
DRDFDeadCode.h37 : Trace(false), DFG(dfg), MRI(mri), LV(mri, dfg) {} in DeadCodeElimination()
46 DataFlowGraph &getDFG() { return DFG; } in getDFG()
53 DataFlowGraph &DFG; member
DRDFCopy.h24 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation()
37 DataFlowGraph &DFG; member
DRDFLiveness.h37 : DFG(g), TRI(g.getTRI()), MDT(g.getDT()), MDF(g.getDF()), in Liveness()
64 const DataFlowGraph &DFG;
/external/llvm-project/llvm/lib/Target/Hexagon/
DRDFDeadCode.cpp71 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 …]
DRDFCopy.cpp46 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 …]
DHexagonRDFOpt.cpp117 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 …]
DHexagonOptAddrMode.cpp86 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 …]
DRDFCopy.h28 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation()
36 DataFlowGraph &getDFG() { return DFG; } in getDFG()
44 DataFlowGraph &DFG; member
DRDFDeadCode.h36 : 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/
DRDFDeadCode.cpp71 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 …]
DRDFLiveness.cpp125 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 …]
DRDFCopy.cpp46 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 …]
DHexagonRDFOpt.cpp117 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 …]
DHexagonOptAddrMode.cpp86 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 …]
DRDFCopy.h28 CopyPropagation(DataFlowGraph &dfg) : MDT(dfg.getDT()), DFG(dfg), in CopyPropagation()
36 DataFlowGraph &getDFG() { return DFG; } in getDFG()
44 DataFlowGraph &DFG; member
DRDFDeadCode.h36 : Trace(false), DFG(dfg), MRI(mri), LV(mri, dfg) {} in DeadCodeElimination()
45 DataFlowGraph &getDFG() { return DFG; } in getDFG()
52 DataFlowGraph &DFG; member
DRDFLiveness.h55 : 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/
DRDFLiveness.cpp128 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/
DX86LoadValueInjectionLoadHardening.cpp334 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/
DRDFLiveness.h80 : DFG(g), TRI(g.getTRI()), PRI(g.getPRI()), MDT(g.getDT()),
87 return getAllReachingDefs(RefA.Addr->getRegRef(DFG), RefA, false,
125 const DataFlowGraph &DFG;

12