Lines Matching full:edge
1 //=== i386.h - Generic JITLink i386 edge kinds, utilities -*- C++ -*-===//
21 enum EdgeKind_i386 : Edge::Kind {
24 None = Edge::FirstRelocation,
111 /// Indicates that this edge should be transformed into a Delta32FromGOT
112 /// targeting the GOT entry for the edge's current target, maintaining the
160 /// This edge kind has the same fixup expression as BranchPCRel32, but further
177 /// The edge kind has the same fixup expression as BranchPCRel32ToPtrJumpStub,
192 /// Returns a string name for the given i386 edge. For debugging purposes
194 const char *getEdgeKindName(Edge::Kind K);
196 /// Apply fixup expression for edge to block content.
197 inline Error applyFixup(LinkGraph &G, Block &B, const Edge &E, in applyFixup()
269 " unsupported edge kind " + getEdgeKindName(E.getKind())); in applyFixup()
343 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge()
344 Edge::Kind KindToSet = Edge::Invalid; in visitEdge()
348 // need to fix up this edge in visitEdge()
358 assert(KindToSet != Edge::Invalid && in visitEdge()
361 dbgs() << " Fixing " << G.getEdgeKindName(E.getKind()) << " edge at " in visitEdge()
391 bool visitEdge(LinkGraph &G, Block *B, Edge &E) { in visitEdge()
394 dbgs() << " Fixing " << G.getEdgeKindName(E.getKind()) << " edge at " in visitEdge()
398 // Set the edge kind to Branch32ToPtrJumpStubBypassable to enable it to in visitEdge()
424 /// Optimize the GOT and Stub relocations if the edge target address is in range
425 /// 1. PCRel32GOTLoadRelaxable. For this edge kind, if the target is in range,
427 /// 2. BranchPCRel32ToPtrJumpStubRelaxable. For this edge kind, if the target is