1 /* PR tree-optimization/47538 */
9 __attribute__((noinline
, noclone
)) void
10 foo (struct S
*x
, const struct S
*y
)
12 const unsigned long n
= y
->d
+ 1;
13 const double m
= 0.25 * (y
->b
- y
->a
);
22 x
->c
[1] = m
* y
->c
[0];
23 x
->c
[0] = 2.0 * x
->c
[1];
27 double o
= 0.0, p
= 1.0;
30 for (i
= 1; i
<= n
- 2; i
++)
32 x
->c
[i
] = m
* (y
->c
[i
- 1] - y
->c
[i
+ 1]) / (double) i
;
36 x
->c
[n
- 1] = m
* y
->c
[n
- 2] / (n
- 1.0);
46 double c
[4] = { 10, 20, 30, 40 }, d
[4], e
[4] = { 118, 118, 118, 118 };
53 __builtin_memcpy (d
, e
, sizeof d
);
55 if (d
[0] != 0 || d
[1] != 20 || d
[2] != 10 || d
[3] != -10)
58 __builtin_memcpy (d
, e
, sizeof d
);
60 if (d
[0] != 60 || d
[1] != 20 || d
[2] != -10 || d
[3] != 118)
63 __builtin_memcpy (d
, e
, sizeof d
);
65 if (d
[0] != -20 || d
[1] != -10 || d
[2] != 118 || d
[3] != 118)
68 __builtin_memcpy (d
, e
, sizeof d
);
70 if (d
[0] != 0 || d
[1] != 118 || d
[2] != 118 || d
[3] != 118)