Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / gcc.dg / vmx / varargs-3.c
blobbe8b71bf947c476ab7e08f6009a4eb61c4077829
1 #include "harness.h"
2 #include <stdarg.h>
4 typedef struct n_a
6 signed char m1;
7 short m2;
8 int m3;
9 double m4;
10 vector float m5;
12 n_a;
14 void
15 varlistn_a(signed char p1, va_list ap)
17 n_a q;
18 q.m1 = p1;
19 q.m2 = va_arg(ap, int);
20 q.m3 = va_arg(ap, int);
21 q.m4 = va_arg(ap, double);
22 q.m5 = va_arg(ap, vector float);
24 check(q.m1 == 77, "q.m1");
25 check(q.m2 == 1924, "q.m2");
26 check(q.m3 == -1471601920, "q.m3");
27 check(q.m4 == 3.65e+18, "q.m4");
28 check(vec_all_eq(q.m5, ((vector float){-1.38e+09, 5.96e+08, 6.88e+08, -3.2e+08})), "q.m5");
31 void
32 varargsn_a(signed char p1, ...)
34 n_a r, s;
35 va_list ap;
37 va_start(ap, p1);
38 r.m1 = p1;
39 r.m2 = va_arg(ap, int);
40 r.m3 = va_arg(ap, int);
41 r.m4 = va_arg(ap, double);
42 r.m5 = va_arg(ap, vector float);
43 va_end(ap);
45 check(r.m1 == 77, "r.m1");
46 check(r.m2 == 1924, "r.m2");
47 check(r.m3 == -1471601920, "r.m3");
48 check(r.m4 == 3.65e+18, "r.m4");
49 check(vec_all_eq(r.m5, ((vector float){-1.38e+09, 5.96e+08, 6.88e+08, -3.2e+08})), "r.m5");
51 va_start(ap, p1);
52 s.m1 = p1;
53 s.m2 = va_arg(ap, int);
54 s.m3 = va_arg(ap, int);
55 s.m4 = va_arg(ap, double);
56 s.m5 = va_arg(ap, vector float);
57 va_end(ap);
59 check(s.m1 == 77, "s.m1");
60 check(s.m2 == 1924, "s.m2");
61 check(s.m3 == -1471601920, "s.m3");
62 check(s.m4 == 3.65e+18, "s.m4");
63 check(vec_all_eq(s.m5, ((vector float){-1.38e+09, 5.96e+08, 6.88e+08, -3.2e+08})), "s.m5");
65 va_start(ap, p1);
66 varlistn_a(p1, ap);
67 va_end(ap);
72 void test()
74 varargsn_a(77, 1924, -1471601920, 3.65e+18, ((vector float){-1.38e+09, 5.96e+08, 6.88e+08, -3.2e+08}));