Daily bump.
[official-gcc.git] / gcc / testsuite / gcc.target / i386 / pr44942.c
blobd6af19703c0aa46cd7cf05a388b832a9745826f7
1 /* PR target/44942 */
2 /* { dg-do run { target { ! ia32 } } } */
4 #include <stdarg.h>
5 #include <emmintrin.h>
7 void
8 test1 (double a, double b, double c, double d, double e, double f,
9 double g, __m128d h, ...)
11 double i;
12 va_list ap;
14 va_start (ap, h);
15 i = va_arg (ap, double);
16 if (i != 1234.0)
17 __builtin_abort ();
18 va_end (ap);
21 void
22 test2 (double a, double b, double c, double d, double e, double f, double g,
23 __m128d h, double i, __m128d j, double k, __m128d l,
24 double m, __m128d n, ...)
26 double o;
27 va_list ap;
29 va_start (ap, n);
30 o = va_arg (ap, double);
31 if (o != 1234.0)
32 __builtin_abort ();
33 va_end (ap);
36 int
37 main ()
39 __m128d m = _mm_set1_pd (7.0);
40 test1 (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, m, 1234.0);
41 test2 (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, m, 0.0, m,
42 0.0, m, 0.0, m, 1234.0);
43 return 0;