1f08c3bdfSopenharmony_cistatic int add(int a, int b) { return (a + b) == (b + a); }
2f08c3bdfSopenharmony_cistatic int mul(int a, int b) { return (a * b) == (b * a); }
3f08c3bdfSopenharmony_cistatic int and(int a, int b) { return (a & b) == (b & a); }
4f08c3bdfSopenharmony_cistatic int ior(int a, int b) { return (a | b) == (b | a); }
5f08c3bdfSopenharmony_cistatic int xor(int a, int b) { return (a ^ b) == (b ^ a); }
6f08c3bdfSopenharmony_cistatic int  eq(int a, int b) { return (a == b) == (b == a); }
7f08c3bdfSopenharmony_cistatic int  ne(int a, int b) { return (a != b) == (b != a); }
8f08c3bdfSopenharmony_ci
9f08c3bdfSopenharmony_ci
10f08c3bdfSopenharmony_ci/*
11f08c3bdfSopenharmony_ci * check-name: cse-commutativity
12f08c3bdfSopenharmony_ci * check-command: test-linearize $file
13f08c3bdfSopenharmony_ci * check-output-ignore
14f08c3bdfSopenharmony_ci *
15f08c3bdfSopenharmony_ci * check-output-excludes: add\\.
16f08c3bdfSopenharmony_ci * check-output-excludes: muls\\.
17f08c3bdfSopenharmony_ci * check-output-excludes: and\\.
18f08c3bdfSopenharmony_ci * check-output-excludes: or\\.
19f08c3bdfSopenharmony_ci * check-output-excludes: xor\\.
20f08c3bdfSopenharmony_ci * check-output-excludes: seteq\\.
21f08c3bdfSopenharmony_ci * check-output-excludes: setne\\.
22f08c3bdfSopenharmony_ci */
23