diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-12-16 16:35:59 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-16 16:35:59 -0600 |
commit | cd33db0a13ef195995885c4c42031386b2261ac4 (patch) | |
tree | d3c03af37aa8c60741eb5c54e1122d9328374575 /src/preprocessing/passes | |
parent | d5de3d822b978be11c98da5f026ab5f2ca9d0a83 (diff) |
Simplify preprocessing (#5647)
This simplifies preprocessing so that the only call to theory-preprocess and ite-removal is at the very end. (One exception is early-theory-pp which is used by default in combination with ite-simp to maintain the performance on QF_LIA/nec).
This is in preparation for making theory preprocessing happen lazily, post-CNF conversion.
@HanielB has done SMT-LIB performance runs, see below.
Diffstat (limited to 'src/preprocessing/passes')
-rw-r--r-- | src/preprocessing/passes/unconstrained_simplifier.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/preprocessing/passes/unconstrained_simplifier.cpp b/src/preprocessing/passes/unconstrained_simplifier.cpp index 51434e369..6ebf1b8c8 100644 --- a/src/preprocessing/passes/unconstrained_simplifier.cpp +++ b/src/preprocessing/passes/unconstrained_simplifier.cpp @@ -358,6 +358,8 @@ void UnconstrainedSimplifier::processUnconstrained() case kind::BITVECTOR_SHL: case kind::BITVECTOR_LSHR: case kind::BITVECTOR_ASHR: + case kind::BITVECTOR_UDIV: + case kind::BITVECTOR_UREM: case kind::BITVECTOR_UDIV_TOTAL: case kind::BITVECTOR_UREM_TOTAL: case kind::BITVECTOR_SDIV: |