summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2017-07-20 10:35:38 +0200
committerajreynol <andrew.j.reynolds@gmail.com>2017-07-20 10:35:43 +0200
commit6d82ee2d1f84065ff4a86f688a3b671b85728f80 (patch)
treeaad38c08dc4cef60132a1734776c5c9d252e7806 /test
parentd70a63324c95210f1d78c2efc46395d2369d2e2b (diff)
Fix a few bugs related to sygus.
Diffstat (limited to 'test')
-rw-r--r--test/regress/regress0/sygus/Makefile.am3
-rw-r--r--test/regress/regress0/sygus/parse-bv-let.sy20
2 files changed, 22 insertions, 1 deletions
diff --git a/test/regress/regress0/sygus/Makefile.am b/test/regress/regress0/sygus/Makefile.am
index 0786c3f31..c22f64b93 100644
--- a/test/regress/regress0/sygus/Makefile.am
+++ b/test/regress/regress0/sygus/Makefile.am
@@ -61,7 +61,8 @@ TESTS = commutative.sy \
strings-trivial.sy \
General_plus10.sy \
qe.sy \
- cggmp.sy
+ cggmp.sy \
+ parse-bv-let.sy
# sygus tests currently taking too long for make regress
diff --git a/test/regress/regress0/sygus/parse-bv-let.sy b/test/regress/regress0/sygus/parse-bv-let.sy
new file mode 100644
index 000000000..88ddcf139
--- /dev/null
+++ b/test/regress/regress0/sygus/parse-bv-let.sy
@@ -0,0 +1,20 @@
+; EXPECT: unsat
+; COMMAND-LINE: --no-dump-synth
+(set-logic BV)
+
+(define-fun bit-reset ((x (BitVec 32)) (bit (BitVec 32))) (BitVec 32)
+ (let ((modulo-shift (BitVec 32) (bvand bit #x0000001f)))
+ (bvand modulo-shift x)))
+
+(synth-fun btr ((x (BitVec 32)) (bit (BitVec 32))) (BitVec 32)
+ ((Start (BitVec 32) (
+ (Constant (BitVec 32))
+ (Variable (BitVec 32))
+ (bvneg Start) (bvnot Start) (bvadd Start Start) (bvand Start Start) (bvlshr Start Start) (bvmul Start Start) (bvor Start Start) (bvshl Start Start)
+ ))))
+
+(declare-var x (BitVec 32))
+(declare-var bit (BitVec 32))
+(constraint (= (btr x bit) #b00000000000000000000000000000000))
+
+(check-synth)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback