annotate gcc/testsuite/gcc.dg/compat/struct-by-value-10_x.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 #include "compat-common.h"
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 #include "fp2-struct-defs.h"
kono
parents:
diff changeset
4 #include "fp2-struct-check.h"
kono
parents:
diff changeset
5
kono
parents:
diff changeset
6 #define TEST(TYPE) \
kono
parents:
diff changeset
7 TYPE g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE; \
kono
parents:
diff changeset
8 TYPE g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE; \
kono
parents:
diff changeset
9 TYPE g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE; \
kono
parents:
diff changeset
10 TYPE g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE; \
kono
parents:
diff changeset
11 \
kono
parents:
diff changeset
12 extern void init##TYPE (TYPE *p, double x); \
kono
parents:
diff changeset
13 extern void checkg##TYPE (void); \
kono
parents:
diff changeset
14 extern void \
kono
parents:
diff changeset
15 test##TYPE (TYPE s1, TYPE s2, TYPE s3, TYPE s4, \
kono
parents:
diff changeset
16 TYPE s5, TYPE s6, TYPE s7, TYPE s8, \
kono
parents:
diff changeset
17 TYPE s9, TYPE s10, TYPE s11, TYPE s12, \
kono
parents:
diff changeset
18 TYPE s13, TYPE s14, TYPE s15, TYPE s16); \
kono
parents:
diff changeset
19 extern void testva##TYPE (int n, ...); \
kono
parents:
diff changeset
20 \
kono
parents:
diff changeset
21 void \
kono
parents:
diff changeset
22 test2_##TYPE (TYPE s1, TYPE s2, TYPE s3, TYPE s4, \
kono
parents:
diff changeset
23 TYPE s5, TYPE s6, TYPE s7, TYPE s8) \
kono
parents:
diff changeset
24 { \
kono
parents:
diff changeset
25 test##TYPE (s1, g2s##TYPE, s2, g4s##TYPE, \
kono
parents:
diff changeset
26 s3, g6s##TYPE, s4, g8s##TYPE, \
kono
parents:
diff changeset
27 s5, g10s##TYPE, s6, g12s##TYPE, \
kono
parents:
diff changeset
28 s7, g14s##TYPE, s8, g16s##TYPE); \
kono
parents:
diff changeset
29 } \
kono
parents:
diff changeset
30 \
kono
parents:
diff changeset
31 void \
kono
parents:
diff changeset
32 testit##TYPE (void) \
kono
parents:
diff changeset
33 { \
kono
parents:
diff changeset
34 DEBUG_FPUTS (#TYPE); \
kono
parents:
diff changeset
35 DEBUG_FPUTS (" init: "); \
kono
parents:
diff changeset
36 init##TYPE ( &g1s##TYPE, (double)1); \
kono
parents:
diff changeset
37 init##TYPE ( &g2s##TYPE, (double)2); \
kono
parents:
diff changeset
38 init##TYPE ( &g3s##TYPE, (double)3); \
kono
parents:
diff changeset
39 init##TYPE ( &g4s##TYPE, (double)4); \
kono
parents:
diff changeset
40 init##TYPE ( &g5s##TYPE, (double)5); \
kono
parents:
diff changeset
41 init##TYPE ( &g6s##TYPE, (double)6); \
kono
parents:
diff changeset
42 init##TYPE ( &g7s##TYPE, (double)7); \
kono
parents:
diff changeset
43 init##TYPE ( &g8s##TYPE, (double)8); \
kono
parents:
diff changeset
44 init##TYPE ( &g9s##TYPE, (double)9); \
kono
parents:
diff changeset
45 init##TYPE (&g10s##TYPE, (double)10); \
kono
parents:
diff changeset
46 init##TYPE (&g11s##TYPE, (double)11); \
kono
parents:
diff changeset
47 init##TYPE (&g12s##TYPE, (double)12); \
kono
parents:
diff changeset
48 init##TYPE (&g13s##TYPE, (double)13); \
kono
parents:
diff changeset
49 init##TYPE (&g14s##TYPE, (double)14); \
kono
parents:
diff changeset
50 init##TYPE (&g15s##TYPE, (double)15); \
kono
parents:
diff changeset
51 init##TYPE (&g16s##TYPE, (double)16); \
kono
parents:
diff changeset
52 checkg##TYPE (); \
kono
parents:
diff changeset
53 DEBUG_NL; \
kono
parents:
diff changeset
54 DEBUG_FPUTS (#TYPE); \
kono
parents:
diff changeset
55 DEBUG_FPUTS (" test: "); \
kono
parents:
diff changeset
56 test##TYPE (g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
57 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
58 g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE, \
kono
parents:
diff changeset
59 g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE); \
kono
parents:
diff changeset
60 DEBUG_NL; \
kono
parents:
diff changeset
61 DEBUG_FPUTS (#TYPE); \
kono
parents:
diff changeset
62 DEBUG_FPUTS (" testva:"); \
kono
parents:
diff changeset
63 DEBUG_NL; \
kono
parents:
diff changeset
64 testva##TYPE (1, \
kono
parents:
diff changeset
65 g1s##TYPE); \
kono
parents:
diff changeset
66 DEBUG_NL; \
kono
parents:
diff changeset
67 testva##TYPE (2, \
kono
parents:
diff changeset
68 g1s##TYPE, g2s##TYPE); \
kono
parents:
diff changeset
69 DEBUG_NL; \
kono
parents:
diff changeset
70 testva##TYPE (3, \
kono
parents:
diff changeset
71 g1s##TYPE, g2s##TYPE, g3s##TYPE); \
kono
parents:
diff changeset
72 DEBUG_NL; \
kono
parents:
diff changeset
73 testva##TYPE (4, \
kono
parents:
diff changeset
74 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE); \
kono
parents:
diff changeset
75 DEBUG_NL; \
kono
parents:
diff changeset
76 testva##TYPE (5, \
kono
parents:
diff changeset
77 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
78 g5s##TYPE); \
kono
parents:
diff changeset
79 DEBUG_NL; \
kono
parents:
diff changeset
80 testva##TYPE (6, \
kono
parents:
diff changeset
81 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
82 g5s##TYPE, g6s##TYPE); \
kono
parents:
diff changeset
83 DEBUG_NL; \
kono
parents:
diff changeset
84 testva##TYPE (7, \
kono
parents:
diff changeset
85 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
86 g5s##TYPE, g6s##TYPE, g7s##TYPE); \
kono
parents:
diff changeset
87 DEBUG_NL; \
kono
parents:
diff changeset
88 testva##TYPE (8, \
kono
parents:
diff changeset
89 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
90 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE); \
kono
parents:
diff changeset
91 DEBUG_NL; \
kono
parents:
diff changeset
92 testva##TYPE (9, \
kono
parents:
diff changeset
93 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
94 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
95 g9s##TYPE); \
kono
parents:
diff changeset
96 DEBUG_NL; \
kono
parents:
diff changeset
97 testva##TYPE (10, \
kono
parents:
diff changeset
98 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
99 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
100 g9s##TYPE, g10s##TYPE); \
kono
parents:
diff changeset
101 DEBUG_NL; \
kono
parents:
diff changeset
102 testva##TYPE (11, \
kono
parents:
diff changeset
103 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
104 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
105 g9s##TYPE, g10s##TYPE, g11s##TYPE); \
kono
parents:
diff changeset
106 DEBUG_NL; \
kono
parents:
diff changeset
107 testva##TYPE (12, \
kono
parents:
diff changeset
108 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
109 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
110 g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE); \
kono
parents:
diff changeset
111 DEBUG_NL; \
kono
parents:
diff changeset
112 testva##TYPE (13, \
kono
parents:
diff changeset
113 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
114 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
115 g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE, \
kono
parents:
diff changeset
116 g13s##TYPE); \
kono
parents:
diff changeset
117 DEBUG_NL; \
kono
parents:
diff changeset
118 testva##TYPE (14, \
kono
parents:
diff changeset
119 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
120 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
121 g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE, \
kono
parents:
diff changeset
122 g13s##TYPE, g14s##TYPE); \
kono
parents:
diff changeset
123 DEBUG_NL; \
kono
parents:
diff changeset
124 testva##TYPE (15, \
kono
parents:
diff changeset
125 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
126 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
127 g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE, \
kono
parents:
diff changeset
128 g13s##TYPE, g14s##TYPE, g15s##TYPE); \
kono
parents:
diff changeset
129 DEBUG_NL; \
kono
parents:
diff changeset
130 testva##TYPE (16, \
kono
parents:
diff changeset
131 g1s##TYPE, g2s##TYPE, g3s##TYPE, g4s##TYPE, \
kono
parents:
diff changeset
132 g5s##TYPE, g6s##TYPE, g7s##TYPE, g8s##TYPE, \
kono
parents:
diff changeset
133 g9s##TYPE, g10s##TYPE, g11s##TYPE, g12s##TYPE, \
kono
parents:
diff changeset
134 g13s##TYPE, g14s##TYPE, g15s##TYPE, g16s##TYPE); \
kono
parents:
diff changeset
135 DEBUG_NL; \
kono
parents:
diff changeset
136 DEBUG_FPUTS (#TYPE); \
kono
parents:
diff changeset
137 DEBUG_FPUTS (" test2: "); \
kono
parents:
diff changeset
138 test2_##TYPE (g1s##TYPE, g3s##TYPE, g5s##TYPE, g7s##TYPE, \
kono
parents:
diff changeset
139 g9s##TYPE, g11s##TYPE, g13s##TYPE, g15s##TYPE); \
kono
parents:
diff changeset
140 DEBUG_NL; \
kono
parents:
diff changeset
141 }
kono
parents:
diff changeset
142
kono
parents:
diff changeset
143 TEST(Sfd)
kono
parents:
diff changeset
144 TEST(Sfl)
kono
parents:
diff changeset
145 TEST(Sdf)
kono
parents:
diff changeset
146 TEST(Sdl)
kono
parents:
diff changeset
147 TEST(Slf)
kono
parents:
diff changeset
148 TEST(Sld)
kono
parents:
diff changeset
149 TEST(Sfdl)
kono
parents:
diff changeset
150 TEST(Sfld)
kono
parents:
diff changeset
151 TEST(Sdfl)
kono
parents:
diff changeset
152 TEST(Sdlf)
kono
parents:
diff changeset
153 TEST(Slfd)
kono
parents:
diff changeset
154 TEST(Sldf)
kono
parents:
diff changeset
155
kono
parents:
diff changeset
156 #undef T
kono
parents:
diff changeset
157
kono
parents:
diff changeset
158 void
kono
parents:
diff changeset
159 struct_by_value_10_x ()
kono
parents:
diff changeset
160 {
kono
parents:
diff changeset
161 DEBUG_INIT
kono
parents:
diff changeset
162
kono
parents:
diff changeset
163 #define T(TYPE) testit##TYPE ();
kono
parents:
diff changeset
164
kono
parents:
diff changeset
165 T(Sfd)
kono
parents:
diff changeset
166 T(Sfl)
kono
parents:
diff changeset
167 T(Sdf)
kono
parents:
diff changeset
168 T(Sdl)
kono
parents:
diff changeset
169 T(Slf)
kono
parents:
diff changeset
170 T(Sld)
kono
parents:
diff changeset
171 T(Sfdl)
kono
parents:
diff changeset
172 T(Sfld)
kono
parents:
diff changeset
173 T(Sdfl)
kono
parents:
diff changeset
174 T(Sdlf)
kono
parents:
diff changeset
175 T(Slfd)
kono
parents:
diff changeset
176 T(Sldf)
kono
parents:
diff changeset
177
kono
parents:
diff changeset
178 DEBUG_FINI
kono
parents:
diff changeset
179
kono
parents:
diff changeset
180 if (fails != 0)
kono
parents:
diff changeset
181 abort ();
kono
parents:
diff changeset
182
kono
parents:
diff changeset
183 #undef T
kono
parents:
diff changeset
184 }