new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 -20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, -25) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, -15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, -25) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, -25) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, -15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, -25) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, -15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, -25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, -25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, -15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, -15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, -25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, -15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, -25) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 -20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, -25) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, -15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, -25) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, -25) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, -15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, -25) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, -20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, -15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, -25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, -25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, -15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, -15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, -25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, -15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, -20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, -25) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,136 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+#if 0
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+#endif
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (long a, long b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (short a, short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned short a, unsigned short b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (unsigned a, unsigned b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, ==, ==)
+TEST_FUNC(2, ==, !=)
+TEST_FUNC(3, ==, <=)
+TEST_FUNC(4, ==, <)
+TEST_FUNC(5, ==, >=)
+TEST_FUNC(6, ==, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, ==, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, ==, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, ==, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, ==, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, ==, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, ==, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >=, ==)
+TEST_FUNC(2, >=, !=)
+TEST_FUNC(3, >=, <=)
+TEST_FUNC(4, >=, <)
+TEST_FUNC(5, >=, >=)
+TEST_FUNC(6, >=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >=, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >=, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >=, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >=, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >=, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >=, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, >, ==)
+TEST_FUNC(2, >, !=)
+TEST_FUNC(3, >, <=)
+TEST_FUNC(4, >, <)
+TEST_FUNC(5, >, >=)
+TEST_FUNC(6, >, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, >, ==) */
+ if (test_1 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, >, !=) */
+ if (test_2 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, >, <=) */
+ if (test_3 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, >, <) */
+ if (test_4 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, >, >=) */
+ if (test_5 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, >, >) */
+ if (test_6 (5, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <=, ==)
+TEST_FUNC(2, <=, !=)
+TEST_FUNC(3, <=, <=)
+TEST_FUNC(4, <=, <)
+TEST_FUNC(5, <=, >=)
+TEST_FUNC(6, <=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <=, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <=, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <=, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <=, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <=, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <=, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,134 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, <, ==)
+TEST_FUNC(2, <, !=)
+TEST_FUNC(3, <, <=)
+TEST_FUNC(4, <, <)
+TEST_FUNC(5, <, >=)
+TEST_FUNC(6, <, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, <, ==) */
+ if (test_1 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, <, !=) */
+ if (test_2 (5, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, <, <=) */
+ if (test_3 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, <, <) */
+ if (test_4 (5, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, <, >=) */
+ if (test_5 (5, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, <, >) */
+ if (test_6 (5, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (5, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 || b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != T_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,102 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fno-inline" } */
+#define T_VAL 8
+#define F_VAL 16
+
+#define TEST_FUNC(i, OP1, OP2) \
+int test_##i (int a, int b) \
+{ \
+ if (a OP1 10 && b OP2 20) \
+ return T_VAL; \
+ else \
+ return F_VAL; \
+}
+
+TEST_FUNC(1, !=, ==)
+TEST_FUNC(2, !=, !=)
+TEST_FUNC(3, !=, <=)
+TEST_FUNC(4, !=, <)
+TEST_FUNC(5, !=, >=)
+TEST_FUNC(6, !=, >)
+
+
+int main ()
+{
+ /* TEST_FUNC(1, !=, ==) */
+ if (test_1 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_1 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(2, !=, !=) */
+ if (test_2 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_2 (20, 30) != T_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(3, !=, <=) */
+ if (test_3 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_3 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(4, !=, <) */
+ if (test_4 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 30) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 15) != T_VAL)
+ __builtin_abort ();
+ if (test_4 (20, 30) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(5, !=, >=) */
+ if (test_5 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 20) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_5 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ /* TEST_FUNC(6, !=, >) */
+ if (test_6 (10, 25) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (10, 15) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 25) != T_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 20) != F_VAL)
+ __builtin_abort ();
+ if (test_6 (20, 15) != F_VAL)
+ __builtin_abort ();
+
+ return 0;
+}
new file mode 100644
@@ -0,0 +1,84 @@
+/* { dg-do compile } */
+/* { dg-options " -O2 " } */
+
+char foo_c (char a, signed char b)
+{
+ if (a > 9 && b > -20)
+ return 4;
+ else
+ return 26;
+}
+
+char foo_c_1 (char a, signed char b, char c)
+{
+ if (a > c && b == -20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned short foo_us (unsigned short a, short b)
+{
+ if (a > 9 && b < -20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned short foo_us_1 (unsigned short a, short b, unsigned short c)
+{
+ if (a > c && b == -20)
+ return 4;
+ else
+ return 26;
+}
+
+int foo_w (int a, int b)
+{
+ if (a > 9 && b < -20)
+ return 4;
+ else
+ return 26;
+}
+
+int foo_w_1 (int a, int b, int c)
+{
+ if (a > c && b == -20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned foo_uw (unsigned a, int b)
+{
+ if (a > 9 && b < -20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned foo_uw_1 (unsigned a, int b, unsigned c)
+{
+ if (a > c && b == -20)
+ return 4;
+ else
+ return 26;
+}
+
+long foo_l (long a, long b)
+{
+ if (a > 9 && b < -20)
+ return 4;
+ else
+ return 26;
+}
+
+long foo_l_1 (long a, long b, long c)
+{
+ if (a > c && b == -20)
+ return 4;
+ else
+ return 26;
+}
+
+/* { dg-final { scan-assembler-times "ccmn" 11 } } */
new file mode 100644
@@ -0,0 +1,124 @@
+/* { dg-do compile } */
+/* { dg-options " -O2 " } */
+
+char foo_c (char a, char b)
+{
+ if (a > 9 && b < 20)
+ return 4;
+ else
+ return 26;
+}
+
+char foo_c_1 (char a, char b, char c)
+{
+ if (a > c && b == 20)
+ return 4;
+ else
+ return 26;
+}
+
+char foo_c_2 (char a, char b, char c)
+{
+ if (a < 9 && b > c)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned short foo_us (unsigned short a, unsigned short b)
+{
+ if (a > 9 && b < 20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned short foo_us_1 (unsigned short a, unsigned short b, unsigned short c)
+{
+ if (a > c && b == 20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned short foo_us_2 (unsigned short a, unsigned short b, unsigned short c)
+{
+ if (a < 9 && b > c)
+ return 4;
+ else
+ return 26;
+}
+
+int foo_w (int a, int b)
+{
+ if (a > 9 && b < 20)
+ return 4;
+ else
+ return 26;
+}
+
+int foo_w_1 (int a, int b, int c)
+{
+ if (a > c && b == 20)
+ return 4;
+ else
+ return 26;
+}
+
+int foo_w_2 (int a, int b, int c)
+{
+ if (a < 9 && b > c)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned foo_uw (unsigned a, unsigned b)
+{
+ if (a > 9 && b < 20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned foo_uw_1 (unsigned a, unsigned b, unsigned c)
+{
+ if (a > c && b == 20)
+ return 4;
+ else
+ return 26;
+}
+
+unsigned foo_uw_2 (unsigned a, unsigned b, unsigned c)
+{
+ if (a < 9 && b > c)
+ return 4;
+ else
+ return 26;
+}
+
+long foo_l (long a, long b)
+{
+ if (a > 9 && b < 20)
+ return 4;
+ else
+ return 26;
+}
+
+long foo_l_1 (long a, long b, long c)
+{
+ if (a > c && b == 20)
+ return 4;
+ else
+ return 26;
+}
+
+long foo_l_2 (long a, long b, long c)
+{
+ if (a < 9 && b > c)
+ return 4;
+ else
+ return 26;
+}
+
+/* { dg-final { scan-assembler-times "ccmp" 16 } } */