svf-lib 1.0.1653 → 1.0.1654

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.
@@ -142,7 +142,12 @@ public:
142
142
  //@{
143
143
  virtual void writeToFile(const std::string& filename);
144
144
  virtual void writeObjVarToFile(const std::string& filename);
145
+ virtual void writePtsResultToFile(std::fstream& f);
146
+ virtual void writeGepObjVarMapToFile(std::fstream& f);
145
147
  virtual bool readFromFile(const std::string& filename);
148
+ virtual void readPtsResultFromFile(std::ifstream& f);
149
+ virtual void readGepObjVarMapFromFile(std::ifstream& f);
150
+ virtual void readAndSetObjFieldSensitivity(std::ifstream& f, const std::string& delimiterStr);
146
151
  //@}
147
152
 
148
153
  protected:
@@ -48,6 +48,7 @@ class SVFIR : public IRGraph
48
48
  friend class TypeBasedHeapCloning;
49
49
  friend class SVFIRWriter;
50
50
  friend class SVFIRReader;
51
+ friend class BVDataPTAImpl;
51
52
 
52
53
  public:
53
54
  typedef Set<const CallICFGNode*> CallSiteSet;
@@ -560,7 +561,7 @@ private:
560
561
  /// Add a temp field value node, this method can only invoked by getGepValVar
561
562
  NodeID addGepValNode(const SVFValue* curInst,const SVFValue* val, const AccessPath& ap, NodeID i, const SVFType* type);
562
563
  /// Add a field obj node, this method can only invoked by getGepObjVar
563
- NodeID addGepObjNode(const MemObj* obj, const APOffset& apOffset);
564
+ NodeID addGepObjNode(const MemObj* obj, const APOffset& apOffset, const NodeID gepId);
564
565
  /// Add a field-insensitive node, this method can only invoked by getFIGepObjNode
565
566
  NodeID addFIObjNode(const MemObj* obj);
566
567
  //@}
@@ -82,6 +82,12 @@ public:
82
82
  return numObjects;
83
83
  }
84
84
 
85
+ inline void increaseNumOfObjAndNodes()
86
+ {
87
+ ++numObjects;
88
+ ++numNodes;
89
+ }
90
+
85
91
  private:
86
92
  /// Builds a node ID allocator with the strategy specified on the command line.
87
93
  NodeIDAllocator(void);
@@ -181,6 +181,14 @@ private:
181
181
  /// Dumps maps consume and yield.
182
182
  void dumpLocVersionMaps(void) const;
183
183
 
184
+ void solveAndwritePtsToFile(const std::string& filename) override;
185
+
186
+ void writeVersionedAnalysisResultToFile(const std::string& filename);
187
+
188
+ void readVersionedAnalysisResultFromFile(std::ifstream& F);
189
+
190
+ void readPtsFromFile(const std::string& filename) override;
191
+
184
192
  /// Dumps a MeldVersion to stdout.
185
193
  static void dumpMeldVersion(MeldVersion &v);
186
194
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-lib",
3
- "version": "1.0.1653",
3
+ "version": "1.0.1654",
4
4
  "description": "SVF's npm support",
5
5
  "main": "index.js",
6
6
  "scripts": {