@@ -130,7 +130,7 @@ namespace bv {
130
130
void sls_eval::init_eval_bv (app* e) {
131
131
if (bv.is_bv (e)) {
132
132
auto & v = wval0 (e);
133
- v.set (wval1 (e));
133
+ v.set (wval1 (e). bits );
134
134
}
135
135
else if (m.is_bool (e))
136
136
m_eval.setx (e->get_id (), bval1_bv (e), false );
@@ -299,10 +299,10 @@ namespace bv {
299
299
return bval0 (e);
300
300
}
301
301
302
- svector< digit_t > & sls_eval::wval1 (app* e) const {
302
+ sls_valuation & sls_eval::wval1 (app* e) const {
303
303
auto & val = *m_values1[e->get_id ()];
304
304
wval1 (e, val);
305
- return val. bits ;
305
+ return val;
306
306
}
307
307
308
308
void sls_eval::wval1 (app* e, sls_valuation& val) const {
@@ -429,8 +429,6 @@ namespace bv {
429
429
break ;
430
430
}
431
431
case OP_CONCAT: {
432
- if (e->get_num_args () != 2 )
433
- verbose_stream () << mk_bounded_pp (e, m) << " \n " ;
434
432
SASSERT (e->get_num_args () == 2 );
435
433
auto const & a = wval0 (e->get_arg (0 ));
436
434
auto const & b = wval0 (e->get_arg (1 ));
@@ -1005,8 +1003,8 @@ namespace bv {
1005
1003
}
1006
1004
else {
1007
1005
// b := a - e
1008
- a .set_sub (m_tmp, a.bits , e.bits );
1009
- a .set_repair (random_bool (), m_tmp);
1006
+ b .set_sub (m_tmp, a.bits , e.bits );
1007
+ b .set_repair (random_bool (), m_tmp);
1010
1008
}
1011
1009
return true ;
1012
1010
}
@@ -1186,7 +1184,6 @@ namespace bv {
1186
1184
if (a.is_zero (m_tmp2))
1187
1185
return false ;
1188
1186
if (!a.get_at_least (m_tmp2, m_tmp)) {
1189
- verbose_stream () << " could not get at least\n " ;
1190
1187
return false ;
1191
1188
}
1192
1189
}
@@ -1571,7 +1568,7 @@ namespace bv {
1571
1568
return true ;
1572
1569
}
1573
1570
if (bv.is_bv (e))
1574
- return wval0 (e).try_set (wval1 (to_app (e)));
1571
+ return wval0 (e).try_set (wval1 (to_app (e)). bits );
1575
1572
return false ;
1576
1573
}
1577
1574
}
0 commit comments