annotate gcc/testsuite/gcc.dg/vect/pr42604.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* PR debug/42604 */
kono
parents:
diff changeset
2 /* { dg-do compile } */
kono
parents:
diff changeset
3 /* { dg-additional-options "-O3 -g -ffast-math" } */
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 unsigned *d;
kono
parents:
diff changeset
6 unsigned short e;
kono
parents:
diff changeset
7 int f;
kono
parents:
diff changeset
8 float h[3][4];
kono
parents:
diff changeset
9
kono
parents:
diff changeset
10 void
kono
parents:
diff changeset
11 test (unsigned short *b)
kono
parents:
diff changeset
12 {
kono
parents:
diff changeset
13 int a, c, i;
kono
parents:
diff changeset
14 float g[3];
kono
parents:
diff changeset
15 unsigned j[32] = { 10, 0x63707274 };
kono
parents:
diff changeset
16 for (i = 0; i < (int) j[0]; i++)
kono
parents:
diff changeset
17 {
kono
parents:
diff changeset
18 j[i * 3 + 2] = d[0];
kono
parents:
diff changeset
19 d[0] += (j[i * 3 + 3] + 3) & -4;
kono
parents:
diff changeset
20 }
kono
parents:
diff changeset
21 for (a = 0; a < e; a++)
kono
parents:
diff changeset
22 {
kono
parents:
diff changeset
23 g[0] = g[1] = g[2] = 0;
kono
parents:
diff changeset
24 for (c = 0; c < f; c++)
kono
parents:
diff changeset
25 {
kono
parents:
diff changeset
26 g[0] += h[0][c] * b[c];
kono
parents:
diff changeset
27 g[1] += h[1][c] * b[c];
kono
parents:
diff changeset
28 }
kono
parents:
diff changeset
29 for (c = 0; c < 3; c++)
kono
parents:
diff changeset
30 b[c] = 0 > ((int) g[c] < 65535 ? ((int) g[c]) : 65535)
kono
parents:
diff changeset
31 ? 0 : ((int) g[c]) < 65535 ? (int) g[c] : 65535;
kono
parents:
diff changeset
32 }
kono
parents:
diff changeset
33 }
kono
parents:
diff changeset
34