|
Static Value-Flow Analysis
|
whether this is an argument in dead function
Definition at line 162 of file LLVMUtil.h.
Return true if this is an argument of a program entry function (e.g. main)
Definition at line 170 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 110 of file LLVMUtil.cpp.
Definition at line 628 of file LLVMUtil.cpp.
Return true if the function has a return instruction reachable from function entry
Definition at line 124 of file LLVMUtil.cpp.
Get all called funcions in a parent function.
Definition at line 365 of file LLVMUtil.cpp.
Definition at line 100 of file LLVMUtil.h.
|
inlinestatic |
Definition at line 319 of file LLVMUtil.h.
|
inline |
Definition at line 57 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 279 of file LLVMUtil.cpp.
Definition at line 437 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 76 of file LLVMUtil.cpp.
find the unique defined global across multiple modules
Definition at line 441 of file LLVMUtil.cpp.
Definition at line 402 of file LLVMUtil.cpp.
|
inline |
Return LLVM callsite given a value.
Definition at line 94 of file LLVMUtil.h.
Return LLVM function if this value is.
Definition at line 107 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 579 of file LLVMUtil.cpp.
Return size of this object based on LLVM value.
Return size of this Object
Definition at line 297 of file LLVMUtil.cpp.
Get program entry function from module.
Definition at line 428 of file LLVMUtil.h.
Get program entry function from module.
Definition at line 41 of file LLVMUtil.cpp.
|
inlinestatic |
Definition at line 134 of file LLVMUtil.h.
Get the meta data (line number and file name) info of a LLVM value
Definition at line 454 of file LLVMUtil.cpp.
Get source code line number of a function according to debug info
Definition at line 562 of file LLVMUtil.cpp.
Return true if the argument in a function does not have a caller.
Definition at line 191 of file LLVMUtil.h.
|
inline |
Definition at line 296 of file LLVMUtil.h.
Check whether this value is a black hole.
Definition at line 123 of file LLVMUtil.h.
|
inline |
Whether an instruction is a call or invoke instruction.
Definition at line 47 of file LLVMUtil.h.
Whether an instruction is a call or invoke instruction.
Definition at line 52 of file LLVMUtil.h.
|
inline |
Definition at line 251 of file LLVMUtil.h.
|
inline |
Definition at line 285 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 378 of file LLVMUtil.h.
Definition at line 385 of file LLVMUtil.cpp.
|
inline |
Return corresponding constant expression, otherwise return nullptr.
Definition at line 221 of file LLVMUtil.h.
|
inline |
Definition at line 406 of file LLVMUtil.h.
| bool SVF::LLVMUtil::isHeapAllocExtCallViaArg | ( | const Instruction * | inst | ) |
Definition at line 654 of file LLVMUtil.cpp.
| bool SVF::LLVMUtil::isHeapAllocExtCallViaRet | ( | const Instruction * | inst | ) |
Definition at line 639 of file LLVMUtil.cpp.
Check if a given value represents a heap object.
| val | The value to check. |
Definition at line 688 of file LLVMUtil.cpp.
|
inline |
Definition at line 231 of file LLVMUtil.h.
Definition at line 191 of file LLVMUtil.cpp.
| bool SVF::LLVMUtil::isIntrinsicInst | ( | const Instruction * | inst | ) |
Return true if it is an intrinsic instruction.
Definition at line 204 of file LLVMUtil.cpp.
Check whether a file is an LLVM IR file.
Definition at line 316 of file LLVMUtil.cpp.
Definition at line 390 of file LLVMUtil.cpp.
Definition at line 396 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 185 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 726 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 341 of file LLVMUtil.h.
Check whether this value is a black hole.
Definition at line 129 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 61 of file LLVMUtil.cpp.
Check whether a function is an entry function (i.e., main)
Definition at line 116 of file LLVMUtil.h.
|
inline |
Definition at line 241 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 176 of file LLVMUtil.cpp.
|
inline |
Definition at line 261 of file LLVMUtil.h.
|
inline |
Definition at line 413 of file LLVMUtil.h.
| bool SVF::LLVMUtil::isStackAllocExtCallViaRet | ( | const Instruction * | inst | ) |
Definition at line 668 of file LLVMUtil.cpp.
| val | The value to check. |
Definition at line 710 of file LLVMUtil.cpp.
|
inline |
|
inline |
Definition at line 307 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 159 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 337 of file LLVMUtil.cpp.
| std::string SVF::LLVMUtil::restoreFuncName | ( | std::string | funcName | ) |
Definition at line 408 of file LLVMUtil.cpp.
Strip off the all casts.
Strip all casts
Definition at line 251 of file LLVMUtil.cpp.
Strip off the constant casts.
Strip constant casts
Definition at line 220 of file LLVMUtil.cpp.
Definition at line 232 of file LLVMUtil.cpp.
Definition at line 240 of file LLVMUtil.cpp.