void addBackICFGEdge(const ICFGEdge *edge)
SVFLoop(const ICFGNodeSet &_nodes, u32_t _bound)
virtual ~SVFLoop()=default
ICFGNodeSet::iterator ICFGNodesBegin()
bool isEntryICFGEdge(const ICFGEdge *edge) const
Set< const ICFGNode * > ICFGNodeSet
ICFGNodeSet::iterator ICFGNodesEnd()
void addOutICFGEdge(const ICFGEdge *edge)
bool isOutICFGEdge(const ICFGEdge *edge) const
ICFGEdgeSet entryICFGEdges
ICFGEdgeSet::iterator outICFGEdgesBegin()
ICFGEdgeSet::iterator backICFGEdgesEnd()
bool isBackICFGEdge(const ICFGEdge *edge) const
ICFGEdgeSet::iterator outICFGEdgesEnd()
void addEntryICFGEdge(const ICFGEdge *edge)
ICFGEdgeSet::iterator backICFGEdgesBegin()
ICFGEdgeSet::iterator entryICFGEdgesEnd()
ICFGEdgeSet::iterator inEdgesBegin()
void addInICFGEdge(const ICFGEdge *edge)
ICFGEdgeSet::iterator inEdgesEnd()
u32_t getLoopBound() const
ICFGEdgeSet::iterator entryICFGEdgesBegin()
bool isInICFGEdge(const ICFGEdge *edge) const
ICFGEdgeSet backICFGEdges
Set< const ICFGEdge * > ICFGEdgeSet
bool isInLoop(const ICFGNode *icfgNode) const
void setLoopBound(u32_t _bound)
llvm::IRBuilder IRBuilder