svf-lib 1.0.1737 → 1.0.1739
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/svf/include/MemoryModel/AccessPath.h +7 -7
- 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/AccessPath.h +7 -7
- package/package.json +1 -1
|
Binary file
|
|
@@ -65,13 +65,13 @@ public:
|
|
|
65
65
|
typedef std::vector<IdxOperandPair> IdxOperandPairs;
|
|
66
66
|
|
|
67
67
|
/// Constructor
|
|
68
|
-
AccessPath(APOffset o = 0, const SVFType* srcTy = nullptr) : fldIdx(o),
|
|
68
|
+
AccessPath(APOffset o = 0, const SVFType* srcTy = nullptr) : fldIdx(o), gepPointeeType(srcTy) {}
|
|
69
69
|
|
|
70
70
|
/// Copy Constructor
|
|
71
71
|
AccessPath(const AccessPath& ap)
|
|
72
72
|
: fldIdx(ap.fldIdx),
|
|
73
73
|
idxOperandPairs(ap.getIdxOperandPairVec()),
|
|
74
|
-
|
|
74
|
+
gepPointeeType(ap.getGepPointeeType())
|
|
75
75
|
{
|
|
76
76
|
}
|
|
77
77
|
|
|
@@ -85,13 +85,13 @@ public:
|
|
|
85
85
|
{
|
|
86
86
|
fldIdx = rhs.fldIdx;
|
|
87
87
|
idxOperandPairs = rhs.getIdxOperandPairVec();
|
|
88
|
-
|
|
88
|
+
gepPointeeType = rhs.gepPointeeType;
|
|
89
89
|
return *this;
|
|
90
90
|
}
|
|
91
91
|
inline bool operator==(const AccessPath& rhs) const
|
|
92
92
|
{
|
|
93
93
|
return this->fldIdx == rhs.fldIdx &&
|
|
94
|
-
this->idxOperandPairs == rhs.idxOperandPairs && this->
|
|
94
|
+
this->idxOperandPairs == rhs.idxOperandPairs && this->gepPointeeType == rhs.gepPointeeType;
|
|
95
95
|
}
|
|
96
96
|
//@}
|
|
97
97
|
|
|
@@ -109,9 +109,9 @@ public:
|
|
|
109
109
|
{
|
|
110
110
|
return idxOperandPairs;
|
|
111
111
|
}
|
|
112
|
-
inline const SVFType*
|
|
112
|
+
inline const SVFType* getGepPointeeType() const
|
|
113
113
|
{
|
|
114
|
-
return
|
|
114
|
+
return gepPointeeType;
|
|
115
115
|
}
|
|
116
116
|
//@}
|
|
117
117
|
|
|
@@ -173,7 +173,7 @@ private:
|
|
|
173
173
|
|
|
174
174
|
APOffset fldIdx; ///< Accumulated Constant Offsets
|
|
175
175
|
IdxOperandPairs idxOperandPairs; ///< a vector of actual offset in the form of <SVF Var, iterator type>
|
|
176
|
-
const SVFType*
|
|
176
|
+
const SVFType* gepPointeeType; /// source element type in gep instruction,
|
|
177
177
|
/// e.g., %f1 = getelementptr inbounds %struct.MyStruct, %struct.MyStruct* %arrayidx, i32 0, i32 0
|
|
178
178
|
/// the source element type is %struct.MyStruct
|
|
179
179
|
};
|
|
Binary file
|
|
Binary file
|
|
@@ -61,13 +61,13 @@ public:
|
|
|
61
61
|
typedef std::vector<IdxOperandPair> IdxOperandPairs;
|
|
62
62
|
|
|
63
63
|
/// Constructor
|
|
64
|
-
AccessPath(APOffset o = 0, const SVFType* srcTy = nullptr) : fldIdx(o),
|
|
64
|
+
AccessPath(APOffset o = 0, const SVFType* srcTy = nullptr) : fldIdx(o), gepPointeeType(srcTy) {}
|
|
65
65
|
|
|
66
66
|
/// Copy Constructor
|
|
67
67
|
AccessPath(const AccessPath& ap)
|
|
68
68
|
: fldIdx(ap.fldIdx),
|
|
69
69
|
idxOperandPairs(ap.getIdxOperandPairVec()),
|
|
70
|
-
|
|
70
|
+
gepPointeeType(ap.getGepPointeeType())
|
|
71
71
|
{
|
|
72
72
|
}
|
|
73
73
|
|
|
@@ -81,13 +81,13 @@ public:
|
|
|
81
81
|
{
|
|
82
82
|
fldIdx = rhs.fldIdx;
|
|
83
83
|
idxOperandPairs = rhs.getIdxOperandPairVec();
|
|
84
|
-
|
|
84
|
+
gepPointeeType = rhs.gepPointeeType;
|
|
85
85
|
return *this;
|
|
86
86
|
}
|
|
87
87
|
inline bool operator==(const AccessPath& rhs) const
|
|
88
88
|
{
|
|
89
89
|
return this->fldIdx == rhs.fldIdx &&
|
|
90
|
-
this->idxOperandPairs == rhs.idxOperandPairs && this->
|
|
90
|
+
this->idxOperandPairs == rhs.idxOperandPairs && this->gepPointeeType == rhs.gepPointeeType;
|
|
91
91
|
}
|
|
92
92
|
//@}
|
|
93
93
|
|
|
@@ -105,9 +105,9 @@ public:
|
|
|
105
105
|
{
|
|
106
106
|
return idxOperandPairs;
|
|
107
107
|
}
|
|
108
|
-
inline const SVFType*
|
|
108
|
+
inline const SVFType* getGepPointeeType() const
|
|
109
109
|
{
|
|
110
|
-
return
|
|
110
|
+
return gepPointeeType;
|
|
111
111
|
}
|
|
112
112
|
//@}
|
|
113
113
|
|
|
@@ -168,7 +168,7 @@ private:
|
|
|
168
168
|
|
|
169
169
|
APOffset fldIdx; ///< Accumulated Constant Offsets
|
|
170
170
|
IdxOperandPairs idxOperandPairs; ///< a vector of actual offset in the form of <SVF Var, iterator type>
|
|
171
|
-
const SVFType*
|
|
171
|
+
const SVFType* gepPointeeType; /// source element type in gep instruction,
|
|
172
172
|
/// e.g., %f1 = getelementptr inbounds %struct.MyStruct, %struct.MyStruct* %arrayidx, i32 0, i32 0
|
|
173
173
|
/// the source element type is %struct.MyStruct
|
|
174
174
|
};
|