svf-lib 1.0.1539 → 1.0.1541
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SVF-linux/Release-build/svf/libSvfCore.a +0 -0
- package/SVF-linux/Release-build/svf-llvm/libSvfLLVM.a +0 -0
- package/SVF-linux/svf/include/Util/SVFBugReport.h +4 -4
- package/SVF-osx/Release-build/svf/libSvfCore.a +0 -0
- package/SVF-osx/Release-build/svf-llvm/libSvfLLVM.a +0 -0
- package/SVF-osx/svf/include/MemoryModel/PointerAnalysis.h +0 -2
- package/SVF-osx/svf/include/Util/SVFUtil.h +5 -0
- package/package.json +1 -1
|
Binary file
|
|
Binary file
|
|
@@ -48,7 +48,7 @@ namespace SVF
|
|
|
48
48
|
*/
|
|
49
49
|
|
|
50
50
|
|
|
51
|
-
class
|
|
51
|
+
class SVFBugEvent
|
|
52
52
|
{
|
|
53
53
|
public:
|
|
54
54
|
enum EventType
|
|
@@ -65,8 +65,8 @@ protected:
|
|
|
65
65
|
const SVFInstruction *eventInst;
|
|
66
66
|
|
|
67
67
|
public:
|
|
68
|
-
|
|
69
|
-
virtual ~
|
|
68
|
+
SVFBugEvent(u32_t typeAndInfoFlag, const SVFInstruction *eventInst): typeAndInfoFlag(typeAndInfoFlag), eventInst(eventInst) { };
|
|
69
|
+
virtual ~SVFBugEvent() = default;
|
|
70
70
|
|
|
71
71
|
inline u32_t getEventType() const
|
|
72
72
|
{
|
|
@@ -80,7 +80,7 @@ public:
|
|
|
80
80
|
class GenericBug
|
|
81
81
|
{
|
|
82
82
|
public:
|
|
83
|
-
typedef std::vector<
|
|
83
|
+
typedef std::vector<SVFBugEvent> EventStack;
|
|
84
84
|
|
|
85
85
|
public:
|
|
86
86
|
enum BugType {FULLBUFOVERFLOW, PARTIALBUFOVERFLOW, NEVERFREE, PARTIALLEAK, DOUBLEFREE, FILENEVERCLOSE, FILEPARTIALCLOSE};
|
|
Binary file
|
|
Binary file
|
|
@@ -388,8 +388,6 @@ public:
|
|
|
388
388
|
|
|
389
389
|
/// Resolve indirect call edges
|
|
390
390
|
virtual void resolveIndCalls(const CallICFGNode* cs, const PointsTo& target, CallEdgeMap& newEdges);
|
|
391
|
-
/// Match arguments for callsite at caller and callee
|
|
392
|
-
bool matchArgs(const CallICFGNode* cs, const SVFFunction* callee);
|
|
393
391
|
|
|
394
392
|
/// CallGraph SCC related methods
|
|
395
393
|
//@{
|
|
@@ -200,6 +200,11 @@ inline CallSite getSVFCallSite(const SVFInstruction* inst)
|
|
|
200
200
|
return cs;
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
+
/// Match arguments for callsite at caller and callee
|
|
204
|
+
/// if the arg size does not match then we do not need to connect this parameter
|
|
205
|
+
/// unless the callee is a variadic function (the first parameter of variadic function is its paramter number)
|
|
206
|
+
bool matchArgs(const SVFInstruction* cs, const SVFFunction* callee);
|
|
207
|
+
|
|
203
208
|
/// Return LLVM callsite given a value
|
|
204
209
|
inline CallSite getSVFCallSite(const SVFValue* value)
|
|
205
210
|
{
|