1 /* PR c++/107358 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fexcess-precision=standard" } */
4
5 typedef float __attribute__((vector_size (4 * sizeof (float)))) A;
6 typedef double __attribute__((vector_size (2 * sizeof (double)))) B;
7
8 void
9 foo (A *x)
10 {
11 *x = *x - 124.225514990f;
12 }
13
14 void
15 bar (A *x, float y)
16 {
17 *x = *x - y;
18 }
19
20 void
21 baz (B *x)
22 {
23 *x = *x + 124.225514990f;
24 }
25
26 void
27 qux (B *x, double y)
28 {
29 *x = *x + y;
30 }