#include <SlicedGraphs.h>
Definition at line 310 of file SlicedGraphs.h.
◆ SlicedSVFIRView()
Definition at line 728 of file SlicedGraphs.cpp.
734{
735
738 {
739 if (node != nullptr && node->getFun() != nullptr)
740 {
742 }
743 }
744
745
747 assert(tcg !=
nullptr &&
"SlicedSVFIRView expects a ThreadCallGraph");
749
750
752
753
756 {
759 }
760 pagView = std::make_unique<SlicedPAGView>(
svfIr, keptStmts);
761}
std::list< const SVFStmt * > SVFStmtList
std::unique_ptr< SlicedPAGView > pagView
std::unique_ptr< SlicedThreadCallGraphView > tcgView
std::unique_ptr< SlicedICFGView > icfgView
llvm::IRBuilder IRBuilder
◆ dumpAll()
| void SVF::SlicedSVFIRView::dumpAll |
( |
const std::string & |
prefix | ) |
const |
◆ dumpStats()
| void SVF::SlicedSVFIRView::dumpStats |
( |
const std::string & |
prefix = "" | ) |
const |
Output statistics.
Definition at line 770 of file SlicedGraphs.cpp.
771{
778 {
779 SVFUtil::outs() <<
" Indirect callsites that lost all targets: "
781 }
782}
const Set< const FunObjVar * > & getKeptFunctions() const
Get all kept functions.
const OrderedSet< const SVFStmt * > & getKeptStatements() const
Get all kept statements.
const Set< const CallICFGNode * > & getIndirectSitesWithEmptyTargets() const
Get indirect call sites that lost all targets after filtering.
std::ostream & outs()
Overwrite llvm::outs()
◆ getAnalysisCallGraph()
| const CallGraph * SVF::SlicedSVFIRView::getAnalysisCallGraph |
( |
| ) |
const |
The CallGraph the sliced analyses scan: the sliced ThreadCallGraph's original CallGraph, or the full PAG CallGraph if no TCG view was built.
Definition at line 842 of file SlicedGraphs.cpp.
843{
847}
const CallGraph * getCallGraph()
Get CG.
static SVFIR * getPAG(bool buildFromFile=false)
Singleton design here to make sure we only have one instance during any analysis.
const SlicedThreadCallGraphView * getThreadCallGraph() const
Get SlicedThreadCallGraphView.
CallGraph * getOriginalCallGraph() const
Get original CallGraph (ThreadCallGraph inherits from CallGraph)
◆ getICFG() [1/2]
◆ getICFG() [2/2]
◆ getIndirectSitesWithEmptyTargets()
Get indirect call sites that lost all targets after filtering.
Definition at line 356 of file SlicedGraphs.h.
357 {
358 return tcgView->getIndirectSitesWithEmptyTargets();
359 }
◆ getInEdgesOfCallGraphNode()
In-edges of a call-graph node under the sliced ThreadCallGraph view (the full node in-edges if no TCG view was built).
Definition at line 831 of file SlicedGraphs.cpp.
833{
837 else
840}
void getInEdgesOf(const CallGraphNode *node, std::vector< const CallGraphEdge * > &out) const
Get in edges of a node (only returns kept edges and source nodes)
◆ getKeptFunctions()
Get all kept functions.
Definition at line 350 of file SlicedGraphs.h.
351 {
352 return tcgView->getKeptFunctions();
353 }
◆ getKeptStatements()
◆ getPAG() [1/2]
◆ getPAG() [2/2]
◆ getSVFIR()
| SVFIR * SVF::SlicedSVFIRView::getSVFIR |
( |
| ) |
const |
|
inline |
◆ getThreadCallGraph() [1/2]
◆ getThreadCallGraph() [2/2]
◆ icfgView
◆ pagView
◆ svfIr
| SVFIR* SVF::SlicedSVFIRView::svfIr |
|
private |
◆ tcgView
The documentation for this class was generated from the following files: