Skip to content

Commit

Permalink
fix bitvec err for sse
Browse files Browse the repository at this point in the history
  • Loading branch information
jiawei.wang committed Jul 25, 2023
1 parent 753e7cc commit 3aec7a3
Showing 1 changed file with 7 additions and 12 deletions.
19 changes: 7 additions & 12 deletions svf/include/AbstractExecution/BoundedZ3Expr.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@

#ifndef SVF_BOUNDEDZ3EXPR_H
#define SVF_BOUNDEDZ3EXPR_H
#define MaxBvLen 64

#include "Util/Z3Expr.h"

Expand Down Expand Up @@ -248,20 +249,17 @@ class BoundedZ3Expr : public Z3Expr

friend BoundedZ3Expr operator^(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
{
s64_t maxBvLen = 64;
return bv2int(int2bv(maxBvLen, lhs.getExpr()) ^ int2bv(maxBvLen, rhs.getExpr()), true);
return bv2int(int2bv(MaxBvLen, lhs.getExpr()) ^ int2bv(MaxBvLen, rhs.getExpr()), true);
}

friend BoundedZ3Expr operator&(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
{
s64_t maxBvLen = 64;
return bv2int(int2bv(maxBvLen, lhs.getExpr()) & int2bv(maxBvLen, rhs.getExpr()), true);
return bv2int(int2bv(MaxBvLen, lhs.getExpr()) & int2bv(MaxBvLen, rhs.getExpr()), true);
}

friend BoundedZ3Expr operator|(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
{
s64_t maxBvLen = 64;
return bv2int(int2bv(maxBvLen, lhs.getExpr()) | int2bv(maxBvLen, rhs.getExpr()), true);
return bv2int(int2bv(MaxBvLen, lhs.getExpr()) | int2bv(MaxBvLen, rhs.getExpr()), true);
}

friend BoundedZ3Expr ashr(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
Expand All @@ -274,8 +272,7 @@ class BoundedZ3Expr : public Z3Expr
return ite(lhs.getExpr() >= 0, BoundedZ3Expr(0), BoundedZ3Expr(-1));
else
{
s64_t maxBvLen = 64;
return bv2int(ashr(int2bv(maxBvLen, lhs.getExpr()), int2bv(maxBvLen, rhs.getExpr())), true);
return bv2int(ashr(int2bv(MaxBvLen, lhs.getExpr()), int2bv(MaxBvLen, rhs.getExpr())), true);
}
}

Expand All @@ -289,15 +286,13 @@ class BoundedZ3Expr : public Z3Expr
return ite(lhs.getExpr() >= 0, plus_infinity(), minus_infinity());
else
{
s64_t maxBvLen = 64;
return bv2int(shl(int2bv(maxBvLen, lhs.getExpr()), int2bv(maxBvLen, rhs.getExpr())), true);
return bv2int(shl(int2bv(MaxBvLen, lhs.getExpr()), int2bv(MaxBvLen, rhs.getExpr())), true);
}
}

friend BoundedZ3Expr lshr(const BoundedZ3Expr &lhs, const BoundedZ3Expr &rhs)
{
s64_t maxBvLen = 64;
return bv2int(lshr(int2bv(maxBvLen, lhs.getExpr()), int2bv(maxBvLen, rhs.getExpr())), true);
return bv2int(lshr(int2bv(MaxBvLen, lhs.getExpr()), int2bv(MaxBvLen, rhs.getExpr())), true);
}

friend BoundedZ3Expr int2bv(u32_t n, const BoundedZ3Expr &e)
Expand Down

0 comments on commit 3aec7a3

Please sign in to comment.