OSDN Git Service

2010-12-30 Kai Tietz <kai.tietz@onevision.com>
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.target / i386 / pr24306.c
1 /* { dg-do run } */
2 /* { dg-options "-msse" } */
3 /* { dg-require-effective-target sse } */
4
5 #include "sse-check.h"
6
7 extern void abort(void);
8 typedef int __attribute__ ((vector_size (16))) foo_t;
9
10 struct s
11 {
12   foo_t f[0];
13 } s1;
14
15 void
16 check (int x, ...) __attribute__((noinline));
17 void
18 check (int x, ...)
19 {
20   int y;
21   __builtin_va_list ap;
22
23   __builtin_va_start (ap, x);
24   __builtin_va_arg (ap, struct s);
25   y = __builtin_va_arg (ap, int);
26
27   if (y != 7)
28     abort ();
29 }
30
31 static void
32 sse_test (void)
33 {
34   check (3, s1, 7);
35 }