diff options
Diffstat (limited to 'validation/optim')
| -rw-r--r-- | validation/optim/cse-commutativity.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/validation/optim/cse-commutativity.c b/validation/optim/cse-commutativity.c new file mode 100644 index 00000000..82603478 --- /dev/null +++ b/validation/optim/cse-commutativity.c @@ -0,0 +1,22 @@ +static int add(int a, int b) { return (a + b) == (b + a); } +static int mul(int a, int b) { return (a * b) == (b * a); } +static int and(int a, int b) { return (a & b) == (b & a); } +static int ior(int a, int b) { return (a | b) == (b | a); } +static int xor(int a, int b) { return (a ^ b) == (b ^ a); } +static int eq(int a, int b) { return (a == b) == (b == a); } +static int ne(int a, int b) { return (a != b) == (b != a); } + + +/* + * check-name: cse-commutativity + * check-command: test-linearize $file + * check-output-ignore + * + * check-output-excludes: add\\. + * check-output-excludes: muls\\. + * check-output-excludes: and\\. + * check-output-excludes: or\\. + * check-output-excludes: xor\\. + * check-output-excludes: seteq\\. + * check-output-excludes: setne\\. + */ |
