Adjust 'libgomp.c/max_vf-*.c'
[official-gcc.git] / gcc / testsuite / gcc.target / arm / mve / intrinsics / vaddvq_p_s16.c
blobf4e499b631edc41883305e5ceb584b1c8a34981f
1 /* { dg-require-effective-target arm_v8_1m_mve_ok } */
2 /* { dg-add-options arm_v8_1m_mve } */
3 /* { dg-additional-options "-O2" } */
4 /* { dg-final { check-function-bodies "**" "" } } */
6 #include "arm_mve.h"
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
13 **foo:
14 ** ...
15 ** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|)
16 ** ...
17 ** vpst(?: @.*|)
18 ** ...
19 ** vaddvt.s16 (?:ip|fp|r[0-9]+), q[0-9]+(?: @.*|)
20 ** ...
22 int32_t
23 foo (int16x8_t a, mve_pred16_t p)
25 return vaddvq_p_s16 (a, p);
30 **foo1:
31 ** ...
32 ** vmsr p0, (?:ip|fp|r[0-9]+)(?: @.*|)
33 ** ...
34 ** vpst(?: @.*|)
35 ** ...
36 ** vaddvt.s16 (?:ip|fp|r[0-9]+), q[0-9]+(?: @.*|)
37 ** ...
39 int32_t
40 foo1 (int16x8_t a, mve_pred16_t p)
42 return vaddvq_p (a, p);
45 #ifdef __cplusplus
47 #endif
49 /* { dg-final { scan-assembler-not "__ARM_undef" } } */