svf-lib 1.0.1473 → 1.0.1475
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/AbstractExecution/BoundedZ3Expr.h +4 -1
- package/SVF-linux/svf/include/AbstractExecution/IntervalValue.h +2 -2
- package/SVF-linux/svf/include/AbstractExecution/NumericLiteral.h +1 -0
- package/SVF-linux/svf/include/SVFIR/SVFIRRW.h +1 -1
- package/package.json +1 -1
|
Binary file
|
|
Binary file
|
|
@@ -179,6 +179,7 @@ public:
|
|
|
179
179
|
return lhs;
|
|
180
180
|
else
|
|
181
181
|
assert(false && "undefined operation +oo + -oo");
|
|
182
|
+
abort();
|
|
182
183
|
}
|
|
183
184
|
|
|
184
185
|
friend BoundedZ3Expr operator-(const BoundedZ3Expr &lhs)
|
|
@@ -198,6 +199,7 @@ public:
|
|
|
198
199
|
return lhs;
|
|
199
200
|
else
|
|
200
201
|
assert(false && "undefined operation +oo - +oo");
|
|
202
|
+
abort();
|
|
201
203
|
}
|
|
202
204
|
|
|
203
205
|
friend BoundedZ3Expr operator*(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
@@ -225,7 +227,7 @@ public:
|
|
|
225
227
|
else
|
|
226
228
|
// TODO: +oo/-oo L'Hôpital's rule?
|
|
227
229
|
return eq(lhs, rhs) ? plus_infinity() : minus_infinity();
|
|
228
|
-
|
|
230
|
+
abort();
|
|
229
231
|
}
|
|
230
232
|
|
|
231
233
|
friend BoundedZ3Expr operator%(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
@@ -241,6 +243,7 @@ public:
|
|
|
241
243
|
else
|
|
242
244
|
// TODO: +oo/-oo L'Hôpital's rule?
|
|
243
245
|
return eq(lhs, rhs) ? plus_infinity() : minus_infinity();
|
|
246
|
+
abort();
|
|
244
247
|
}
|
|
245
248
|
|
|
246
249
|
friend BoundedZ3Expr operator^(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
|
|
@@ -546,7 +546,7 @@ inline IntervalValue operator%(const IntervalValue &lhs,
|
|
|
546
546
|
else
|
|
547
547
|
{
|
|
548
548
|
NumericLiteral n_ub = max(abs(lhs.lb()), abs(lhs.ub()));
|
|
549
|
-
NumericLiteral d_ub = max(abs(rhs.lb()), rhs.ub() - 1
|
|
549
|
+
NumericLiteral d_ub = max(abs(rhs.lb()), rhs.ub()) - 1;
|
|
550
550
|
NumericLiteral ub = min(n_ub, d_ub);
|
|
551
551
|
|
|
552
552
|
if (lhs.lb().getNumeral() < 0)
|
|
@@ -592,7 +592,7 @@ inline IntervalValue operator>(const IntervalValue &lhs, const IntervalValue &rh
|
|
|
592
592
|
return IntervalValue(1, 1);
|
|
593
593
|
// lhs[1,2] rhs[3,4]
|
|
594
594
|
}
|
|
595
|
-
else if (lhs.ub().geq(rhs.lb()))
|
|
595
|
+
else if (!lhs.ub().geq(rhs.lb()))
|
|
596
596
|
{
|
|
597
597
|
return IntervalValue(0, 0);
|
|
598
598
|
}
|
|
@@ -408,7 +408,7 @@ private:
|
|
|
408
408
|
cJSON* toJson(const LocationSet& ls);
|
|
409
409
|
cJSON* toJson(const SVFLoop* loop);
|
|
410
410
|
cJSON* toJson(const MemObj* memObj);
|
|
411
|
-
cJSON* toJson(const ObjTypeInfo* objTypeInfo); //
|
|
411
|
+
cJSON* toJson(const ObjTypeInfo* objTypeInfo); // Only owned by MemObj
|
|
412
412
|
cJSON* toJson(const SVFLoopAndDomInfo* ldInfo); // Only owned by SVFFunction
|
|
413
413
|
cJSON* toJson(const StInfo* type); // Ensure Only owned by SVFType
|
|
414
414
|
|