* with w = getSize(t) = getSize(s) and z = 0 with getSize(z) = w */
unsigned w = bv::utils::getSize(s);
Node z = bv::utils::mkZero(w);
- Node z_o_t = nm->mkNode(BITVECTOR_CONCAT, z, t);
- Node zot_shl_s = nm->mkNode(BITVECTOR_SHL, z_o_t, s);
- Node ext = bv::utils::mkExtract(zot_shl_s, 2*w-1, w);
+ Node z_o_t = nm->mkNode(BITVECTOR_CONCAT, z, t);
+ Node z_o_s = nm->mkNode(BITVECTOR_CONCAT, z, s);
+ Node zot_shl_zos = nm->mkNode(BITVECTOR_SHL, z_o_t, z_o_s);
+ Node ext = bv::utils::mkExtract(zot_shl_zos, 2*w-1, w);
scl = nm->mkNode(OR,
nm->mkNode(EQUAL, s, z),
nm->mkNode(EQUAL, ext, z));
psyco-001-bv.smt2 \
bug822.smt2 \
qbv-test-invert-mul.smt2 \
+ qbv-test-invert-bvand.smt2 \
+ qbv-test-invert-bvor.smt2 \
+ qbv-test-invert-bvlshr-0.smt2 \
+ qbv-test-invert-bvurem-1.smt2 \
qbv-simple-2vars-vo.smt2 \
qbv-test-invert-concat-0.smt2 \
qbv-test-invert-concat-1.smt2 \