svf-lib 1.0.2714 → 1.0.2716

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.
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -30,9 +30,6 @@
30
30
  #ifndef POINTERANALYSIS_H_
31
31
  #define POINTERANALYSIS_H_
32
32
 
33
- #include <unistd.h>
34
- #include <signal.h>
35
-
36
33
  #include "Graphs/CHG.h"
37
34
  #include "Graphs/CallGraph.h"
38
35
  #include "Graphs/SCC.h"
@@ -821,7 +821,7 @@ public:
821
821
  }
822
822
 
823
823
  /// Return the type of this gep object
824
- inline virtual const SVFType* getType() const;
824
+ virtual const SVFType* getType() const;
825
825
 
826
826
 
827
827
  /// Return name of a LLVM value
@@ -39,6 +39,12 @@
39
39
  #include "Util/NodeIDAllocator.h"
40
40
  #include "Util/ThreadAPI.h"
41
41
 
42
+ #ifdef _MSC_VER
43
+ # define SVF_WEAK inline
44
+ #else
45
+ # define SVF_WEAK __attribute__((weak))
46
+ #endif
47
+
42
48
  namespace SVF
43
49
  {
44
50
 
@@ -101,6 +107,15 @@ bool getMemoryUsageKB(u32_t* vmrss_kb, u32_t* vmsize_kb);
101
107
  /// Increase the stack size limit
102
108
  void increaseStackSize();
103
109
 
110
+ /// Check whether a file exists at the given path
111
+ bool fileExists(const std::string& path);
112
+
113
+ /// Execute a shell command and capture its stdout output
114
+ std::string getStdoutFromCommand(const std::string& command);
115
+
116
+ /// Return the absolute path of the current module/executable
117
+ std::string getCurrentSOPath();
118
+
104
119
  /*!
105
120
  * Compare two PointsTo according to their size and points-to elements.
106
121
  * 1. PointsTo with smaller size is smaller than the other;
@@ -36,7 +36,7 @@
36
36
  // use-cases; should not be used directly by end users!
37
37
  #define SVF_BUILD_EXTAPI_BC "/home/runner/work/SVF/SVF/Release-build/lib/extapi.bc"
38
38
  #define SVF_SOURCE_DIR "/home/runner/work/SVF/SVF"
39
- #define SVF_BUILD_DIR ""
39
+ #define SVF_BUILD_DIR "/home/runner/work/SVF/SVF/Release-build"
40
40
 
41
41
  // Define fallback for installed extapi.bc location to build tree's extapi.bc
42
42
  #ifndef SVF_INSTALL_EXTAPI_BC
@@ -62,7 +62,7 @@ public:
62
62
  void initialize() override;
63
63
 
64
64
  /// Finalize analysis
65
- virtual inline void finalize() override;
65
+ virtual void finalize() override;
66
66
 
67
67
  /// Add copy edge on constraint graph
68
68
  inline bool addCopyEdge(NodeID src, NodeID dst) override
@@ -94,7 +94,7 @@ endif()
94
94
  add_library(SVF::SvfLLVM SHARED IMPORTED)
95
95
 
96
96
  set_target_properties(SVF::SvfLLVM PROPERTIES
97
- INTERFACE_LINK_LIBRARIES "SVF::SvfFlags;SVF::SvfCore;LLVM"
97
+ INTERFACE_LINK_LIBRARIES "SVF::SvfFlags;SVF::SvfCore;LLVMAnalysis;LLVMBitWriter;LLVMCore;LLVMInstCombine;LLVMInstrumentation;LLVMipo;LLVMIRReader;LLVMLinker;LLVMScalarOpts;LLVMSupport;LLVMTarget;LLVMTransformUtils;LLVMDemangle;LLVMPasses"
98
98
  )
99
99
 
100
100
  if(NOT CMAKE_VERSION VERSION_LESS "3.23.0")
@@ -249,14 +249,11 @@ inline void removeKey(const NodeID &key, NodeBS &keySet)
249
249
  /// Function to call when alarm for time limit hits.
250
250
  void timeLimitReached(int signum);
251
251
 
252
- /// Starts an analysis timer. If timeLimit is 0, sets no timer.
253
- /// If an alarm has already been set, does not set another.
254
- /// Returns whether we set a timer or not.
255
- bool startAnalysisLimitTimer(unsigned timeLimit);
256
-
257
- /// Stops an analysis timer. limitTimerSet indicates whether the caller set the
258
- /// timer or not (return value of startLimitTimer).
259
- void stopAnalysisLimitTimer(bool limitTimerSet);
252
+ /// Starts analysis timer. timeLimit must be non-0. Timer must not be already set.
253
+ void startAnalysisLimitTimer(unsigned timeLimit);
254
+
255
+ /// Stops analysis timer.
256
+ void stopAnalysisLimitTimer(void);
260
257
 
261
258
  /// Return true if the call is an external call (external library in function summary table)
262
259
  /// If the library function is redefined in the application code (e.g., memcpy), it will return false and will not be treated as an external call.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-lib",
3
- "version": "1.0.2714",
3
+ "version": "1.0.2716",
4
4
  "description": "SVF's npm support",
5
5
  "main": "index.js",
6
6
  "scripts": {