about summary refs log tree commit diff homepage
path: root/test/Expr/Evaluate.kquery
diff options
context:
space:
mode:
authorEric Rizzi <eric.rizzi@gmail.com>2015-09-14 14:32:37 -0400
committerDan Liew <delcypher@gmail.com>2016-11-23 20:36:44 +0000
commitf27cf86466d75c71a302abe5e0a3ffcad1670373 (patch)
treedd598d703d01fc8292afa6cc56816ec822715923 /test/Expr/Evaluate.kquery
parent094a21832d94bfaa5da8ea667e646328ca0e5432 (diff)
downloadklee-f27cf86466d75c71a302abe5e0a3ffcad1670373.tar.gz
Renamed .pc to .kquery (kleaver query)
Diffstat (limited to 'test/Expr/Evaluate.kquery')
-rw-r--r--test/Expr/Evaluate.kquery28
1 files changed, 28 insertions, 0 deletions
diff --git a/test/Expr/Evaluate.kquery b/test/Expr/Evaluate.kquery
new file mode 100644
index 00000000..43134475
--- /dev/null
+++ b/test/Expr/Evaluate.kquery
@@ -0,0 +1,28 @@
+# RUN: %kleaver -evaluate %s > %t.log
+
+array arr0[4] : w32 -> w8 = symbolic
+array arr1[8] : w32 -> w8 = symbolic
+
+# RUN: grep "Query 0:	INVALID" %t.log
+# Query 0
+(query [] (Not (Ult (ReadLSB w32 0 arr0)
+                    16)))
+
+# RUN: grep "Query 1:	VALID" %t.log
+# Query 1
+(query [(Eq N0:(ReadLSB w32 0 arr1) 10)
+        (Eq N1:(ReadLSB w32 4 arr1) 20)]
+       (Eq (Add w32 N0 N1)
+           30))
+
+# RUN: grep "Query 2:	VALID" %t.log
+# Query 2
+array hello[4] : w32 -> w8 = [ 1 2 3 5 ]
+(query [] (Eq (Add w8 (Read w8 0 hello)
+                      (Read w8 3 hello))
+              6))
+
+# RUN: grep "Query 3:	VALID" %t.log
+# Query 2
+(query [] (Eq (Not w8 (Read w8 0 arr1))
+              (Xor w8 (Read w8 0 arr1) 0xff)))