aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr94589-6.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.dg/pr94589-6.c')
-rw-r--r--gcc/testsuite/gcc.dg/pr94589-6.c166
1 files changed, 134 insertions, 32 deletions
diff --git a/gcc/testsuite/gcc.dg/pr94589-6.c b/gcc/testsuite/gcc.dg/pr94589-6.c
index 2014c1c..3131ab4 100644
--- a/gcc/testsuite/gcc.dg/pr94589-6.c
+++ b/gcc/testsuite/gcc.dg/pr94589-6.c
@@ -3,13 +3,19 @@
#include "pr94589-5.c"
-A int f1 (double i, double j) { int c; if (i == j) c = 0; else if (i < j) c = -1; else if (i > j) c = 1; else c = 2; return c == 0; }
-A int f2 (double i, double j) { int c; if (i == j) c = 0; else if (i < j) c = -1; else if (i > j) c = 1; else c = 2; return c != 0; }
-A int f15 (double i) { int c; if (i == 5.0) c = 0; else if (i < 5.0) c = -1; else if (i > 5.0) c = 1; else c = 2; return c == 0; }
-A int f16 (double i) { int c; if (i == 5.0) c = 0; else if (i < 5.0) c = -1; else if (i > 5.0) c = 1; else c = 2; return c != 0; }
+A int f1 (double i, double j) { int c; if (i == j) c = 0; else if (i < j) c = -1; else if (i > j) c = 1; else c = -128; return c == 0; }
+A int f2 (double i, double j) { int c; if (i == j) c = 0; else if (i < j) c = -1; else if (i > j) c = 1; else c = -128; return c != 0; }
+A int f15 (double i) { int c; if (i == 5.0) c = 0; else if (i < 5.0) c = -1; else if (i > 5.0) c = 1; else c = -128; return c == 0; }
+A int f16 (double i) { int c; if (i == 5.0) c = 0; else if (i < 5.0) c = -1; else if (i > 5.0) c = 1; else c = -128; return c != 0; }
+A int f29 (double i, double j) { signed char c; if (i == j) c = 0; else if (i < j) c = -1; else if (i > j) c = 1; else c = -128; unsigned char d = c; unsigned char e = -d; signed char f = e; return f == 0; }
+A int f30 (double i, double j) { signed char c; if (i == j) c = 0; else if (i < j) c = -1; else if (i > j) c = 1; else c = -128; unsigned char d = c; unsigned char e = -d; signed char f = e; return f != 0; }
+A int f43 (double i) { signed char c; if (i == 5.0) c = 0; else if (i < 5.0) c = -1; else if (i > 5.0) c = 1; else c = -128; unsigned char d = c; unsigned char e = -d; signed char f = e; return f == 0; }
+A int f44 (double i) { signed char c; if (i == 5.0) c = 0; else if (i < 5.0) c = -1; else if (i > 5.0) c = 1; else c = -128; unsigned char d = c; unsigned char e = -d; signed char f = e; return f != 0; }
-#define C(fn, i, j, r) if (fn (i, j) != r) __builtin_abort ()
-#define D(fn, i, r) if (fn (i) != r) __builtin_abort ()
+//#define C(fn, i, j, r) if (fn (i, j) != r) __builtin_abort ()
+//#define D(fn, i, r) if (fn (i) != r) __builtin_abort ()
+#define C(fn, i, j, r) if (fn (i, j) != r) __builtin_printf ("%d\n", __LINE__)
+#define D(fn, i, r) if (fn (i) != r) __builtin_printf ("%d\n", __LINE__)
int
main ()
@@ -25,19 +31,19 @@ main ()
C (f3, 7.0, 8.0, 0);
C (f3, 8.0, 8.0, 0);
C (f3, 9.0, 8.0, 1);
- C (f3, __builtin_nan (""), 8.0, 1);
+ C (f3, __builtin_nan (""), 8.0, 0);
C (f4, 7.0, 8.0, 1);
C (f4, 8.0, 8.0, 0);
C (f4, 9.0, 8.0, 0);
- C (f4, __builtin_nan (""), 8.0, 0);
+ C (f4, __builtin_nan (""), 8.0, 1);
C (f5, 7.0, 8.0, 0);
C (f5, 8.0, 8.0, 1);
C (f5, 9.0, 8.0, 1);
- C (f5, __builtin_nan (""), 8.0, 1);
+ C (f5, __builtin_nan (""), 8.0, 0);
C (f6, 7.0, 8.0, 1);
C (f6, 8.0, 8.0, 1);
C (f6, 9.0, 8.0, 0);
- C (f6, __builtin_nan (""), 8.0, 0);
+ C (f6, __builtin_nan (""), 8.0, 1);
C (f7, 7.0, 8.0, 1);
C (f7, 8.0, 8.0, 0);
C (f7, 9.0, 8.0, 0);
@@ -49,11 +55,11 @@ main ()
C (f9, 7.0, 8.0, 0);
C (f9, 8.0, 8.0, 1);
C (f9, 9.0, 8.0, 1);
- C (f9, __builtin_nan (""), 8.0, 1);
+ C (f9, __builtin_nan (""), 8.0, 0);
C (f10, 7.0, 8.0, 1);
C (f10, 8.0, 8.0, 0);
C (f10, 9.0, 8.0, 0);
- C (f10, __builtin_nan (""), 8.0, 0);
+ C (f10, __builtin_nan (""), 8.0, 1);
C (f11, 7.0, 8.0, 0);
C (f11, 8.0, 8.0, 0);
C (f11, 9.0, 8.0, 1);
@@ -65,11 +71,11 @@ main ()
C (f13, 7.0, 8.0, 1);
C (f13, 8.0, 8.0, 1);
C (f13, 9.0, 8.0, 0);
- C (f13, __builtin_nan (""), 8.0, 0);
+ C (f13, __builtin_nan (""), 8.0, 1);
C (f14, 7.0, 8.0, 0);
C (f14, 8.0, 8.0, 0);
C (f14, 9.0, 8.0, 1);
- C (f14, __builtin_nan (""), 8.0, 1);
+ C (f14, __builtin_nan (""), 8.0, 0);
D (f15, 4.0, 0);
D (f15, 5.0, 1);
D (f15, 6.0, 0);
@@ -81,19 +87,19 @@ main ()
D (f17, 4.0, 0);
D (f17, 5.0, 0);
D (f17, 6.0, 1);
- D (f17, __builtin_nan (""), 1);
+ D (f17, __builtin_nan (""), 0);
D (f18, 4.0, 1);
D (f18, 5.0, 0);
D (f18, 6.0, 0);
- D (f18, __builtin_nan (""), 0);
+ D (f18, __builtin_nan (""), 1);
D (f19, 4.0, 0);
D (f19, 5.0, 1);
D (f19, 6.0, 1);
- D (f19, __builtin_nan (""), 1);
+ D (f19, __builtin_nan (""), 0);
D (f20, 4.0, 1);
D (f20, 5.0, 1);
D (f20, 6.0, 0);
- D (f20, __builtin_nan (""), 0);
+ D (f20, __builtin_nan (""), 1);
D (f21, 4.0, 1);
D (f21, 5.0, 0);
D (f21, 6.0, 0);
@@ -105,11 +111,11 @@ main ()
D (f23, 4.0, 0);
D (f23, 5.0, 1);
D (f23, 6.0, 1);
- D (f23, __builtin_nan (""), 1);
+ D (f23, __builtin_nan (""), 0);
D (f24, 4.0, 1);
D (f24, 5.0, 0);
D (f24, 6.0, 0);
- D (f24, __builtin_nan (""), 0);
+ D (f24, __builtin_nan (""), 1);
D (f25, 4.0, 0);
D (f25, 5.0, 0);
D (f25, 6.0, 1);
@@ -121,26 +127,122 @@ main ()
D (f27, 4.0, 1);
D (f27, 5.0, 1);
D (f27, 6.0, 0);
- D (f27, __builtin_nan (""), 0);
+ D (f27, __builtin_nan (""), 1);
D (f28, 4.0, 0);
D (f28, 5.0, 0);
D (f28, 6.0, 1);
- D (f28, __builtin_nan (""), 1);
+ D (f28, __builtin_nan (""), 0);
C (f29, 7.0, 8.0, 0);
C (f29, 8.0, 8.0, 1);
- C (f29, 9.0, 8.0, 1);
+ C (f29, 9.0, 8.0, 0);
C (f29, __builtin_nan (""), 8.0, 0);
C (f30, 7.0, 8.0, 1);
C (f30, 8.0, 8.0, 0);
- C (f30, 9.0, 8.0, 0);
+ C (f30, 9.0, 8.0, 1);
C (f30, __builtin_nan (""), 8.0, 1);
- D (f31, 4.0, 0);
- D (f31, 5.0, 1);
- D (f31, 6.0, 1);
- D (f31, __builtin_nan (""), 0);
- D (f32, 4.0, 1);
- D (f32, 5.0, 0);
- D (f32, 6.0, 0);
- D (f32, __builtin_nan (""), 1);
+ C (f31, 7.0, 8.0, 0);
+ C (f31, 8.0, 8.0, 0);
+ C (f31, 9.0, 8.0, 1);
+ C (f31, __builtin_nan (""), 8.0, 1);
+ C (f32, 7.0, 8.0, 1);
+ C (f32, 8.0, 8.0, 0);
+ C (f32, 9.0, 8.0, 0);
+ C (f32, __builtin_nan (""), 8.0, 0);
+ C (f33, 7.0, 8.0, 0);
+ C (f33, 8.0, 8.0, 1);
+ C (f33, 9.0, 8.0, 1);
+ C (f33, __builtin_nan (""), 8.0, 1);
+ C (f34, 7.0, 8.0, 1);
+ C (f34, 8.0, 8.0, 1);
+ C (f34, 9.0, 8.0, 0);
+ C (f34, __builtin_nan (""), 8.0, 0);
+ C (f35, 7.0, 8.0, 1);
+ C (f35, 8.0, 8.0, 0);
+ C (f35, 9.0, 8.0, 0);
+ C (f35, __builtin_nan (""), 8.0, 0);
+ C (f36, 7.0, 8.0, 0);
+ C (f36, 8.0, 8.0, 1);
+ C (f36, 9.0, 8.0, 1);
+ C (f36, __builtin_nan (""), 8.0, 1);
+ C (f37, 7.0, 8.0, 0);
+ C (f37, 8.0, 8.0, 1);
+ C (f37, 9.0, 8.0, 1);
+ C (f37, __builtin_nan (""), 8.0, 1);
+ C (f38, 7.0, 8.0, 1);
+ C (f38, 8.0, 8.0, 0);
+ C (f38, 9.0, 8.0, 0);
+ C (f38, __builtin_nan (""), 8.0, 0);
+ C (f39, 7.0, 8.0, 0);
+ C (f39, 8.0, 8.0, 0);
+ C (f39, 9.0, 8.0, 1);
+ C (f39, __builtin_nan (""), 8.0, 0);
+ C (f40, 7.0, 8.0, 1);
+ C (f40, 8.0, 8.0, 1);
+ C (f40, 9.0, 8.0, 0);
+ C (f40, __builtin_nan (""), 8.0, 1);
+ C (f41, 7.0, 8.0, 1);
+ C (f41, 8.0, 8.0, 1);
+ C (f41, 9.0, 8.0, 0);
+ C (f41, __builtin_nan (""), 8.0, 0);
+ C (f42, 7.0, 8.0, 0);
+ C (f42, 8.0, 8.0, 0);
+ C (f42, 9.0, 8.0, 1);
+ C (f42, __builtin_nan (""), 8.0, 1);
+ D (f43, 4.0, 0);
+ D (f43, 5.0, 1);
+ D (f43, 6.0, 0);
+ D (f43, __builtin_nan (""), 0);
+ D (f44, 4.0, 1);
+ D (f44, 5.0, 0);
+ D (f44, 6.0, 1);
+ D (f44, __builtin_nan (""), 1);
+ D (f45, 4.0, 0);
+ D (f45, 5.0, 0);
+ D (f45, 6.0, 1);
+ D (f45, __builtin_nan (""), 1);
+ D (f46, 4.0, 1);
+ D (f46, 5.0, 0);
+ D (f46, 6.0, 0);
+ D (f46, __builtin_nan (""), 0);
+ D (f47, 4.0, 0);
+ D (f47, 5.0, 1);
+ D (f47, 6.0, 1);
+ D (f47, __builtin_nan (""), 1);
+ D (f48, 4.0, 1);
+ D (f48, 5.0, 1);
+ D (f48, 6.0, 0);
+ D (f48, __builtin_nan (""), 0);
+ D (f49, 4.0, 1);
+ D (f49, 5.0, 0);
+ D (f49, 6.0, 0);
+ D (f49, __builtin_nan (""), 0);
+ D (f50, 4.0, 0);
+ D (f50, 5.0, 1);
+ D (f50, 6.0, 1);
+ D (f50, __builtin_nan (""), 1);
+ D (f51, 4.0, 0);
+ D (f51, 5.0, 1);
+ D (f51, 6.0, 1);
+ D (f51, __builtin_nan (""), 1);
+ D (f52, 4.0, 1);
+ D (f52, 5.0, 0);
+ D (f52, 6.0, 0);
+ D (f52, __builtin_nan (""), 0);
+ D (f53, 4.0, 0);
+ D (f53, 5.0, 0);
+ D (f53, 6.0, 1);
+ D (f53, __builtin_nan (""), 0);
+ D (f54, 4.0, 1);
+ D (f54, 5.0, 1);
+ D (f54, 6.0, 0);
+ D (f54, __builtin_nan (""), 1);
+ D (f55, 4.0, 1);
+ D (f55, 5.0, 1);
+ D (f55, 6.0, 0);
+ D (f55, __builtin_nan (""), 0);
+ D (f56, 4.0, 0);
+ D (f56, 5.0, 0);
+ D (f56, 6.0, 1);
+ D (f56, __builtin_nan (""), 1);
return 0;
}