| Static Value-Flow Analysis
    | 
#include <CallGraph.h>
 
  
| Public Types | |
| enum | CEDGEK { CallRetEdge , TDForkEdge , TDJoinEdge , HareParForEdge } | 
| typedef Set< const CallICFGNode * > | CallInstSet | 
| typedef GenericNode< CallGraphNode, CallGraphEdge >::GEdgeSetTy | CallGraphEdgeSet | 
|  Public Types inherited from SVF::GenericEdge< NodeTy > | |
| typedef NodeTy | NodeType | 
| Node type. | |
| typedef u64_t | GEdgeFlag | 
| typedef s64_t | GEdgeKind | 
| typedef struct SVF::GenericEdge::equalGEdge | equalGEdge | 
| Add the hash function for std::set (we also can overload operator< to implement this) | |
| Static Public Member Functions | |
| static GEdgeFlag | makeEdgeFlagWithInvokeID (GEdgeKind k, CallSiteID cs) | 
| Compute the unique edgeFlag value from edge kind and CallSiteID. | |
| static bool | classof (const CallGraphEdge *) | 
| ClassOf. | |
| static bool | classof (const GenericPTACallGraphEdgeTy *edge) | 
| Private Attributes | |
| CallInstSet | directCalls | 
| CallInstSet | indirectCalls | 
| CallSiteID | csId | 
| Friends | |
| OutStream & | operator<< (OutStream &o, const CallGraphEdge &edge) | 
| Overloading operator << for dumping ICFG node ID. | |
| Additional Inherited Members | |
|  Static Protected Attributes inherited from SVF::GenericEdge< NodeTy > | |
| static constexpr unsigned char | EdgeKindMaskBits = 8 | 
| We use the lower 8 bits to denote edge kind. | |
| static constexpr u64_t | EdgeKindMask = (~0ULL) >> (64 - EdgeKindMaskBits) | 
Definition at line 51 of file CallGraph.h.
Definition at line 166 of file CallGraph.h.
Definition at line 55 of file CallGraph.h.
| Enumerator | |
|---|---|
| CallRetEdge | |
| TDForkEdge | |
| TDJoinEdge | |
| HareParForEdge | |
Definition at line 56 of file CallGraph.h.
| 
 | inline | 
Constructor.
Definition at line 68 of file CallGraph.h.
| 
 | inlinevirtual | 
| void CallGraphEdge::addDirectCallSite | ( | const CallICFGNode * | call | ) | 
Add direct and indirect callsite.
Definition at line 53 of file CallGraph.cpp.
| void CallGraphEdge::addInDirectCallSite | ( | const CallICFGNode * | call | ) | 
Definition at line 59 of file CallGraph.cpp.
| 
 | inlinestatic | 
| 
 | inlinestatic | 
Definition at line 147 of file CallGraph.h.
| 
 | inline | 
Iterators for direct and indirect callsites.
Definition at line 122 of file CallGraph.h.
| 
 | inline | 
Definition at line 126 of file CallGraph.h.
| 
 | inline | 
| 
 | inline | 
Definition at line 95 of file CallGraph.h.
| 
 | inline | 
Definition at line 103 of file CallGraph.h.
| 
 | inline | 
Definition at line 99 of file CallGraph.h.
| 
 | inline | 
Definition at line 107 of file CallGraph.h.
| 
 | inline | 
Definition at line 131 of file CallGraph.h.
| 
 | inline | 
Definition at line 135 of file CallGraph.h.
| 
 | inline | 
Definition at line 87 of file CallGraph.h.
| 
 | inline | 
Definition at line 91 of file CallGraph.h.
| 
 | inlinestatic | 
Compute the unique edgeFlag value from edge kind and CallSiteID.
Definition at line 77 of file CallGraph.h.
| 
 | virtual | 
Reimplemented in SVF::ThreadForkEdge, and SVF::ThreadJoinEdge.
Definition at line 67 of file CallGraph.cpp.
| 
 | friend | 
| 
 | private | 
Definition at line 65 of file CallGraph.h.
| 
 | private | 
Definition at line 63 of file CallGraph.h.
| 
 | private | 
Definition at line 64 of file CallGraph.h.