1 /* { dg-do compile } */
2 /* { dg-options "-O3" } */
7 tbl_tests8_ (int8x8_t tab
, int8x8_t idx
)
9 return vtbl1_s8 (tab
, idx
);
13 tbl_testu8_ (uint8x8_t tab
, uint8x8_t idx
)
15 return vtbl1_u8 (tab
, idx
);
19 tbl_testp8_ (poly8x8_t tab
, uint8x8_t idx
)
21 return vtbl1_p8 (tab
, idx
);
25 tbl_tests8_2 (int8x8x2_t tab
, int8x8_t idx
)
27 return vtbl2_s8 (tab
, idx
);
31 tbl_testu8_2 (uint8x8x2_t tab
, uint8x8_t idx
)
33 return vtbl2_u8 (tab
, idx
);
37 tbl_testp8_2 (poly8x8x2_t tab
, uint8x8_t idx
)
39 return vtbl2_p8 (tab
, idx
);
43 tbl_tests8_3 (int8x8x3_t tab
, int8x8_t idx
)
45 return vtbl3_s8 (tab
, idx
);
49 tbl_testu8_3 (uint8x8x3_t tab
, uint8x8_t idx
)
51 return vtbl3_u8 (tab
, idx
);
55 tbl_testp8_3 (poly8x8x3_t tab
, uint8x8_t idx
)
57 return vtbl3_p8 (tab
, idx
);
61 tbl_tests8_4 (int8x8x4_t tab
, int8x8_t idx
)
63 return vtbl4_s8 (tab
, idx
);
67 tbl_testu8_4 (uint8x8x4_t tab
, uint8x8_t idx
)
69 return vtbl4_u8 (tab
, idx
);
73 tbl_testp8_4 (poly8x8x4_t tab
, uint8x8_t idx
)
75 return vtbl4_p8 (tab
, idx
);
79 tb_tests8_ (int8x8_t r
, int8x8_t tab
, int8x8_t idx
)
81 return vtbx1_s8 (r
, tab
, idx
);
85 tb_testu8_ (uint8x8_t r
, uint8x8_t tab
, uint8x8_t idx
)
87 return vtbx1_u8 (r
, tab
, idx
);
91 tb_testp8_ (poly8x8_t r
, poly8x8_t tab
, uint8x8_t idx
)
93 return vtbx1_p8 (r
, tab
, idx
);
97 tb_tests8_2 (int8x8_t r
, int8x8x2_t tab
, int8x8_t idx
)
99 return vtbx2_s8 (r
, tab
, idx
);
103 tb_testu8_2 (uint8x8_t r
, uint8x8x2_t tab
, uint8x8_t idx
)
105 return vtbx2_u8 (r
, tab
, idx
);
109 tb_testp8_2 (poly8x8_t r
, poly8x8x2_t tab
, uint8x8_t idx
)
111 return vtbx2_p8 (r
, tab
, idx
);
115 tb_tests8_3 (int8x8_t r
, int8x8x3_t tab
, int8x8_t idx
)
117 return vtbx3_s8 (r
, tab
, idx
);
121 tb_testu8_3 (uint8x8_t r
, uint8x8x3_t tab
, uint8x8_t idx
)
123 return vtbx3_u8 (r
, tab
, idx
);
127 tb_testp8_3 (poly8x8_t r
, poly8x8x3_t tab
, uint8x8_t idx
)
129 return vtbx3_p8 (r
, tab
, idx
);
133 tb_tests8_4 (int8x8_t r
, int8x8x4_t tab
, int8x8_t idx
)
135 return vtbx4_s8 (r
, tab
, idx
);
139 tb_testu8_4 (uint8x8_t r
, uint8x8x4_t tab
, uint8x8_t idx
)
141 return vtbx4_u8 (r
, tab
, idx
);
145 tb_testp8_4 (poly8x8_t r
, poly8x8x4_t tab
, uint8x8_t idx
)
147 return vtbx4_p8 (r
, tab
, idx
);
151 qtbl_tests8_ (int8x16_t tab
, uint8x8_t idx
)
153 return vqtbl1_s8 (tab
, idx
);
157 qtbl_testu8_ (uint8x16_t tab
, uint8x8_t idx
)
159 return vqtbl1_u8 (tab
, idx
);
163 qtbl_testp8_ (poly8x16_t tab
, uint8x8_t idx
)
165 return vqtbl1_p8 (tab
, idx
);
169 qtbl_tests8_2 (int8x16x2_t tab
, uint8x8_t idx
)
171 return vqtbl2_s8 (tab
, idx
);
175 qtbl_testu8_2 (uint8x16x2_t tab
, uint8x8_t idx
)
177 return vqtbl2_u8 (tab
, idx
);
181 qtbl_testp8_2 (poly8x16x2_t tab
, uint8x8_t idx
)
183 return vqtbl2_p8 (tab
, idx
);
187 qtbl_tests8_3 (int8x16x3_t tab
, uint8x8_t idx
)
189 return vqtbl3_s8 (tab
, idx
);
193 qtbl_testu8_3 (uint8x16x3_t tab
, uint8x8_t idx
)
195 return vqtbl3_u8 (tab
, idx
);
199 qtbl_testp8_3 (poly8x16x3_t tab
, uint8x8_t idx
)
201 return vqtbl3_p8 (tab
, idx
);
205 qtbl_tests8_4 (int8x16x4_t tab
, uint8x8_t idx
)
207 return vqtbl4_s8 (tab
, idx
);
211 qtbl_testu8_4 (uint8x16x4_t tab
, uint8x8_t idx
)
213 return vqtbl4_u8 (tab
, idx
);
217 qtbl_testp8_4 (poly8x16x4_t tab
, uint8x8_t idx
)
219 return vqtbl4_p8 (tab
, idx
);
223 qtb_tests8_ (int8x8_t r
, int8x16_t tab
, uint8x8_t idx
)
225 return vqtbx1_s8 (r
, tab
, idx
);
229 qtb_testu8_ (uint8x8_t r
, uint8x16_t tab
, uint8x8_t idx
)
231 return vqtbx1_u8 (r
, tab
, idx
);
235 qtb_testp8_ (poly8x8_t r
, poly8x16_t tab
, uint8x8_t idx
)
237 return vqtbx1_p8 (r
, tab
, idx
);
241 qtb_tests8_2 (int8x8_t r
, int8x16x2_t tab
, uint8x8_t idx
)
243 return vqtbx2_s8 (r
, tab
, idx
);
247 qtb_testu8_2 (uint8x8_t r
, uint8x16x2_t tab
, uint8x8_t idx
)
249 return vqtbx2_u8 (r
, tab
, idx
);
253 qtb_testp8_2 (poly8x8_t r
, poly8x16x2_t tab
, uint8x8_t idx
)
255 return vqtbx2_p8 (r
, tab
, idx
);
259 qtb_tests8_3 (int8x8_t r
, int8x16x3_t tab
, uint8x8_t idx
)
261 return vqtbx3_s8 (r
, tab
, idx
);
265 qtb_testu8_3 (uint8x8_t r
, uint8x16x3_t tab
, uint8x8_t idx
)
267 return vqtbx3_u8 (r
, tab
, idx
);
271 qtb_testp8_3 (poly8x8_t r
, poly8x16x3_t tab
, uint8x8_t idx
)
273 return vqtbx3_p8 (r
, tab
, idx
);
277 qtb_tests8_4 (int8x8_t r
, int8x16x4_t tab
, uint8x8_t idx
)
279 return vqtbx4_s8 (r
, tab
, idx
);
283 qtb_testu8_4 (uint8x8_t r
, uint8x16x4_t tab
, uint8x8_t idx
)
285 return vqtbx4_u8 (r
, tab
, idx
);
289 qtb_testp8_4 (poly8x8_t r
, poly8x16x4_t tab
, uint8x8_t idx
)
291 return vqtbx4_p8 (r
, tab
, idx
);
295 qtblq_tests8_ (int8x16_t tab
, uint8x16_t idx
)
297 return vqtbl1q_s8 (tab
, idx
);
301 qtblq_testu8_ (uint8x16_t tab
, uint8x16_t idx
)
303 return vqtbl1q_u8 (tab
, idx
);
307 qtblq_testp8_ (poly8x16_t tab
, uint8x16_t idx
)
309 return vqtbl1q_p8 (tab
, idx
);
313 qtblq_tests8_2 (int8x16x2_t tab
, uint8x16_t idx
)
315 return vqtbl2q_s8 (tab
, idx
);
319 qtblq_testu8_2 (uint8x16x2_t tab
, uint8x16_t idx
)
321 return vqtbl2q_u8 (tab
, idx
);
325 qtblq_testp8_2 (poly8x16x2_t tab
, uint8x16_t idx
)
327 return vqtbl2q_p8 (tab
, idx
);
331 qtblq_tests8_3 (int8x16x3_t tab
, uint8x16_t idx
)
333 return vqtbl3q_s8 (tab
, idx
);
337 qtblq_testu8_3 (uint8x16x3_t tab
, uint8x16_t idx
)
339 return vqtbl3q_u8 (tab
, idx
);
343 qtblq_testp8_3 (poly8x16x3_t tab
, uint8x16_t idx
)
345 return vqtbl3q_p8 (tab
, idx
);
349 qtblq_tests8_4 (int8x16x4_t tab
, uint8x16_t idx
)
351 return vqtbl4q_s8 (tab
, idx
);
355 qtblq_testu8_4 (uint8x16x4_t tab
, uint8x16_t idx
)
357 return vqtbl4q_u8 (tab
, idx
);
361 qtblq_testp8_4 (poly8x16x4_t tab
, uint8x16_t idx
)
363 return vqtbl4q_p8 (tab
, idx
);
367 qtbxq_tests8_ (int8x16_t r
, int8x16_t tab
, uint8x16_t idx
)
369 return vqtbx1q_s8 (r
, tab
, idx
);
373 qtbxq_testu8_ (uint8x16_t r
, uint8x16_t tab
, uint8x16_t idx
)
375 return vqtbx1q_u8 (r
, tab
, idx
);
379 qtbxq_testp8_ (poly8x16_t r
, poly8x16_t tab
, uint8x16_t idx
)
381 return vqtbx1q_p8 (r
, tab
, idx
);
385 qtbxq_tests8_2 (int8x16_t r
, int8x16x2_t tab
, uint8x16_t idx
)
387 return vqtbx2q_s8 (r
, tab
, idx
);
391 qtbxq_testu8_2 (uint8x16_t r
, uint8x16x2_t tab
, uint8x16_t idx
)
393 return vqtbx2q_u8 (r
, tab
, idx
);
397 qtbxq_testp8_2 (poly8x16_t r
, poly8x16x2_t tab
, uint8x16_t idx
)
399 return vqtbx2q_p8 (r
, tab
, idx
);
403 qtbxq_tests8_3 (int8x16_t r
, int8x16x3_t tab
, uint8x16_t idx
)
405 return vqtbx3q_s8 (r
, tab
, idx
);
409 qtbxq_testu8_3 (uint8x16_t r
, uint8x16x3_t tab
, uint8x16_t idx
)
411 return vqtbx3q_u8 (r
, tab
, idx
);
415 qtbxq_testp8_3 (poly8x16_t r
, poly8x16x3_t tab
, uint8x16_t idx
)
417 return vqtbx3q_p8 (r
, tab
, idx
);
421 qtbxq_tests8_4 (int8x16_t r
, int8x16x4_t tab
, uint8x16_t idx
)
423 return vqtbx4q_s8 (r
, tab
, idx
);
427 qtbxq_testu8_4 (uint8x16_t r
, uint8x16x4_t tab
, uint8x16_t idx
)
429 return vqtbx4q_u8 (r
, tab
, idx
);
433 qtbxq_testp8_4 (poly8x16_t r
, poly8x16x4_t tab
, uint8x16_t idx
)
435 return vqtbx4q_p8 (r
, tab
, idx
);
438 /* { dg-final { scan-assembler-times "tbl\[ |\t\]*v" 42} } */
439 /* { dg-final { scan-assembler-times "tbx\[ |\t\]*v" 30} } */