| /freebsd/contrib/llvm-project/llvm/include/llvm/ExecutionEngine/JITLink/ |
| H A D | EHFrameSupport.h | 51 Edge *getPersonalityEdge() const { in getPersonalityEdge() 61 Edge *getCIEEdge() const { return CIEEdge; } in getCIEEdge() 66 Edge *getPCBeginEdge() const { return PCBeginEdge; } in getPCBeginEdge() 70 Edge *getLSDAEdge() const { in getLSDAEdge() 76 EHFrameCFIBlockInspector(Edge *PersonalityEdge); 77 EHFrameCFIBlockInspector(Edge &CIEEdge, Edge &PCBeginEdge, Edge *LSDAEdge); 79 Edge *CIEEdge = nullptr; 80 Edge *PCBeginEdge = nullptr; 82 Edge *PersonalityEdge; 83 Edge *LSDAEdge;
|
| H A D | aarch32.h | 31 enum EdgeKind_aarch32 : Edge::Kind { 37 FirstDataRelocation = Edge::FirstRelocation, 124 LLVM_ABI const char *getEdgeKindName(Edge::Kind K); 177 LLVM_ABI static const FixupInfoBase *getDynFixupInfo(Edge::Kind K); 275 readAddendData(LinkGraph &G, Block &B, Edge::OffsetT Offset, Edge::Kind Kind); 279 Edge::OffsetT Offset, Edge::Kind Kind); 283 Edge::OffsetT Offset, 284 Edge::Kind Kind, 290 Edge::OffsetT Offset, Edge::Kind Kind, 306 LLVM_ABI Error applyFixupData(LinkGraph &G, Block &B, const Edge &E); [all …]
|
| H A D | x86.h | 23 enum EdgeKind_x86 : Edge::Kind { 34 Pointer32 = Edge::FirstRelocation, 181 LLVM_ABI const char *getEdgeKindName(Edge::Kind K); 184 inline Error applyFixup(LinkGraph &G, Block &B, const Edge &E, in applyFixup() 322 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge() 323 Edge::Kind KindToSet = Edge::Invalid; in visitEdge() 337 assert(KindToSet != Edge::Invalid && in visitEdge() 370 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge()
|
| H A D | ppc64.h | 24 enum EdgeKind_ppc64 : Edge::Kind { 25 Pointer64 = Edge::FirstRelocation, 84 Edge::Kind K; 86 Edge::AddendT A; 122 Edge::AddendT Addend = isLE ? 8 : 10; in pickStub() 164 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge() 165 Edge::Kind K = E.getKind(); in visitEdge() 211 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge() 213 Edge::Kind K = E.getKind(); in visitEdge() 263 LLVM_ABI const char *getEdgeKindName(Edge::Kind K); [all …]
|
| H A D | riscv.h | 25 enum EdgeKind_riscv : Edge::Kind { 33 R_RISCV_32 = Edge::FirstRelocation, 228 LLVM_ABI const char *getEdgeKindName(Edge::Kind K);
|
| H A D | x86_64.h | 25 enum EdgeKind_x86_64 : Edge::Kind { 32 Pointer64 = Edge::FirstRelocation, 436 LLVM_ABI const char *getEdgeKindName(Edge::Kind K); 439 inline Error applyFixup(LinkGraph &G, Block &B, const Edge &E, in applyFixup() 680 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge() 681 Edge::Kind KindToSet = Edge::Invalid; in visitEdge() 707 assert(KindToSet != Edge::Invalid && in visitEdge() 745 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/ |
| H A D | SampleProfileInference.cpp | 96 Edges = std::vector<std::vector<Edge>>(NodeCount, std::vector<Edge>()); in initialize() 99 std::vector<std::vector<Edge *>>(NodeCount, std::vector<Edge *>()); in initialize() 114 for (auto &Edge : Edges[Src]) { in run() local 115 if (Edge.Flow > 0) { in run() 116 TotalCost += Edge.Cost * Edge.Flow; in run() 118 TotalFlow += Edge.Flow; in run() 137 Edge SrcEdge; in addEdge() 144 Edge DstEdge; in addEdge() 164 for (const auto &Edge : Edges[Src]) { in getFlow() local 165 if (Edge.Flow > 0) in getFlow() [all …]
|
| H A D | CodeLayout.cpp | 325 void addEdge(ChainT *Other, ChainEdge *Edge) { in addEdge() 326 Edges.push_back(std::make_pair(Other, Edge)); in addEdge() 633 for (auto Edge : EdgeCounts) { in initialize() local 634 ++OutDegree[Edge.src]; in initialize() 636 if (Edge.src == Edge.dst) in initialize() 639 SuccNodes[Edge.src].push_back(Edge.dst); in initialize() 640 PredNodes[Edge.dst].push_back(Edge.src); in initialize() 641 if (Edge.count > 0) { in initialize() 642 NodeT &PredNode = AllNodes[Edge.src]; in initialize() 643 NodeT &SuccNode = AllNodes[Edge.dst]; in initialize() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/JITLink/ |
| H A D | EHFrameSupportImpl.h | 35 Edge::Kind Pointer32, Edge::Kind Pointer64, 36 Edge::Kind Delta32, Edge::Kind Delta64, 37 Edge::Kind NegDelta32); 60 EdgeTarget(const Edge &E) : Target(&E.getTarget()), Addend(E.getAddend()) {} in EdgeTarget() 63 Edge::AddendT Addend = 0; 67 DenseMap<Edge::OffsetT, EdgeTarget> TargetMap; 68 DenseSet<Edge::OffsetT> Multiple; 113 Edge::Kind Pointer32; 114 Edge::Kind Pointer64; 115 Edge::Kind Delta32; [all …]
|
| H A D | EHFrameSupport.cpp | 22 unsigned PointerSize, Edge::Kind Pointer32, in EHFrameEdgeFixer() 23 Edge::Kind Pointer64, Edge::Kind Delta32, in EHFrameEdgeFixer() 24 Edge::Kind Delta64, Edge::Kind NegDelta32) in EHFrameEdgeFixer() 367 (*PCBegin)->getBlock().addEdge(Edge::KeepAlive, 0, FDESymbol, 0); in processFDE() 573 Edge::Kind PtrEdgeKind = Edge::Invalid; in getOrCreateEncodedPointerEdge() 646 SmallVector<Edge *, 3> Es(llvm::make_pointer_range(B.edges())); in FromEdgeScan() 648 llvm::sort(Es, [](const Edge *LHS, const Edge *RHS) { in FromEdgeScan() 656 EHFrameCFIBlockInspector::EHFrameCFIBlockInspector(Edge *PersonalityEdge) in EHFrameCFIBlockInspector() 659 EHFrameCFIBlockInspector::EHFrameCFIBlockInspector(Edge &CIEEdge, in EHFrameCFIBlockInspector() 660 Edge &PCBeginEdge, in EHFrameCFIBlockInspector() [all …]
|
| H A D | aarch32.cpp | 239 Edge::Kind Kind) { in makeUnexpectedOpcodeError() 246 Edge::Kind Kind) { in makeUnexpectedOpcodeError() 278 const FixupInfoBase *getEntry(Edge::Kind K) { in getEntry() 314 Edge::Kind Kind) { in checkOpcode() 327 Edge::Kind Kind) { in checkOpcode() 339 const FixupInfoBase *FixupInfoBase::getDynFixupInfo(Edge::Kind K) { in getDynFixupInfo() 388 Expected<int64_t> readAddendData(LinkGraph &G, Block &B, Edge::OffsetT Offset, in readAddendData() 389 Edge::Kind Kind) { in readAddendData() 409 Expected<int64_t> readAddendArm(LinkGraph &G, Block &B, Edge::OffsetT Offset, in readAddendArm() 410 Edge::Kind Kind) { in readAddendArm() [all …]
|
| H A D | ELF_riscv.cpp | 47 bool isGOTEdgeToFix(Edge &E) const { return E.getKind() == R_RISCV_GOT_HI20; } in isGOTEdgeToFix() 66 void fixGOTEdge(Edge &E, Symbol &GOTEntry) { in fixGOTEdge() 74 void fixPLTEdge(Edge &E, Symbol &PLTStubs) { in fixPLTEdge() 82 bool isExternalBranchEdge(Edge &E) const { in isExternalBranchEdge() 161 DenseMap<std::pair<const Block *, orc::ExecutorAddrDiff>, const Edge *> 166 for (Edge &E : B->edges()) in gatherRISCVPCRelHi20() 173 Expected<const Edge &> getRISCVPCRelHi20(const Edge &E) const { in getRISCVPCRelHi20() 192 Error applyFixup(LinkGraph &G, Block &B, const Edge &E) const { in applyFixup() 489 SmallVector<Edge *, 0> RelaxEdges; 494 SmallVector<Edge::Kind, 0> EdgeKinds; [all …]
|
| H A D | ELF_aarch64.cpp | 50 Error applyFixup(LinkGraph &G, Block &B, const Edge &E) const { in applyFixup() 128 enum ELFAArch64RelocationKind : Edge::Kind { 129 ELFCall26 = Edge::FirstRelocation, 265 Edge::OffsetT Offset = FixupAddress - BlockToFix.getAddress(); in addSingleRelocation() 271 Edge::Kind Kind = Edge::Invalid; in addSingleRelocation() 464 Edge GE(Kind, Offset, *GraphSymbol, Addend); in addSingleRelocation() 477 const char *getELFAArch64RelocationKindName(Edge::Kind R) { in getELFAArch64RelocationKindName() 549 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { return false; } in visitEdge() 593 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge() 594 Edge::Kind KindToSet = Edge::Invalid; in visitEdge() [all …]
|
| H A D | ELF_loongarch.cpp | 43 Error applyFixup(LinkGraph &G, Block &B, const Edge &E) const { in applyFixup() 62 SmallVector<Edge *, 0> RelaxEdges; 67 SmallVector<Edge::Kind, 0> EdgeKinds; 83 static bool isRelaxable(const Edge &E) { in isRelaxable() 140 static void relaxAlign(orc::ExecutorAddr Loc, const Edge &E, uint32_t &Remove, in relaxAlign() 141 Edge::Kind &NewEdgeKind) { in relaxAlign() 167 Aux.EdgeKinds.assign(Aux.EdgeKinds.size(), Edge::Invalid); in relaxBlock() 229 if (Remove == 0 && Aux.EdgeKinds[I] == Edge::Invalid) in finalizeBlockRelax() 248 if (Aux.EdgeKinds[I] != Edge::Invalid) in finalizeBlockRelax() 399 Edge::OffsetT Offset = FixupAddress - BlockToFix.getAddress(); in addSingleRelocation() [all …]
|
| H A D | JITLink.cpp | 62 const char *getGenericEdgeKindName(Edge::Kind K) { in getGenericEdgeKindName() 64 case Edge::Invalid: in getGenericEdgeKindName() 66 case Edge::KeepAlive: in getGenericEdgeKindName() 133 void printEdge(raw_ostream &OS, const Block &B, const Edge &E, in printEdge() 247 llvm::sort(Edges, [](const Edge &LHS, const Edge &RHS) { in splitBlockImpl() 257 Edge::OffsetT Delta = Blocks[I]->getAddress() - Blocks[0]->getAddress(); in splitBlockImpl() 341 std::vector<Edge> SortedEdges; in dump() 343 llvm::sort(SortedEdges, [](const Edge &LHS, const Edge &RHS) { in dump() 418 const Edge &E) { in makeTargetOutOfRangeError() 460 const Edge &E) { in makeAlignmentError()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/ADT/ |
| H A D | SCCIterator.h | 276 bool unionGroups(const EdgeType *Edge) { in unionGroups() argument 277 NodeInfo *G1 = find(&NodeInfoMap[Edge->Source]); in unionGroups() 278 NodeInfo *G2 = find(&NodeInfoMap[Edge->Target]); in unionGroups() 331 for (auto &Edge : Node->Edges) { in scc_member_iterator() 332 if (NodeInfoMap.count(Edge.Target)) in scc_member_iterator() 333 SortedEdges.insert(&Edge); in scc_member_iterator() 340 for (auto *Edge : SortedEdges) { in scc_member_iterator() 341 if (unionGroups(Edge)) in scc_member_iterator() 342 MSTEdges.insert(Edge); in scc_member_iterator() 351 for (const auto *Edge : MSTEdges) in scc_member_iterator() local [all …]
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | GenericDomTreeUpdaterImpl.h | 88 auto Edge = std::make_pair(U.getFrom(), U.getTo()); in applyUpdatesPermissive() local 111 if (!isSelfDominance(U) && Seen.insert(Edge).second) { in applyUpdatesPermissive() 222 const auto &Edge = It->EdgeSplit; in dump() local 224 printBlockInfo(Edge.FromBB, ", "); in dump() 225 printBlockInfo(Edge.ToBB, ", "); in dump() 226 printBlockInfo(Edge.NewBB, "\n"); in dump() 387 for (auto &Edge : Edges) in splitDTCriticalEdges() 388 NewBBs.insert(Edge.NewBB); in splitDTCriticalEdges() 397 for (const auto &[Idx, Edge] : enumerate(Edges)) { in splitDTCriticalEdges() 399 BasicBlockT *Succ = Edge.ToBB; in splitDTCriticalEdges() [all …]
|
| H A D | LazyCallGraph.h | 129 class Edge { 134 Edge(); 135 explicit Edge(Node &N, Kind K); 185 using VectorT = SmallVector<Edge, 4>; 186 using VectorImplT = SmallVectorImpl<Edge>; 255 Edge &operator[](Node &N) { 262 Edge *lookup(Node &N) { in lookup() 294 void insertEdgeInternal(Node &ChildN, Edge::Kind EK); 297 void setEdgeKind(Node &ChildN, Edge::Kind EK); 753 Edge::Kind EK); [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/IPO/ |
| H A D | MemProfContextDisambiguation.cpp | 374 for (auto &Edge : CalleeEdges.empty() ? CallerEdges : CalleeEdges) in getContextIds() local 375 Count += Edge->getContextIds().size(); in getContextIds() 382 for (const auto &Edge : Edges) in getContextIds() local 383 ContextIds.insert_range(Edge->getContextIds()); in getContextIds() 397 for (const auto &Edge : Edges) { in computeAllocType() local 398 AllocType |= Edge->AllocTypes; in computeAllocType() 413 for (const auto &Edge : Edges) { in emptyContextIds() local 414 if (!Edge->getContextIds().empty()) in emptyContextIds() 453 void eraseCalleeEdge(const ContextEdge *Edge); 454 void eraseCallerEdge(const ContextEdge *Edge); [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/X86/ |
| H A D | ImmutableGraph.h | 47 class Edge { 62 const Edge *Edges; 68 const Edge *edges_begin() const { return Edges; } in edges_begin() 73 const Edge *edges_end() const { return (this + 1)->Edges; } in edges_end() 74 ArrayRef<Edge> edges() const { in edges() 80 ImmutableGraph(std::unique_ptr<Node[]> Nodes, std::unique_ptr<Edge[]> Edges, in ImmutableGraph() 94 ArrayRef<Edge> edges() const { return ArrayRef(Edges.get(), EdgesSize); } in edges() 95 const Edge *edges_begin() const { return edges().begin(); } in edges_begin() 96 const Edge *edges_end() const { return edges().end(); } in edges_end() 106 size_type getEdgeIndex(const Edge &E) const { in getEdgeIndex() [all …]
|
| H A D | X86LoadValueInjectionLoadHardening.cpp | 119 using Edge = typename GraphT::Edge; typedef 122 std::unique_ptr<Edge[]> Edges, size_type NodesSize, in MachineGadgetGraph() 126 static inline bool isCFGEdge(const Edge &E) { in isCFGEdge() 129 static inline bool isGadgetEdge(const Edge &E) { in isGadgetEdge() 150 using Edge = MachineGadgetGraph::Edge; typedef in __anond4b80a110111::X86LoadValueInjectionLoadHardeningPass 544 for (const Edge &E : G.edges()) { in elimMitigatedEdgesAndNodes() 549 for (const Edge &DE : Dest->edges()) in elimMitigatedEdgesAndNodes() 568 for (const Edge &E : N->edges()) { in elimMitigatedEdgesAndNodes() 578 for (const Edge &E : RootN.edges()) { in elimMitigatedEdgesAndNodes() 631 for (const Edge &E : Graph->edges()) { in hardenLoadsWithPlugin() [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | LazyCallGraph.cpp | 43 Edge::Kind EK) { in insertEdgeInternal() 48 void LazyCallGraph::EdgeSequence::setEdgeKind(Node &TargetN, Edge::Kind EK) { in setEdgeKind() 57 Edges[IndexMapI->second] = Edge(); in removeEdgeInternal() 62 static void addEdge(SmallVectorImpl<LazyCallGraph::Edge> &Edges, in addEdge() 64 LazyCallGraph::Node &N, LazyCallGraph::Edge::Kind EK) { in addEdge() 69 Edges.emplace_back(LazyCallGraph::Edge(N, EK)); in addEdge() 108 LazyCallGraph::Edge::Call); in populateSlow() 122 LazyCallGraph::Edge::Ref); in populateSlow() 130 LazyCallGraph::Edge::Ref); in populateSlow() 176 addEdge(EntryEdges.Edges, EntryEdges.EdgeIndexMap, get(F), Edge::Ref); in LazyCallGraph() [all …]
|
| H A D | BranchProbabilityInfo.cpp | 321 bool BranchProbabilityInfo::isLoopEnteringEdge(const LoopEdge &Edge) const { in isLoopEnteringEdge() 322 const auto &SrcBlock = Edge.first; in isLoopEnteringEdge() 323 const auto &DstBlock = Edge.second; in isLoopEnteringEdge() 331 bool BranchProbabilityInfo::isLoopExitingEdge(const LoopEdge &Edge) const { in isLoopExitingEdge() 332 return isLoopEnteringEdge({Edge.second, Edge.first}); in isLoopExitingEdge() 336 const LoopEdge &Edge) const { in isLoopEnteringExitingEdge() 337 return isLoopEnteringEdge(Edge) || isLoopExitingEdge(Edge); in isLoopEnteringExitingEdge() 340 bool BranchProbabilityInfo::isLoopBackEdge(const LoopEdge &Edge) const { in isLoopBackEdge() 341 const auto &SrcBlock = Edge.first; in isLoopBackEdge() 342 const auto &DstBlock = Edge.second; in isLoopBackEdge() [all …]
|
| H A D | DDGPrinter.cpp | 130 const DDGNode *Src, const DDGEdge *Edge, const DataDependenceGraph *G) { in getSimpleEdgeAttributes() argument 133 DDGEdge::EdgeKind Kind = Edge->getKind(); in getSimpleEdgeAttributes() 139 const DDGNode *Src, const DDGEdge *Edge, const DataDependenceGraph *G) { in getVerboseEdgeAttributes() argument 142 DDGEdge::EdgeKind Kind = Edge->getKind(); in getVerboseEdgeAttributes() 145 OS << G->getDependenceString(*Src, Edge->getTargetNode()); in getVerboseEdgeAttributes()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Instrumentation/ |
| H A D | CFGMST.h | 40 template <class Edge, class BBInfo> class CFGMST { 45 std::vector<std::unique_ptr<Edge>> AllEdges; 92 void handleCoroSuspendEdge(Edge *E) { in handleCoroSuspendEdge() 127 Edge *EntryIncoming = nullptr, *EntryOutgoing = nullptr, in buildEdges() 198 Edge *ExitO = &addEdge(&BB, nullptr, BBWeight); in buildEdges() 235 llvm::stable_sort(AllEdges, [](const std::unique_ptr<Edge> &Edge1, in sortEdgesByWeight() 236 const std::unique_ptr<Edge> &Edge2) { in sortEdgesByWeight() 304 Edge &addEdge(BasicBlock *Src, BasicBlock *Dest, uint64_t W) { in addEdge() 318 AllEdges.emplace_back(new Edge(Src, Dest, W)); in addEdge() 341 const std::vector<std::unique_ptr<Edge>> &allEdges() const { in allEdges() [all …]
|