annotate gcc/testsuite/gcc.dg/pr93995.c @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
152
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
1 /* PR target/93995 */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 /* { dg-do run } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3 /* { dg-options "-O2 -fno-trapping-math" } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5 double s1[4], s2[4], s3[64];
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 main (void)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10 int i;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11 asm volatile ("" : : : "memory");
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 s3[0 * 4 + i] = __builtin_isgreater (s1[i], s2[i]) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15 s3[1 * 4 + i] = (!__builtin_isgreater (s1[i], s2[i])) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 s3[2 * 4 + i] = __builtin_isgreaterequal (s1[i], s2[i]) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19 s3[3 * 4 + i] = (!__builtin_isgreaterequal (s1[i], s2[i])) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21 s3[4 * 4 + i] = __builtin_isless (s1[i], s2[i]) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 s3[5 * 4 + i] = (!__builtin_isless (s1[i], s2[i])) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25 s3[6 * 4 + i] = __builtin_islessequal (s1[i], s2[i]) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
27 s3[7 * 4 + i] = (!__builtin_islessequal (s1[i], s2[i])) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
28 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
29 s3[8 * 4 + i] = __builtin_islessgreater (s1[i], s2[i]) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
30 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
31 s3[9 * 4 + i] = (!__builtin_islessgreater (s1[i], s2[i])) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
32 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
33 s3[10 * 4 + i] = __builtin_isunordered (s1[i], s2[i]) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
34 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
35 s3[11 * 4 + i] = (!__builtin_isunordered (s1[i], s2[i])) ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
36 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
37 s3[12 * 4 + i] = s1[i] > s2[i] ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
38 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
39 s3[13 * 4 + i] = s1[i] >= s2[i] ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
40 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
41 s3[14 * 4 + i] = s1[i] < s2[i] ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
42 for (i = 0; i < 4; i++)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
43 s3[15 * 4 + i] = s1[i] <= s2[i] ? -1.0 : 0.0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
44 asm volatile ("" : : : "memory");
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
45 return 0;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
46 }