aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-04-17 22:01:05 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-04-18 17:21:37 +0200
commit7ae82c3a41c71c977e409dd20679bc4aec19961c (patch)
tree47c7368fe10dda65b58b42caa27c4160a7857f2b
parent48eb2ca449b7f8e8e0684a2d92c8a1d0224861da (diff)
downloadsparse-7ae82c3a41c71c977e409dd20679bc4aec19961c.tar.gz
add testcases for AND(x > 0, x <= C) --> x u<= C
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r--validation/optim/range-check1.c17
-rw-r--r--validation/optim/range-check2.c15
2 files changed, 32 insertions, 0 deletions
diff --git a/validation/optim/range-check1.c b/validation/optim/range-check1.c
new file mode 100644
index 00000000..82b93991
--- /dev/null
+++ b/validation/optim/range-check1.c
@@ -0,0 +1,17 @@
+#define N 1024
+
+_Bool check_ok(long i)
+{
+ return i >= 0 && i < N;
+}
+
+/*
+ * check-name: range-check1
+ * check-command: test-linearize -Wno-decl $file
+ * check-known-to-fail
+ *
+ * check-output-ignore
+ * check-output-contains: setbe\\..*0x3ff
+ * check-output-excludes: set[lga][te]\\.
+ * check-output-excludes: set[ab]\\.
+ */
diff --git a/validation/optim/range-check2.c b/validation/optim/range-check2.c
new file mode 100644
index 00000000..f565b84e
--- /dev/null
+++ b/validation/optim/range-check2.c
@@ -0,0 +1,15 @@
+#define N 1024
+
+_Bool check_ok(int i)
+{
+ return (i >= 0 && i < N) == (((unsigned int)i) < N);
+}
+
+/*
+ * check-name: range-check2
+ * check-command: test-linearize -Wno-decl $file
+ * check-known-to-fail
+ *
+ * check-output-ignore
+ * check-output-returns: 1
+ */