2013-09-17 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / vmx / 8-02.c
blob72a4a907ad3d9e5c457cdaa9a19d806c672ab9f9
1 #include "harness.h"
3 extern vector unsigned char u8;
4 extern vector signed char s8;
5 extern vector bool char b8;
6 extern vector unsigned short u16;
7 extern vector signed short s16;
8 extern vector bool short b16;
9 extern vector unsigned int u32;
10 extern vector signed int s32;
11 extern vector bool int b32;
12 extern vector float f32;
13 extern vector pixel p16;
14 extern vector unsigned char const u8c;
15 extern vector signed char const s8c;
16 extern vector bool char const b8c;
17 extern vector unsigned short const u16c;
18 extern vector signed short const s16c;
19 extern vector bool short const b16c;
20 extern vector unsigned int const u32c;
21 extern vector signed int const s32c;
22 extern vector bool int const b32c;
23 extern vector float const f32c;
24 extern vector pixel const p16c;
25 extern vector unsigned char volatile u8v;
26 extern vector signed char volatile s8v;
27 extern vector bool char volatile b8v;
28 extern vector unsigned short volatile u16v;
29 extern vector signed short volatile s16v;
30 extern vector bool short volatile b16v;
31 extern vector unsigned int volatile u32v;
32 extern vector signed int volatile s32v;
33 extern vector bool int volatile b32v;
34 extern vector float volatile f32v;
35 extern vector pixel volatile p16v;
36 extern const vector unsigned char u8c_;
37 extern const vector signed char s8c_;
38 extern const vector bool char b8c_;
39 extern const vector unsigned short u16c_;
40 extern const vector signed short s16c_;
41 extern const vector bool short b16c_;
42 extern const vector unsigned int u32c_;
43 extern const vector signed int s32c_;
44 extern const vector bool int b32c_;
45 extern const vector float f32c_;
46 extern const vector pixel p16c_;
47 extern volatile vector unsigned char u8v_;
48 extern volatile vector signed char s8v_;
49 extern volatile vector bool char b8v_;
50 extern volatile vector unsigned short u16v_;
51 extern volatile vector signed short s16v_;
52 extern volatile vector bool short b16v_;
53 extern volatile vector unsigned int u32v_;
54 extern volatile vector signed int s32v_;
55 extern volatile vector bool int b32v_;
56 extern volatile vector float f32v_;
57 extern volatile vector pixel p16v_;
58 int i_u8 = vec_step(u8);
59 int i_s8 = vec_step(s8);
60 int i_b8 = vec_step(b8);
61 int i_u16 = vec_step(u16);
62 int i_s16 = vec_step(s16);
63 int i_b16 = vec_step(b16);
64 int i_u32 = vec_step(u32);
65 int i_s32 = vec_step(s32);
66 int i_b32 = vec_step(b32);
67 int i_f32 = vec_step(f32);
68 int i_p16 = vec_step(p16);
69 int i_u8c = vec_step(u8c);
70 int i_s8c = vec_step(s8c);
71 int i_b8c = vec_step(b8c);
72 int i_u16c = vec_step(u16c);
73 int i_s16c = vec_step(s16c);
74 int i_b16c = vec_step(b16c);
75 int i_u32c = vec_step(u32c);
76 int i_s32c = vec_step(s32c);
77 int i_b32c = vec_step(b32c);
78 int i_f32c = vec_step(f32c);
79 int i_p16c = vec_step(p16c);
80 int i_u8v = vec_step(u8v);
81 int i_s8v = vec_step(s8v);
82 int i_b8v = vec_step(b8v);
83 int i_u16v = vec_step(u16v);
84 int i_s16v = vec_step(s16v);
85 int i_b16v = vec_step(b16v);
86 int i_u32v = vec_step(u32v);
87 int i_s32v = vec_step(s32v);
88 int i_b32v = vec_step(b32v);
89 int i_f32v = vec_step(f32v);
90 int i_p16v = vec_step(p16v);
91 int i_u8c_ = vec_step(u8c_);
92 int i_s8c_ = vec_step(s8c_);
93 int i_b8c_ = vec_step(b8c_);
94 int i_u16c_ = vec_step(u16c_);
95 int i_s16c_ = vec_step(s16c_);
96 int i_b16c_ = vec_step(b16c_);
97 int i_u32c_ = vec_step(u32c_);
98 int i_s32c_ = vec_step(s32c_);
99 int i_b32c_ = vec_step(b32c_);
100 int i_f32c_ = vec_step(f32c_);
101 int i_p16c_ = vec_step(p16c_);
102 int i_u8v_ = vec_step(u8v_);
103 int i_s8v_ = vec_step(s8v_);
104 int i_b8v_ = vec_step(b8v_);
105 int i_u16v_ = vec_step(u16v_);
106 int i_s16v_ = vec_step(s16v_);
107 int i_b16v_ = vec_step(b16v_);
108 int i_u32v_ = vec_step(u32v_);
109 int i_s32v_ = vec_step(s32v_);
110 int i_b32v_ = vec_step(b32v_);
111 int i_f32v_ = vec_step(f32v_);
112 int i_p16v_ = vec_step(p16v_);
113 int j_u8 = vec_step(vector unsigned char);
114 int j_s8 = vec_step(vector signed char);
115 int j_b8 = vec_step(vector bool char);
116 int j_u16 = vec_step(vector unsigned short);
117 int j_s16 = vec_step(vector signed short);
118 int j_b16 = vec_step(vector bool short);
119 int j_u32 = vec_step(vector unsigned int);
120 int j_s32 = vec_step(vector signed int);
121 int j_b32 = vec_step(vector bool int);
122 int j_f32 = vec_step(vector float);
123 int j_p16 = vec_step(vector pixel);
124 int j_u8c = vec_step(vector unsigned char const);
125 int j_s8c = vec_step(vector signed char const);
126 int j_b8c = vec_step(vector bool char const);
127 int j_u16c = vec_step(vector unsigned short const);
128 int j_s16c = vec_step(vector signed short const);
129 int j_b16c = vec_step(vector bool short const);
130 int j_u32c = vec_step(vector unsigned int const);
131 int j_s32c = vec_step(vector signed int const);
132 int j_b32c = vec_step(vector bool int const);
133 int j_f32c = vec_step(vector float const);
134 int j_p16c = vec_step(vector pixel const);
135 int j_u8v = vec_step(vector unsigned char volatile);
136 int j_s8v = vec_step(vector signed char volatile);
137 int j_b8v = vec_step(vector bool char volatile);
138 int j_u16v = vec_step(vector unsigned short volatile);
139 int j_s16v = vec_step(vector signed short volatile);
140 int j_b16v = vec_step(vector bool short volatile);
141 int j_u32v = vec_step(vector unsigned int volatile);
142 int j_s32v = vec_step(vector signed int volatile);
143 int j_b32v = vec_step(vector bool int volatile);
144 int j_f32v = vec_step(vector float volatile);
145 int j_p16v = vec_step(vector pixel volatile);
146 int j_u8c_ = vec_step(const vector unsigned char);
147 int j_s8c_ = vec_step(const vector signed char);
148 int j_b8c_ = vec_step(const vector bool char);
149 int j_u16c_ = vec_step(const vector unsigned short);
150 int j_s16c_ = vec_step(const vector signed short);
151 int j_b16c_ = vec_step(const vector bool short);
152 int j_u32c_ = vec_step(const vector unsigned int);
153 int j_s32c_ = vec_step(const vector signed int);
154 int j_b32c_ = vec_step(const vector bool int);
155 int j_f32c_ = vec_step(const vector float);
156 int j_p16c_ = vec_step(const vector pixel);
157 int j_u8v_ = vec_step(volatile vector unsigned char);
158 int j_s8v_ = vec_step(volatile vector signed char);
159 int j_b8v_ = vec_step(volatile vector bool char);
160 int j_u16v_ = vec_step(volatile vector unsigned short);
161 int j_s16v_ = vec_step(volatile vector signed short);
162 int j_b16v_ = vec_step(volatile vector bool short);
163 int j_u32v_ = vec_step(volatile vector unsigned int);
164 int j_s32v_ = vec_step(volatile vector signed int);
165 int j_b32v_ = vec_step(volatile vector bool int);
166 int j_f32v_ = vec_step(volatile vector float);
167 int j_p16v_ = vec_step(volatile vector pixel);
169 static void test()
171 int i_u8 = vec_step(u8);
172 int i_s8 = vec_step(s8);
173 int i_b8 = vec_step(b8);
174 int i_u16 = vec_step(u16);
175 int i_s16 = vec_step(s16);
176 int i_b16 = vec_step(b16);
177 int i_u32 = vec_step(u32);
178 int i_s32 = vec_step(s32);
179 int i_b32 = vec_step(b32);
180 int i_f32 = vec_step(f32);
181 int i_p16 = vec_step(p16);
182 int i_u8c = vec_step(u8c);
183 int i_s8c = vec_step(s8c);
184 int i_b8c = vec_step(b8c);
185 int i_u16c = vec_step(u16c);
186 int i_s16c = vec_step(s16c);
187 int i_b16c = vec_step(b16c);
188 int i_u32c = vec_step(u32c);
189 int i_s32c = vec_step(s32c);
190 int i_b32c = vec_step(b32c);
191 int i_f32c = vec_step(f32c);
192 int i_p16c = vec_step(p16c);
193 int i_u8v = vec_step(u8v);
194 int i_s8v = vec_step(s8v);
195 int i_b8v = vec_step(b8v);
196 int i_u16v = vec_step(u16v);
197 int i_s16v = vec_step(s16v);
198 int i_b16v = vec_step(b16v);
199 int i_u32v = vec_step(u32v);
200 int i_s32v = vec_step(s32v);
201 int i_b32v = vec_step(b32v);
202 int i_f32v = vec_step(f32v);
203 int i_p16v = vec_step(p16v);
204 int i_u8c_ = vec_step(u8c_);
205 int i_s8c_ = vec_step(s8c_);
206 int i_b8c_ = vec_step(b8c_);
207 int i_u16c_ = vec_step(u16c_);
208 int i_s16c_ = vec_step(s16c_);
209 int i_b16c_ = vec_step(b16c_);
210 int i_u32c_ = vec_step(u32c_);
211 int i_s32c_ = vec_step(s32c_);
212 int i_b32c_ = vec_step(b32c_);
213 int i_f32c_ = vec_step(f32c_);
214 int i_p16c_ = vec_step(p16c_);
215 int i_u8v_ = vec_step(u8v_);
216 int i_s8v_ = vec_step(s8v_);
217 int i_b8v_ = vec_step(b8v_);
218 int i_u16v_ = vec_step(u16v_);
219 int i_s16v_ = vec_step(s16v_);
220 int i_b16v_ = vec_step(b16v_);
221 int i_u32v_ = vec_step(u32v_);
222 int i_s32v_ = vec_step(s32v_);
223 int i_b32v_ = vec_step(b32v_);
224 int i_f32v_ = vec_step(f32v_);
225 int i_p16v_ = vec_step(p16v_);
226 int j_u8 = vec_step(vector unsigned char);
227 int j_s8 = vec_step(vector signed char);
228 int j_b8 = vec_step(vector bool char);
229 int j_u16 = vec_step(vector unsigned short);
230 int j_s16 = vec_step(vector signed short);
231 int j_b16 = vec_step(vector bool short);
232 int j_u32 = vec_step(vector unsigned int);
233 int j_s32 = vec_step(vector signed int);
234 int j_b32 = vec_step(vector bool int);
235 int j_f32 = vec_step(vector float);
236 int j_p16 = vec_step(vector pixel);
237 int j_u8c = vec_step(vector unsigned char const);
238 int j_s8c = vec_step(vector signed char const);
239 int j_b8c = vec_step(vector bool char const);
240 int j_u16c = vec_step(vector unsigned short const);
241 int j_s16c = vec_step(vector signed short const);
242 int j_b16c = vec_step(vector bool short const);
243 int j_u32c = vec_step(vector unsigned int const);
244 int j_s32c = vec_step(vector signed int const);
245 int j_b32c = vec_step(vector bool int const);
246 int j_f32c = vec_step(vector float const);
247 int j_p16c = vec_step(vector pixel const);
248 int j_u8v = vec_step(vector unsigned char volatile);
249 int j_s8v = vec_step(vector signed char volatile);
250 int j_b8v = vec_step(vector bool char volatile);
251 int j_u16v = vec_step(vector unsigned short volatile);
252 int j_s16v = vec_step(vector signed short volatile);
253 int j_b16v = vec_step(vector bool short volatile);
254 int j_u32v = vec_step(vector unsigned int volatile);
255 int j_s32v = vec_step(vector signed int volatile);
256 int j_b32v = vec_step(vector bool int volatile);
257 int j_f32v = vec_step(vector float volatile);
258 int j_p16v = vec_step(vector pixel volatile);
259 int j_u8c_ = vec_step(const vector unsigned char);
260 int j_s8c_ = vec_step(const vector signed char);
261 int j_b8c_ = vec_step(const vector bool char);
262 int j_u16c_ = vec_step(const vector unsigned short);
263 int j_s16c_ = vec_step(const vector signed short);
264 int j_b16c_ = vec_step(const vector bool short);
265 int j_u32c_ = vec_step(const vector unsigned int);
266 int j_s32c_ = vec_step(const vector signed int);
267 int j_b32c_ = vec_step(const vector bool int);
268 int j_f32c_ = vec_step(const vector float);
269 int j_p16c_ = vec_step(const vector pixel);
270 int j_u8v_ = vec_step(volatile vector unsigned char);
271 int j_s8v_ = vec_step(volatile vector signed char);
272 int j_b8v_ = vec_step(volatile vector bool char);
273 int j_u16v_ = vec_step(volatile vector unsigned short);
274 int j_s16v_ = vec_step(volatile vector signed short);
275 int j_b16v_ = vec_step(volatile vector bool short);
276 int j_u32v_ = vec_step(volatile vector unsigned int);
277 int j_s32v_ = vec_step(volatile vector signed int);
278 int j_b32v_ = vec_step(volatile vector bool int);
279 int j_f32v_ = vec_step(volatile vector float);
280 int j_p16v_ = vec_step(volatile vector pixel);
281 check((i_u8 + i_s8 + i_b8 + i_u16 + i_s16 + i_b16 + i_u32 + i_s32 +
282 i_b32 + i_f32 + i_p16 + i_u8c + i_s8c + i_b8c + i_u16c +
283 i_s16c + i_b16c + i_u32c + i_s32c + i_b32c + i_f32c + i_p16c
284 + i_u8v + i_s8v + i_b8v + i_u16v + i_s16v + i_b16v + i_u32v
285 + i_s32v + i_b32v + i_f32v + i_p16v + i_u8c_ + i_s8c_ +
286 i_b8c_ + i_u16c_ + i_s16c_ + i_b16c_ + i_u32c_ + i_s32c_ +
287 i_b32c_ + i_f32c_ + i_p16c_ + i_u8v_ + i_s8v_ + i_b8v_ +
288 i_u16v_ + i_s16v_ + i_b16v_ + i_u32v_ + i_s32v_ + i_b32v_ +
289 i_f32v_ + i_p16v_ + j_u8 + j_s8 + j_b8 + j_u16 + j_s16 +
290 j_b16 + j_u32 + j_s32 + j_b32 + j_f32 + j_p16 + j_u8c +
291 j_s8c + j_b8c + j_u16c + j_s16c + j_b16c + j_u32c + j_s32c +
292 j_b32c + j_f32c + j_p16c + j_u8v + j_s8v + j_b8v + j_u16v +
293 j_s16v + j_b16v + j_u32v + j_s32v + j_b32v + j_f32v + j_p16v
294 + j_u8c_ + j_s8c_ + j_b8c_ + j_u16c_ + j_s16c_ + j_b16c_ +
295 j_u32c_ + j_s32c_ + j_b32c_ + j_f32c_ + j_p16c_ + j_u8v_ +
296 j_s8v_ + j_b8v_ + j_u16v_ + j_s16v_ + j_b16v_ + j_u32v_ +
297 j_s32v_ + j_b32v_ + j_f32v_ + j_p16v_) == 960,
298 "vec_step");