#include <PTACallGraph.h>
Definition at line 51 of file PTACallGraph.h.
◆ CallGraphEdgeSet
◆ CallInstSet
◆ CEDGEK
Enumerator |
---|
CallRetEdge | |
TDForkEdge | |
TDJoinEdge | |
HareParForEdge | |
Definition at line 56 of file PTACallGraph.h.
◆ PTACallGraphEdge()
Constructor.
Definition at line 68 of file PTACallGraph.h.
static GEdgeFlag makeEdgeFlagWithInvokeID(GEdgeKind k, CallSiteID cs)
Compute the unique edgeFlag value from edge kind and CallSiteID.
GenericEdge< PTACallGraphNode > GenericCallGraphEdgeTy
◆ ~PTACallGraphEdge()
virtual SVF::PTACallGraphEdge::~PTACallGraphEdge |
( |
| ) |
|
|
inlinevirtual |
◆ addDirectCallSite()
void PTACallGraphEdge::addDirectCallSite |
( |
const CallICFGNode * |
call | ) |
|
Add direct and indirect callsite.
Definition at line 47 of file PTACallGraph.cpp.
const SVFFunction * getCalledFunction() const
◆ addInDirectCallSite()
void PTACallGraphEdge::addInDirectCallSite |
( |
const CallICFGNode * |
call | ) |
|
Definition at line 53 of file PTACallGraph.cpp.
CallInstSet indirectCalls
const SVFValue * getValue() const
Get/has methods of the components.
const SVFVar * getForkedFun(const CallICFGNode *inst)
Return thread fork function.
◆ classof() [1/2]
◆ classof() [2/2]
◆ directCallsBegin()
CallInstSet::const_iterator SVF::PTACallGraphEdge::directCallsBegin |
( |
| ) |
const |
|
inline |
Iterators for direct and indirect callsites.
Definition at line 122 of file PTACallGraph.h.
◆ directCallsEnd()
CallInstSet::const_iterator SVF::PTACallGraphEdge::directCallsEnd |
( |
| ) |
const |
|
inline |
◆ getCallSiteID()
CallSiteID SVF::PTACallGraphEdge::getCallSiteID |
( |
| ) |
const |
|
inline |
◆ getDirectCalls() [1/2]
◆ getDirectCalls() [2/2]
const CallInstSet& SVF::PTACallGraphEdge::getDirectCalls |
( |
| ) |
const |
|
inline |
◆ getIndirectCalls() [1/2]
CallInstSet& SVF::PTACallGraphEdge::getIndirectCalls |
( |
| ) |
|
|
inline |
◆ getIndirectCalls() [2/2]
const CallInstSet& SVF::PTACallGraphEdge::getIndirectCalls |
( |
| ) |
const |
|
inline |
◆ indirectCallsBegin()
CallInstSet::const_iterator SVF::PTACallGraphEdge::indirectCallsBegin |
( |
| ) |
const |
|
inline |
◆ indirectCallsEnd()
CallInstSet::const_iterator SVF::PTACallGraphEdge::indirectCallsEnd |
( |
| ) |
const |
|
inline |
◆ isDirectCallEdge()
bool SVF::PTACallGraphEdge::isDirectCallEdge |
( |
| ) |
const |
|
inline |
◆ isIndirectCallEdge()
bool SVF::PTACallGraphEdge::isIndirectCallEdge |
( |
| ) |
const |
|
inline |
◆ makeEdgeFlagWithInvokeID()
Compute the unique edgeFlag value from edge kind and CallSiteID.
Definition at line 77 of file PTACallGraph.h.
static constexpr unsigned char EdgeKindMaskBits
We use the lower 8 bits to denote edge kind.
◆ toString()
Reimplemented in SVF::ThreadJoinEdge, and SVF::ThreadForkEdge.
Definition at line 60 of file PTACallGraph.cpp.
63 std::stringstream rawstr(str);
66 rawstr <<
"direct call";
68 rawstr <<
"indirect call";
NodeID getSrcID() const
get methods of the components
bool isDirectCallEdge() const
CallSiteID getCallSiteID() const
Get direct and indirect calls.
◆ operator<<
Overloading operator << for dumping ICFG node ID.
Definition at line 157 of file PTACallGraph.h.
159 o << edge.toString();
◆ csId
◆ directCalls
◆ indirectCalls
The documentation for this class was generated from the following files: