|
Static Value-Flow Analysis
|
whether this is an argument in dead function
Definition at line 158 of file LLVMUtil.h.
Return true if this is an argument of a program entry function (e.g. main)
Definition at line 166 of file LLVMUtil.h.
| bool SVF::LLVMUtil::basicBlockHasRetInst | ( | const BasicBlock * | bb | ) |
Return true if the function has a return instruction.
Return true if the basic block has a return instruction
Definition at line 109 of file LLVMUtil.cpp.
Definition at line 627 of file LLVMUtil.cpp.
Return true if the function has a return instruction reachable from function entry
Definition at line 123 of file LLVMUtil.cpp.
Get all called funcions in a parent function.
Definition at line 364 of file LLVMUtil.cpp.
Definition at line 98 of file LLVMUtil.h.
|
inlinestatic |
Definition at line 315 of file LLVMUtil.h.
|
inline |
Definition at line 55 of file LLVMUtil.h.
Return the bitcast instruction right next to val, otherwise return nullptr
If type is void* (i8*) and val is immediately used at a bitcast instruction
Definition at line 278 of file LLVMUtil.cpp.
Definition at line 436 of file LLVMUtil.cpp.
| void SVF::LLVMUtil::getFunReachableBBs | ( | const Function * | fun, |
| std::vector< const SVFBasicBlock * > & | reachableBBs | ||
| ) |
Get reachable basic block from function entry.
Return reachable bbs from function entry
Definition at line 75 of file LLVMUtil.cpp.
find the unique defined global across multiple modules
Definition at line 440 of file LLVMUtil.cpp.
Definition at line 401 of file LLVMUtil.cpp.
|
inline |
Return LLVM callsite given a value.
Definition at line 92 of file LLVMUtil.h.
Return LLVM function if this value is.
Definition at line 105 of file LLVMUtil.h.
| void SVF::LLVMUtil::getNextInsts | ( | const Instruction * | curInst, |
| std::vector< const Instruction * > & | instList | ||
| ) |
Get the next instructions following control flow.
Definition at line 578 of file LLVMUtil.cpp.
Return size of this object based on LLVM value.
Return size of this Object
Definition at line 296 of file LLVMUtil.cpp.
Get program entry function from module.
Definition at line 424 of file LLVMUtil.h.
Get program entry function from module.
Definition at line 40 of file LLVMUtil.cpp.
|
inlinestatic |
Definition at line 132 of file LLVMUtil.h.
Get the meta data (line number and file name) info of a LLVM value
Definition at line 453 of file LLVMUtil.cpp.
Get source code line number of a function according to debug info
Definition at line 561 of file LLVMUtil.cpp.
Return true if the argument in a function does not have a caller.
Definition at line 187 of file LLVMUtil.h.
|
inline |
Definition at line 292 of file LLVMUtil.h.
Check whether this value is a black hole.
Definition at line 121 of file LLVMUtil.h.
|
inline |
Whether an instruction is a call or invoke instruction.
Definition at line 45 of file LLVMUtil.h.
Whether an instruction is a call or invoke instruction.
Definition at line 50 of file LLVMUtil.h.
|
inline |
Definition at line 247 of file LLVMUtil.h.
|
inline |
Definition at line 281 of file LLVMUtil.h.
Check whether this value points-to a constant object.
Check whether this value points-to a constant object
Definition at line 747 of file CppUtil.cpp.
Return true if the value refers to constant data, e.g., i32 0.
Definition at line 374 of file LLVMUtil.h.
Definition at line 384 of file LLVMUtil.cpp.
|
inline |
Return corresponding constant expression, otherwise return nullptr.
Definition at line 217 of file LLVMUtil.h.
|
inline |
Definition at line 402 of file LLVMUtil.h.
| bool SVF::LLVMUtil::isHeapAllocExtCallViaArg | ( | const Instruction * | inst | ) |
Definition at line 653 of file LLVMUtil.cpp.
| bool SVF::LLVMUtil::isHeapAllocExtCallViaRet | ( | const Instruction * | inst | ) |
Definition at line 638 of file LLVMUtil.cpp.
Check if a given value represents a heap object.
| val | The value to check. |
Definition at line 687 of file LLVMUtil.cpp.
|
inline |
Definition at line 227 of file LLVMUtil.h.
Definition at line 190 of file LLVMUtil.cpp.
| bool SVF::LLVMUtil::isIntrinsicInst | ( | const Instruction * | inst | ) |
Return true if it is an intrinsic instruction.
Definition at line 203 of file LLVMUtil.cpp.
Check whether a file is an LLVM IR file.
Definition at line 315 of file LLVMUtil.cpp.
Definition at line 389 of file LLVMUtil.cpp.
Definition at line 395 of file LLVMUtil.cpp.
Function does not have any possible caller in the call graph.
Return true if the function does not have a caller (either it is a main function or a dead function)
Definition at line 181 of file LLVMUtil.h.
| bool SVF::LLVMUtil::isNonInstricCallSite | ( | const Instruction * | inst | ) |
Whether an instruction is a callsite in the application code, excluding llvm intrinsic calls.
Definition at line 725 of file LLVMUtil.cpp.
|
inline |
Basic block does not have predecessors map-1.cpp.bc try.cont: ; No predecessors! call void @llvm.trap() unreachable
Definition at line 337 of file LLVMUtil.h.
Check whether this value is a black hole.
Definition at line 127 of file LLVMUtil.h.
Return true if this value refers to a object.
A value represents an object if it is 1) function, 2) global 3) stack 4) heap
Definition at line 60 of file LLVMUtil.cpp.
Check whether a function is an entry function (i.e., main)
Definition at line 114 of file LLVMUtil.h.
|
inline |
Definition at line 237 of file LLVMUtil.h.
Return true if this is value in a dead function (function without any caller)
Return true if this is a value in a dead function (function without any caller)
Definition at line 175 of file LLVMUtil.cpp.
|
inline |
Definition at line 257 of file LLVMUtil.h.
|
inline |
Definition at line 409 of file LLVMUtil.h.
| bool SVF::LLVMUtil::isStackAllocExtCallViaRet | ( | const Instruction * | inst | ) |
Definition at line 667 of file LLVMUtil.cpp.
| val | The value to check. |
Definition at line 709 of file LLVMUtil.cpp.
|
inline |
|
inline |
Definition at line 303 of file LLVMUtil.h.
whether this is a function without any possible caller?
Method for dead function, which does not have any possible caller function address is not taken and never be used in call or invoke instruction
Return true if this is a function without any possible caller
Definition at line 158 of file LLVMUtil.cpp.
| void SVF::LLVMUtil::processArguments | ( | int | argc, |
| char ** | argv, | ||
| int & | arg_num, | ||
| char ** | arg_value, | ||
| std::vector< std::string > & | moduleNameVec | ||
| ) |
Parse argument for multi-module analysis.
Get the names of all modules into a vector And process arguments
Definition at line 336 of file LLVMUtil.cpp.
| std::string SVF::LLVMUtil::restoreFuncName | ( | std::string | funcName | ) |
Definition at line 407 of file LLVMUtil.cpp.
Strip off the all casts.
Strip all casts
Definition at line 250 of file LLVMUtil.cpp.
Strip off the constant casts.
Strip constant casts
Definition at line 219 of file LLVMUtil.cpp.
Definition at line 231 of file LLVMUtil.cpp.
Definition at line 239 of file LLVMUtil.cpp.