diff options
author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-10-20 23:18:48 +0200 |
---|---|---|
committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-10-23 01:08:01 +0200 |
commit | 29aab3ee2f7ab586b5e476f40d427ff9e77fca22 (patch) | |
tree | db12ac32fae1b6e69cff0a023320fa89ceefcc96 | |
parent | cfca7b4c6cb48283cb554fc91dc859ff669f2547 (diff) | |
download | sparse-29aab3ee2f7ab586b5e476f40d427ff9e77fca22.tar.gz |
unop: add testcases for unop simplifications
Add a few testcases for the simplification of unary operations.
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r-- | validation/optim/simplify-neg-add-cte.c | 12 | ||||
-rw-r--r-- | validation/optim/simplify-neg-not.c | 10 | ||||
-rw-r--r-- | validation/optim/simplify-neg-sub.c | 10 | ||||
-rw-r--r-- | validation/optim/simplify-not-add-cte.c | 12 | ||||
-rw-r--r-- | validation/optim/simplify-not-neg.c | 10 | ||||
-rw-r--r-- | validation/optim/simplify-not-sub-cte.c | 12 | ||||
-rw-r--r-- | validation/optim/simplify-not-xor-cte.c | 12 |
7 files changed, 78 insertions, 0 deletions
diff --git a/validation/optim/simplify-neg-add-cte.c b/validation/optim/simplify-neg-add-cte.c new file mode 100644 index 00000000..4e425096 --- /dev/null +++ b/validation/optim/simplify-neg-add-cte.c @@ -0,0 +1,12 @@ +#define C 3 + +int foo(int x) { return -(x + C) == (-3 - x); } + +/* + * check-name: simplify-neg-add-cte + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ diff --git a/validation/optim/simplify-neg-not.c b/validation/optim/simplify-neg-not.c new file mode 100644 index 00000000..4bd0abfb --- /dev/null +++ b/validation/optim/simplify-neg-not.c @@ -0,0 +1,10 @@ +int foo(int x) { return -(~x) == x + 1; } + +/* + * check-name: simplify-neg-not + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ diff --git a/validation/optim/simplify-neg-sub.c b/validation/optim/simplify-neg-sub.c new file mode 100644 index 00000000..b73c9e5e --- /dev/null +++ b/validation/optim/simplify-neg-sub.c @@ -0,0 +1,10 @@ +int foo(int x, int y) { return -(x - y) == (y - x); } + +/* + * check-name: simplify-neg-sub + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ diff --git a/validation/optim/simplify-not-add-cte.c b/validation/optim/simplify-not-add-cte.c new file mode 100644 index 00000000..cf7fe2f2 --- /dev/null +++ b/validation/optim/simplify-not-add-cte.c @@ -0,0 +1,12 @@ +#define C 3 + +int foo(int x) { return ~(x + C) == (~C - x); } + +/* + * check-name: simplify-not-add-cte + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ diff --git a/validation/optim/simplify-not-neg.c b/validation/optim/simplify-not-neg.c new file mode 100644 index 00000000..b9675ea6 --- /dev/null +++ b/validation/optim/simplify-not-neg.c @@ -0,0 +1,10 @@ +int foo(int x) { return ~(-x) == (x - 1); } + +/* + * check-name: simplify-not-neg + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ diff --git a/validation/optim/simplify-not-sub-cte.c b/validation/optim/simplify-not-sub-cte.c new file mode 100644 index 00000000..ec105beb --- /dev/null +++ b/validation/optim/simplify-not-sub-cte.c @@ -0,0 +1,12 @@ +#define C 3 + +int foo(int x) { return ~(C - x) == (x + ~C); } + +/* + * check-name: simplify-not-sub-cte + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ diff --git a/validation/optim/simplify-not-xor-cte.c b/validation/optim/simplify-not-xor-cte.c new file mode 100644 index 00000000..d3046f20 --- /dev/null +++ b/validation/optim/simplify-not-xor-cte.c @@ -0,0 +1,12 @@ +#define C 3 + +int foo(int x) { return ~(x ^ C) == (x ^ ~C); } + +/* + * check-name: simplify-not-xor-cte + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-contains: ret\\..*\\$1 + */ |