Analysis for finding out which defined functions are directly and indirectly reachable from some function.
More...
#include <reachable_funcs_analysis.h>
|
static std::set< llvm::Function * > | getReachableDefinedFuncsFor (llvm::Function &func, llvm::Module &module, llvm::CallGraph &callGraph) |
| Returns defined functions that are reachable directly and indirectly from function func. More...
|
|
static std::set< llvm::Function * > | getGloballyReachableFuncsFor (llvm::Module &module) |
| Returns functions that are referenced from global variables, such as virtual function tables. More...
|
|
Analysis for finding out which defined functions are directly and indirectly reachable from some function.
◆ getDirectlyReachableDefinedFuncsFor() [1/2]
std::set< llvm::Function * > retdec::bin2llvmir::ReachableFuncsAnalysis::getDirectlyReachableDefinedFuncsFor |
( |
const std::set< llvm::Function * > & |
funcs, |
|
|
llvm::CallGraph & |
callGraph |
|
) |
| const |
|
private |
Returns defined functions that are directly reachable from funcs.
- Parameters
-
[in] | funcs | We are finding defined functions that are reachable from this functions. |
[in] | callGraph | We are finding in this call graph. |
◆ getDirectlyReachableDefinedFuncsFor() [2/2]
std::set< llvm::Function * > retdec::bin2llvmir::ReachableFuncsAnalysis::getDirectlyReachableDefinedFuncsFor |
( |
llvm::CallGraphNode & |
reachableFrom | ) |
const |
|
private |
Returns defined functions that are directly reachable from function in reachableFrom.
◆ getGloballyReachableFuncsFor()
std::set< llvm::Function * > retdec::bin2llvmir::ReachableFuncsAnalysis::getGloballyReachableFuncsFor |
( |
llvm::Module & |
module | ) |
|
|
static |
Returns functions that are referenced from global variables, such as virtual function tables.
- Parameters
-
[in] | module | We are considering only globals and functions in this module. |
◆ getIndirectlyReachableDefinedFuncsFor()
std::set< llvm::Function * > retdec::bin2llvmir::ReachableFuncsAnalysis::getIndirectlyReachableDefinedFuncsFor |
( |
const std::set< llvm::Function * > & |
funcs, |
|
|
llvm::Module & |
module |
|
) |
| const |
|
private |
Returns indirectly reachable functions from funcs that are in module.
◆ getName()
std::string retdec::bin2llvmir::ReachableFuncsAnalysis::getName |
( |
| ) |
const |
|
inline |
◆ getReachableDefinedFuncsFor()
std::set< llvm::Function * > retdec::bin2llvmir::ReachableFuncsAnalysis::getReachableDefinedFuncsFor |
( |
llvm::Function & |
func, |
|
|
llvm::Module & |
module, |
|
|
llvm::CallGraph & |
callGraph |
|
) |
| |
|
static |
Returns defined functions that are reachable directly and indirectly from function func.
- Parameters
-
[in] | func | We are finding defined functions that are reachable from this function. |
[in] | module | We are considering only functions in this module. |
[in] | callGraph | We are finding in this call graph. |
The documentation for this class was generated from the following files: