]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/bcax_u16.c
1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
3 #include "test_sve_acle.h"
7 ** bcax z0\.d, z0\.d, (z1\.d, z2\.d|z2\.d, z1\.d)
10 TEST_UNIFORM_Z (bcax_u16_tied1
, svuint16_t
,
11 z0
= svbcax_u16 (z0
, z1
, z2
),
12 z0
= svbcax (z0
, z1
, z2
))
16 ** mov (z[0-9]+\.d), z0\.d
18 ** bcax z0\.d, z0\.d, (z2\.d, \1|\1, z2\.d)
21 TEST_UNIFORM_Z (bcax_u16_tied2
, svuint16_t
,
22 z0
= svbcax_u16 (z1
, z0
, z2
),
23 z0
= svbcax (z1
, z0
, z2
))
27 ** mov (z[0-9]+\.d), z0\.d
29 ** bcax z0\.d, z0\.d, (z2\.d, \1|\1, z2\.d)
32 TEST_UNIFORM_Z (bcax_u16_tied3
, svuint16_t
,
33 z0
= svbcax_u16 (z1
, z2
, z0
),
34 z0
= svbcax (z1
, z2
, z0
))
39 ** bcax z0\.d, z0\.d, (z2\.d, z3\.d|z3\.d, z2\.d)
42 TEST_UNIFORM_Z (bcax_u16_untied
, svuint16_t
,
43 z0
= svbcax_u16 (z1
, z2
, z3
),
44 z0
= svbcax (z1
, z2
, z3
))
48 ** mov (z[0-9]+)\.h, w0
49 ** bcax z0\.d, z0\.d, (z1\.d, \1\.d|\1\.d, z1\.d)
52 TEST_UNIFORM_ZX (bcax_w0_u16_tied1
, svuint16_t
, uint16_t,
53 z0
= svbcax_n_u16 (z0
, z1
, x0
),
54 z0
= svbcax (z0
, z1
, x0
))
58 ** mov (z[0-9]+)\.h, w0
59 ** mov (z[0-9]+\.d), z0\.d
61 ** bcax z0\.d, z0\.d, (\1\.d, \2|\2, \1\.d)
64 TEST_UNIFORM_ZX (bcax_w0_u16_tied2
, svuint16_t
, uint16_t,
65 z0
= svbcax_n_u16 (z1
, z0
, x0
),
66 z0
= svbcax (z1
, z0
, x0
))
69 ** bcax_w0_u16_untied: { xfail *-*-*}
70 ** mov (z[0-9]+)\.h, w0
72 ** bcax z0\.d, z0\.d, (z2\.d, \1\.d|\1\.d, z2\.d)
75 TEST_UNIFORM_ZX (bcax_w0_u16_untied
, svuint16_t
, uint16_t,
76 z0
= svbcax_n_u16 (z1
, z2
, x0
),
77 z0
= svbcax (z1
, z2
, x0
))
81 ** mov (z[0-9]+)\.h, #11
82 ** bcax z0\.d, z0\.d, (z1\.d, \1\.d|\1\.d, z1\.d)
85 TEST_UNIFORM_Z (bcax_11_u16_tied1
, svuint16_t
,
86 z0
= svbcax_n_u16 (z0
, z1
, 11),
87 z0
= svbcax (z0
, z1
, 11))
91 ** mov (z[0-9]+)\.h, #11
92 ** mov (z[0-9]+\.d), z0\.d
94 ** bcax z0\.d, z0\.d, (\1\.d, \2|\2, \1\.d)
97 TEST_UNIFORM_Z (bcax_11_u16_tied2
, svuint16_t
,
98 z0
= svbcax_n_u16 (z1
, z0
, 11),
99 z0
= svbcax (z1
, z0
, 11))
102 ** bcax_11_u16_untied: { xfail *-*-*}
103 ** mov (z[0-9]+)\.h, #11
105 ** bcax z0\.d, z0\.d, (z2\.d, \1\.d|\1\.d, z2\.d)
108 TEST_UNIFORM_Z (bcax_11_u16_untied
, svuint16_t
,
109 z0
= svbcax_n_u16 (z1
, z2
, 11),
110 z0
= svbcax (z1
, z2
, 11))