svf-lib 1.0.2487 → 1.0.2489
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-aarch64/include/Graphs/SVFG.h +16 -0
- package/SVF-linux-aarch64/lib/libSvfCore.so.3.3 +0 -0
- package/SVF-linux-x86_64/bin/ae +0 -0
- package/SVF-linux-x86_64/bin/cfl +0 -0
- package/SVF-linux-x86_64/bin/dvf +0 -0
- package/SVF-linux-x86_64/bin/llvm2svf +0 -0
- package/SVF-linux-x86_64/bin/mta +0 -0
- package/SVF-linux-x86_64/bin/saber +0 -0
- package/SVF-linux-x86_64/bin/svf-ex +0 -0
- package/SVF-linux-x86_64/bin/wpa +0 -0
- package/SVF-linux-x86_64/include/AE/Svfexe/AbstractInterpretation.h +3 -18
- package/SVF-linux-x86_64/include/AE/Svfexe/PreAnalysis.h +90 -0
- package/SVF-linux-x86_64/lib/cmake/SVF/SVFTargets.cmake +1 -1
- package/SVF-linux-x86_64/lib/libSvfCore.so.3.3 +0 -0
- package/SVF-linux-x86_64/lib/libSvfLLVM.so.3.3 +0 -0
- package/package.json +1 -1
|
@@ -179,6 +179,22 @@ public:
|
|
|
179
179
|
return hasDef(pagNode) && hasSVFGNode(getDef(pagNode));
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
+
/// Given a ValVar and its SVFGNode, find the definition-site ICFGNode
|
|
183
|
+
/// by following incoming direct VFGEdges (asserts unique definition)
|
|
184
|
+
const ICFGNode* getDefSiteOfValVar(const ValVar* var, const SVFGNode* node) const;
|
|
185
|
+
|
|
186
|
+
/// Given an ObjVar and its SVFGNode, find the definition-site ICFGNode
|
|
187
|
+
/// by following incoming IndirectSVFGEdges whose pts contains the ObjVar (asserts unique definition)
|
|
188
|
+
const ICFGNode* getDefSiteOfObjVar(const ObjVar* obj, const SVFGNode* node) const;
|
|
189
|
+
|
|
190
|
+
/// Given a ValVar and its SVFStmt, find all use-site ICFGNodes
|
|
191
|
+
/// by following outgoing direct VFGEdges from its definition SVFGNode
|
|
192
|
+
const Set<const ICFGNode*> getUseSitesOfValVar(const ValVar* var, const SVFGNode* vNode) const;
|
|
193
|
+
|
|
194
|
+
/// Given an ObjVar and its SVFStmt, find all use-site ICFGNodes
|
|
195
|
+
/// by following outgoing IndirectSVFGEdges whose pts contains the ObjVar
|
|
196
|
+
const Set<const ICFGNode*> getUseSitesOfObjVar(const ObjVar* obj, const SVFGNode* vNode) const;
|
|
197
|
+
|
|
182
198
|
/// Perform statistics
|
|
183
199
|
void performStat();
|
|
184
200
|
|
|
Binary file
|
package/SVF-linux-x86_64/bin/ae
CHANGED
|
Binary file
|
package/SVF-linux-x86_64/bin/cfl
CHANGED
|
Binary file
|
package/SVF-linux-x86_64/bin/dvf
CHANGED
|
Binary file
|
|
Binary file
|
package/SVF-linux-x86_64/bin/mta
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/SVF-linux-x86_64/bin/wpa
CHANGED
|
Binary file
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
#include "AE/Core/AbstractState.h"
|
|
33
33
|
#include "AE/Core/ICFGWTO.h"
|
|
34
34
|
#include "AE/Svfexe/AEDetector.h"
|
|
35
|
+
#include "AE/Svfexe/PreAnalysis.h"
|
|
35
36
|
#include "AE/Svfexe/AbsExtAPI.h"
|
|
36
37
|
#include "Util/SVFBugReport.h"
|
|
37
38
|
#include "Util/SVFStat.h"
|
|
@@ -111,8 +112,6 @@ class AbstractInterpretation
|
|
|
111
112
|
friend class NullptrDerefDetector;
|
|
112
113
|
|
|
113
114
|
public:
|
|
114
|
-
typedef SCCDetection<CallGraph*> CallGraphSCC;
|
|
115
|
-
|
|
116
115
|
/*
|
|
117
116
|
* For recursive test case
|
|
118
117
|
* int demo(int a) {
|
|
@@ -189,9 +188,6 @@ private:
|
|
|
189
188
|
/// Global ICFGNode is handled at the entry of the program,
|
|
190
189
|
virtual void handleGlobalNode();
|
|
191
190
|
|
|
192
|
-
/// Compute IWTO for each function partition entry
|
|
193
|
-
void initWTO();
|
|
194
|
-
|
|
195
191
|
/**
|
|
196
192
|
* Check if execution state exist by merging states of predecessor nodes
|
|
197
193
|
*
|
|
@@ -260,13 +256,6 @@ private:
|
|
|
260
256
|
*/
|
|
261
257
|
std::vector<const ICFGNode*> getNextNodesOfCycle(const ICFGCycleWTO* cycle) const;
|
|
262
258
|
|
|
263
|
-
/**
|
|
264
|
-
* Recursively collect cycle heads from nested WTO components
|
|
265
|
-
*
|
|
266
|
-
* @param comps The list of WTO components to collect cycle heads from
|
|
267
|
-
*/
|
|
268
|
-
void collectCycleHeads(const std::list<const ICFGWTOComp*>& comps);
|
|
269
|
-
|
|
270
259
|
/**
|
|
271
260
|
* handle SVF Statement like CmpStmt, CallStmt, GepStmt, LoadStmt, StoreStmt, etc.
|
|
272
261
|
*
|
|
@@ -333,10 +322,7 @@ private:
|
|
|
333
322
|
CallGraph* callGraph;
|
|
334
323
|
AEStat* stat;
|
|
335
324
|
|
|
336
|
-
|
|
337
|
-
Set<std::pair<const CallICFGNode*, NodeID>> nonRecursiveCallSites;
|
|
338
|
-
Set<const FunObjVar*> recursiveFuns;
|
|
339
|
-
Map<const ICFGNode*, const ICFGCycleWTO*> cycleHeadToCycle;
|
|
325
|
+
PreAnalysis* preAnalysis{nullptr};
|
|
340
326
|
|
|
341
327
|
|
|
342
328
|
bool hasAbsStateFromTrace(const ICFGNode* node)
|
|
@@ -353,8 +339,7 @@ private:
|
|
|
353
339
|
virtual bool isExtCall(const CallICFGNode* callNode);
|
|
354
340
|
virtual void handleExtCall(const CallICFGNode* callNode);
|
|
355
341
|
virtual bool isRecursiveFun(const FunObjVar* fun);
|
|
356
|
-
virtual
|
|
357
|
-
virtual void recursiveCallPass(const CallICFGNode *callNode);
|
|
342
|
+
virtual void handleRecursiveCall(const CallICFGNode *callNode);
|
|
358
343
|
virtual bool isRecursiveCallSite(const CallICFGNode* callNode, const FunObjVar *);
|
|
359
344
|
virtual void handleFunCall(const CallICFGNode* callNode);
|
|
360
345
|
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
//===- PreAnalysis.h -- Pre-Analysis for Abstract Interpretation----------//
|
|
2
|
+
//
|
|
3
|
+
// SVF: Static Value-Flow Analysis
|
|
4
|
+
//
|
|
5
|
+
// Copyright (C) <2013-> <Yulei Sui>
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
// This program is free software: you can redistribute it and/or modify
|
|
9
|
+
// it under the terms of the GNU Affero General Public License as published by
|
|
10
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
11
|
+
// (at your option) any later version.
|
|
12
|
+
|
|
13
|
+
// This program is distributed in the hope that it will be useful,
|
|
14
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
+
// GNU Affero General Public License for more details.
|
|
17
|
+
|
|
18
|
+
// You should have received a copy of the GNU Affero General Public License
|
|
19
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
20
|
+
//
|
|
21
|
+
//===----------------------------------------------------------------------===//
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
* PreAnalysis.h
|
|
25
|
+
*
|
|
26
|
+
* Created on: Feb 25, 2026
|
|
27
|
+
* Author: Jiawei Wang
|
|
28
|
+
*
|
|
29
|
+
* This file provides a pre-analysis phase for Abstract Interpretation.
|
|
30
|
+
* It runs Andersen's pointer analysis and builds WTO (Weak Topological Order)
|
|
31
|
+
* for each function before the main abstract interpretation.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
#ifndef INCLUDE_AE_SVFEXE_PREANALYSIS_H_
|
|
35
|
+
#define INCLUDE_AE_SVFEXE_PREANALYSIS_H_
|
|
36
|
+
|
|
37
|
+
#include "SVFIR/SVFIR.h"
|
|
38
|
+
#include "Graphs/ICFG.h"
|
|
39
|
+
#include "Graphs/CallGraph.h"
|
|
40
|
+
#include "Graphs/SCC.h"
|
|
41
|
+
#include "AE/Core/ICFGWTO.h"
|
|
42
|
+
#include "WPA/Andersen.h"
|
|
43
|
+
|
|
44
|
+
namespace SVF
|
|
45
|
+
{
|
|
46
|
+
|
|
47
|
+
class PreAnalysis
|
|
48
|
+
{
|
|
49
|
+
public:
|
|
50
|
+
typedef SCCDetection<CallGraph*> CallGraphSCC;
|
|
51
|
+
|
|
52
|
+
PreAnalysis(SVFIR* pag, ICFG* icfg);
|
|
53
|
+
virtual ~PreAnalysis();
|
|
54
|
+
|
|
55
|
+
/// Accessors for Andersen's results
|
|
56
|
+
AndersenWaveDiff* getPointerAnalysis() const
|
|
57
|
+
{
|
|
58
|
+
return pta;
|
|
59
|
+
}
|
|
60
|
+
CallGraph* getCallGraph() const
|
|
61
|
+
{
|
|
62
|
+
return callGraph;
|
|
63
|
+
}
|
|
64
|
+
CallGraphSCC* getCallGraphSCC() const
|
|
65
|
+
{
|
|
66
|
+
return callGraphSCC;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/// Build WTO for each function using call graph SCC
|
|
70
|
+
void initWTO();
|
|
71
|
+
|
|
72
|
+
/// Accessors for WTO data
|
|
73
|
+
const Map<const FunObjVar*, const ICFGWTO*>& getFuncToWTO() const
|
|
74
|
+
{
|
|
75
|
+
return funcToWTO;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
private:
|
|
79
|
+
SVFIR* svfir;
|
|
80
|
+
ICFG* icfg;
|
|
81
|
+
AndersenWaveDiff* pta;
|
|
82
|
+
CallGraph* callGraph;
|
|
83
|
+
CallGraphSCC* callGraphSCC;
|
|
84
|
+
|
|
85
|
+
Map<const FunObjVar*, const ICFGWTO*> funcToWTO;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
} // End namespace SVF
|
|
89
|
+
|
|
90
|
+
#endif /* INCLUDE_AE_SVFEXE_PREANALYSIS_H_ */
|
|
@@ -81,7 +81,7 @@ if(NOT CMAKE_VERSION VERSION_LESS "3.23.0")
|
|
|
81
81
|
FILE_SET "HEADERS"
|
|
82
82
|
TYPE "HEADERS"
|
|
83
83
|
BASE_DIRS "${_IMPORT_PREFIX}/include"
|
|
84
|
-
FILES "${_IMPORT_PREFIX}/include/AE/Core/AbstractState.h" "${_IMPORT_PREFIX}/include/AE/Core/AbstractValue.h" "${_IMPORT_PREFIX}/include/AE/Core/AddressValue.h" "${_IMPORT_PREFIX}/include/AE/Core/ICFGWTO.h" "${_IMPORT_PREFIX}/include/AE/Core/IntervalValue.h" "${_IMPORT_PREFIX}/include/AE/Core/NumericValue.h" "${_IMPORT_PREFIX}/include/AE/Core/RelExeState.h" "${_IMPORT_PREFIX}/include/AE/Core/RelationSolver.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEDetector.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbsExtAPI.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbstractInterpretation.h" "${_IMPORT_PREFIX}/include/CFL/CFGNormalizer.h" "${_IMPORT_PREFIX}/include/CFL/CFGrammar.h" "${_IMPORT_PREFIX}/include/CFL/CFLAlias.h" "${_IMPORT_PREFIX}/include/CFL/CFLBase.h" "${_IMPORT_PREFIX}/include/CFL/CFLGramGraphChecker.h" "${_IMPORT_PREFIX}/include/CFL/CFLGraphBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSVFGBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSolver.h" "${_IMPORT_PREFIX}/include/CFL/CFLStat.h" "${_IMPORT_PREFIX}/include/CFL/CFLVF.h" "${_IMPORT_PREFIX}/include/CFL/GrammarBuilder.h" "${_IMPORT_PREFIX}/include/DDA/ContextDDA.h" "${_IMPORT_PREFIX}/include/DDA/DDAClient.h" "${_IMPORT_PREFIX}/include/DDA/DDAPass.h" "${_IMPORT_PREFIX}/include/DDA/DDAStat.h" "${_IMPORT_PREFIX}/include/DDA/DDAVFSolver.h" "${_IMPORT_PREFIX}/include/DDA/FlowDDA.h" "${_IMPORT_PREFIX}/include/FastCluster/fastcluster.h" "${_IMPORT_PREFIX}/include/Graphs/BasicBlockG.h" "${_IMPORT_PREFIX}/include/Graphs/CDG.h" "${_IMPORT_PREFIX}/include/Graphs/CFLGraph.h" "${_IMPORT_PREFIX}/include/Graphs/CHG.h" "${_IMPORT_PREFIX}/include/Graphs/CallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/ConsG.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGNode.h" "${_IMPORT_PREFIX}/include/Graphs/DOTGraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GenericGraph.h" "${_IMPORT_PREFIX}/include/Graphs/GraphPrinter.h" "${_IMPORT_PREFIX}/include/Graphs/GraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GraphWriter.h" "${_IMPORT_PREFIX}/include/Graphs/ICFG.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/IRGraph.h" "${_IMPORT_PREFIX}/include/Graphs/SCC.h" "${_IMPORT_PREFIX}/include/Graphs/SVFG.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGOPT.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/ThreadCallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/VFG.h" "${_IMPORT_PREFIX}/include/Graphs/VFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/VFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/WTO.h" "${_IMPORT_PREFIX}/include/MSSA/MSSAMuChi.h" "${_IMPORT_PREFIX}/include/MSSA/MemPartition.h" "${_IMPORT_PREFIX}/include/MSSA/MemRegion.h" "${_IMPORT_PREFIX}/include/MSSA/MemSSA.h" "${_IMPORT_PREFIX}/include/MSSA/SVFGBuilder.h" "${_IMPORT_PREFIX}/include/MTA/LockAnalysis.h" "${_IMPORT_PREFIX}/include/MTA/MHP.h" "${_IMPORT_PREFIX}/include/MTA/MTA.h" "${_IMPORT_PREFIX}/include/MTA/MTAStat.h" "${_IMPORT_PREFIX}/include/MTA/TCT.h" "${_IMPORT_PREFIX}/include/MemoryModel/AbstractPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/AccessPath.h" "${_IMPORT_PREFIX}/include/MemoryModel/ConditionalPT.h" "${_IMPORT_PREFIX}/include/MemoryModel/MutablePointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToCache.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysis.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysisImpl.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointsTo.h" "${_IMPORT_PREFIX}/include/MemoryModel/SVFLoop.h" "${_IMPORT_PREFIX}/include/SABER/DoubleFreeChecker.h" "${_IMPORT_PREFIX}/include/SABER/FileChecker.h" "${_IMPORT_PREFIX}/include/SABER/LeakChecker.h" "${_IMPORT_PREFIX}/include/SABER/ProgSlice.h" "${_IMPORT_PREFIX}/include/SABER/SaberCheckerAPI.h" "${_IMPORT_PREFIX}/include/SABER/SaberCondAllocator.h" "${_IMPORT_PREFIX}/include/SABER/SaberSVFGBuilder.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkDDA.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkSolver.h" "${_IMPORT_PREFIX}/include/SVFIR/ObjTypeInfo.h" "${_IMPORT_PREFIX}/include/SVFIR/PAGBuilderFromFile.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFIR.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFStatements.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFType.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFValue.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFVariables.h" "${_IMPORT_PREFIX}/include/Util/Annotator.h" "${_IMPORT_PREFIX}/include/Util/BitVector.h" "${_IMPORT_PREFIX}/include/Util/CDGBuilder.h" "${_IMPORT_PREFIX}/include/Util/CallGraphBuilder.h" "${_IMPORT_PREFIX}/include/Util/Casting.h" "${_IMPORT_PREFIX}/include/Util/CommandLine.h" "${_IMPORT_PREFIX}/include/Util/CoreBitVector.h" "${_IMPORT_PREFIX}/include/Util/CxtStmt.h" "${_IMPORT_PREFIX}/include/Util/DPItem.h" "${_IMPORT_PREFIX}/include/Util/ExtAPI.h" "${_IMPORT_PREFIX}/include/Util/GeneralType.h" "${_IMPORT_PREFIX}/include/Util/GraphReachSolver.h" "${_IMPORT_PREFIX}/include/Util/NodeIDAllocator.h" "${_IMPORT_PREFIX}/include/Util/Options.h" "${_IMPORT_PREFIX}/include/Util/PTAStat.h" "${_IMPORT_PREFIX}/include/Util/SVFBugReport.h" "${_IMPORT_PREFIX}/include/Util/SVFLoopAndDomInfo.h" "${_IMPORT_PREFIX}/include/Util/SVFStat.h" "${_IMPORT_PREFIX}/include/Util/SVFUtil.h" "${_IMPORT_PREFIX}/include/Util/SparseBitVector.h" "${_IMPORT_PREFIX}/include/Util/ThreadAPI.h" "${_IMPORT_PREFIX}/include/Util/WorkList.h" "${_IMPORT_PREFIX}/include/Util/Z3Expr.h" "${_IMPORT_PREFIX}/include/Util/cJSON.h" "${_IMPORT_PREFIX}/include/Util/iterator.h" "${_IMPORT_PREFIX}/include/Util/iterator_range.h" "${_IMPORT_PREFIX}/include/WPA/Andersen.h" "${_IMPORT_PREFIX}/include/WPA/AndersenPWC.h" "${_IMPORT_PREFIX}/include/WPA/CSC.h" "${_IMPORT_PREFIX}/include/WPA/FlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/Steensgaard.h" "${_IMPORT_PREFIX}/include/WPA/TypeAnalysis.h" "${_IMPORT_PREFIX}/include/WPA/VersionedFlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/WPAFSSolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAPass.h" "${_IMPORT_PREFIX}/include/WPA/WPASolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAStat.h"
|
|
84
|
+
FILES "${_IMPORT_PREFIX}/include/AE/Core/AbstractState.h" "${_IMPORT_PREFIX}/include/AE/Core/AbstractValue.h" "${_IMPORT_PREFIX}/include/AE/Core/AddressValue.h" "${_IMPORT_PREFIX}/include/AE/Core/ICFGWTO.h" "${_IMPORT_PREFIX}/include/AE/Core/IntervalValue.h" "${_IMPORT_PREFIX}/include/AE/Core/NumericValue.h" "${_IMPORT_PREFIX}/include/AE/Core/RelExeState.h" "${_IMPORT_PREFIX}/include/AE/Core/RelationSolver.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AEDetector.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbsExtAPI.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/AbstractInterpretation.h" "${_IMPORT_PREFIX}/include/AE/Svfexe/PreAnalysis.h" "${_IMPORT_PREFIX}/include/CFL/CFGNormalizer.h" "${_IMPORT_PREFIX}/include/CFL/CFGrammar.h" "${_IMPORT_PREFIX}/include/CFL/CFLAlias.h" "${_IMPORT_PREFIX}/include/CFL/CFLBase.h" "${_IMPORT_PREFIX}/include/CFL/CFLGramGraphChecker.h" "${_IMPORT_PREFIX}/include/CFL/CFLGraphBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSVFGBuilder.h" "${_IMPORT_PREFIX}/include/CFL/CFLSolver.h" "${_IMPORT_PREFIX}/include/CFL/CFLStat.h" "${_IMPORT_PREFIX}/include/CFL/CFLVF.h" "${_IMPORT_PREFIX}/include/CFL/GrammarBuilder.h" "${_IMPORT_PREFIX}/include/DDA/ContextDDA.h" "${_IMPORT_PREFIX}/include/DDA/DDAClient.h" "${_IMPORT_PREFIX}/include/DDA/DDAPass.h" "${_IMPORT_PREFIX}/include/DDA/DDAStat.h" "${_IMPORT_PREFIX}/include/DDA/DDAVFSolver.h" "${_IMPORT_PREFIX}/include/DDA/FlowDDA.h" "${_IMPORT_PREFIX}/include/FastCluster/fastcluster.h" "${_IMPORT_PREFIX}/include/Graphs/BasicBlockG.h" "${_IMPORT_PREFIX}/include/Graphs/CDG.h" "${_IMPORT_PREFIX}/include/Graphs/CFLGraph.h" "${_IMPORT_PREFIX}/include/Graphs/CHG.h" "${_IMPORT_PREFIX}/include/Graphs/CallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/ConsG.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ConsGNode.h" "${_IMPORT_PREFIX}/include/Graphs/DOTGraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GenericGraph.h" "${_IMPORT_PREFIX}/include/Graphs/GraphPrinter.h" "${_IMPORT_PREFIX}/include/Graphs/GraphTraits.h" "${_IMPORT_PREFIX}/include/Graphs/GraphWriter.h" "${_IMPORT_PREFIX}/include/Graphs/ICFG.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/ICFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/IRGraph.h" "${_IMPORT_PREFIX}/include/Graphs/SCC.h" "${_IMPORT_PREFIX}/include/Graphs/SVFG.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGOPT.h" "${_IMPORT_PREFIX}/include/Graphs/SVFGStat.h" "${_IMPORT_PREFIX}/include/Graphs/ThreadCallGraph.h" "${_IMPORT_PREFIX}/include/Graphs/VFG.h" "${_IMPORT_PREFIX}/include/Graphs/VFGEdge.h" "${_IMPORT_PREFIX}/include/Graphs/VFGNode.h" "${_IMPORT_PREFIX}/include/Graphs/WTO.h" "${_IMPORT_PREFIX}/include/MSSA/MSSAMuChi.h" "${_IMPORT_PREFIX}/include/MSSA/MemPartition.h" "${_IMPORT_PREFIX}/include/MSSA/MemRegion.h" "${_IMPORT_PREFIX}/include/MSSA/MemSSA.h" "${_IMPORT_PREFIX}/include/MSSA/SVFGBuilder.h" "${_IMPORT_PREFIX}/include/MTA/LockAnalysis.h" "${_IMPORT_PREFIX}/include/MTA/MHP.h" "${_IMPORT_PREFIX}/include/MTA/MTA.h" "${_IMPORT_PREFIX}/include/MTA/MTAStat.h" "${_IMPORT_PREFIX}/include/MTA/TCT.h" "${_IMPORT_PREFIX}/include/MemoryModel/AbstractPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/AccessPath.h" "${_IMPORT_PREFIX}/include/MemoryModel/ConditionalPT.h" "${_IMPORT_PREFIX}/include/MemoryModel/MutablePointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToCache.h" "${_IMPORT_PREFIX}/include/MemoryModel/PersistentPointsToDS.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysis.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointerAnalysisImpl.h" "${_IMPORT_PREFIX}/include/MemoryModel/PointsTo.h" "${_IMPORT_PREFIX}/include/MemoryModel/SVFLoop.h" "${_IMPORT_PREFIX}/include/SABER/DoubleFreeChecker.h" "${_IMPORT_PREFIX}/include/SABER/FileChecker.h" "${_IMPORT_PREFIX}/include/SABER/LeakChecker.h" "${_IMPORT_PREFIX}/include/SABER/ProgSlice.h" "${_IMPORT_PREFIX}/include/SABER/SaberCheckerAPI.h" "${_IMPORT_PREFIX}/include/SABER/SaberCondAllocator.h" "${_IMPORT_PREFIX}/include/SABER/SaberSVFGBuilder.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkDDA.h" "${_IMPORT_PREFIX}/include/SABER/SrcSnkSolver.h" "${_IMPORT_PREFIX}/include/SVFIR/ObjTypeInfo.h" "${_IMPORT_PREFIX}/include/SVFIR/PAGBuilderFromFile.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFIR.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFStatements.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFType.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFValue.h" "${_IMPORT_PREFIX}/include/SVFIR/SVFVariables.h" "${_IMPORT_PREFIX}/include/Util/Annotator.h" "${_IMPORT_PREFIX}/include/Util/BitVector.h" "${_IMPORT_PREFIX}/include/Util/CDGBuilder.h" "${_IMPORT_PREFIX}/include/Util/CallGraphBuilder.h" "${_IMPORT_PREFIX}/include/Util/Casting.h" "${_IMPORT_PREFIX}/include/Util/CommandLine.h" "${_IMPORT_PREFIX}/include/Util/CoreBitVector.h" "${_IMPORT_PREFIX}/include/Util/CxtStmt.h" "${_IMPORT_PREFIX}/include/Util/DPItem.h" "${_IMPORT_PREFIX}/include/Util/ExtAPI.h" "${_IMPORT_PREFIX}/include/Util/GeneralType.h" "${_IMPORT_PREFIX}/include/Util/GraphReachSolver.h" "${_IMPORT_PREFIX}/include/Util/NodeIDAllocator.h" "${_IMPORT_PREFIX}/include/Util/Options.h" "${_IMPORT_PREFIX}/include/Util/PTAStat.h" "${_IMPORT_PREFIX}/include/Util/SVFBugReport.h" "${_IMPORT_PREFIX}/include/Util/SVFLoopAndDomInfo.h" "${_IMPORT_PREFIX}/include/Util/SVFStat.h" "${_IMPORT_PREFIX}/include/Util/SVFUtil.h" "${_IMPORT_PREFIX}/include/Util/SparseBitVector.h" "${_IMPORT_PREFIX}/include/Util/ThreadAPI.h" "${_IMPORT_PREFIX}/include/Util/WorkList.h" "${_IMPORT_PREFIX}/include/Util/Z3Expr.h" "${_IMPORT_PREFIX}/include/Util/cJSON.h" "${_IMPORT_PREFIX}/include/Util/iterator.h" "${_IMPORT_PREFIX}/include/Util/iterator_range.h" "${_IMPORT_PREFIX}/include/WPA/Andersen.h" "${_IMPORT_PREFIX}/include/WPA/AndersenPWC.h" "${_IMPORT_PREFIX}/include/WPA/CSC.h" "${_IMPORT_PREFIX}/include/WPA/FlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/Steensgaard.h" "${_IMPORT_PREFIX}/include/WPA/TypeAnalysis.h" "${_IMPORT_PREFIX}/include/WPA/VersionedFlowSensitive.h" "${_IMPORT_PREFIX}/include/WPA/WPAFSSolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAPass.h" "${_IMPORT_PREFIX}/include/WPA/WPASolver.h" "${_IMPORT_PREFIX}/include/WPA/WPAStat.h"
|
|
85
85
|
)
|
|
86
86
|
else()
|
|
87
87
|
set_property(TARGET SVF::SvfCore
|
|
Binary file
|
|
Binary file
|