#include <ExtAPI.h>
Definition at line 44 of file ExtAPI.h.
◆ ExtAPI()
◆ destory()
◆ get_alloc_arg_pos()
Definition at line 229 of file ExtAPI.cpp.
232 assert(!allocArg.empty() &&
"Not an alloc call via argument or incorrect extern function annotation!");
235 for (
char c : allocArg)
240 assert(!
number.empty() &&
"Incorrect naming convention for svf external functions(ALLOC_ARG + number)?");
const char *const const double number
std::string getExtFuncAnnotation(const SVFFunction *fun, const std::string &funcAnnotation)
◆ getExtAPI()
ExtAPI * ExtAPI::getExtAPI |
( |
| ) |
|
|
static |
◆ getExtBcPath()
Definition at line 119 of file ExtAPI.cpp.
156 <<
"To override the default locations for \"extapi.bc\", you can:" << std::endl
157 <<
"\t1. Use the command line argument \"-extapi=path/to/extapi.bc\"" << std::endl
158 <<
"\t2. Use the \"setExtBcPath()\" function *BEFORE* calling \"buildSVFModule()\"" << std::endl
159 <<
"\t3. Override the paths in \"svf/Util/config.h\" (WARNING: will be overwritten when "
160 <<
"rebuilding SVF (generated by CMakeLists.txt))" << std::endl;
static std::string getFilePath(const std::string &path)
static std::string extBcPath
static bool setExtBcPath(const std::string &path)
static const Option< std::string > ExtAPIPath
std::ostream & errs()
Overwrite llvm::errs()
◆ getExtFuncAnnotation()
Definition at line 183 of file ExtAPI.cpp.
185 assert(fun &&
"Null SVFFunction* pointer");
190 if (annotation.find(funcAnnotation) != std::string::npos)
Map< const SVFFunction *, std::vector< std::string > > func2Annotations
◆ getExtFuncAnnotations()
Definition at line 196 of file ExtAPI.cpp.
198 assert(fun &&
"Null SVFFunction* pointer");
◆ has_static()
◆ hasExtFuncAnnotation()
Definition at line 170 of file ExtAPI.cpp.
172 assert(fun &&
"Null SVFFunction* pointer");
177 if (annotation.find(funcAnnotation) != std::string::npos)
◆ is_alloc()
Definition at line 217 of file ExtAPI.cpp.
bool hasExtFuncAnnotation(const SVFFunction *fun, const std::string &funcAnnotation)
◆ is_arg_alloc()
◆ is_ext()
Definition at line 253 of file ExtAPI.cpp.
255 assert(
F &&
"Null SVFFunction* pointer");
256 if (
F->isDeclaration() ||
F->isIntrinsic())
const std::vector< std::string > & getExtFuncAnnotations(const SVFFunction *fun)
◆ is_memcpy()
◆ is_memset()
◆ is_realloc()
◆ setExtBcPath()
Definition at line 61 of file ExtAPI.cpp.
64 if (!path.empty() && !stat(path.c_str(), &statbuf))
◆ setExtFuncAnnotations()
void ExtAPI::setExtFuncAnnotations |
( |
const SVFFunction * |
fun, |
|
|
const std::vector< std::string > & |
funcAnnotations |
|
) |
| |
|
private |
Definition at line 164 of file ExtAPI.cpp.
166 assert(fun &&
"Null SVFFunction* pointer");
◆ LLVMModuleSet
◆ extBcPath
◆ extOp
ExtAPI * ExtAPI::extOp = nullptr |
|
staticprivate |
◆ func2Annotations
The documentation for this class was generated from the following files:
- /home/runner/work/SVF/SVF/svf/include/Util/ExtAPI.h
- /home/runner/work/SVF/SVF/svf/lib/Util/ExtAPI.cpp