]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/aba_u16.c
1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
3 #include "test_sve_acle.h"
7 ** uaba z0\.h, z1\.h, z2\.h
10 TEST_UNIFORM_Z (aba_u16_tied1
, svuint16_t
,
11 z0
= svaba_u16 (z0
, z1
, z2
),
12 z0
= svaba (z0
, z1
, z2
))
16 ** mov (z[0-9]+)\.d, z0\.d
18 ** uaba z0\.h, \1\.h, z2\.h
21 TEST_UNIFORM_Z (aba_u16_tied2
, svuint16_t
,
22 z0
= svaba_u16 (z1
, z0
, z2
),
23 z0
= svaba (z1
, z0
, z2
))
27 ** mov (z[0-9]+)\.d, z0\.d
29 ** uaba z0\.h, z2\.h, \1\.h
32 TEST_UNIFORM_Z (aba_u16_tied3
, svuint16_t
,
33 z0
= svaba_u16 (z1
, z2
, z0
),
34 z0
= svaba (z1
, z2
, z0
))
39 ** uaba z0\.h, z2\.h, z3\.h
42 TEST_UNIFORM_Z (aba_u16_untied
, svuint16_t
,
43 z0
= svaba_u16 (z1
, z2
, z3
),
44 z0
= svaba (z1
, z2
, z3
))
48 ** mov (z[0-9]+\.h), w0
49 ** uaba z0\.h, z1\.h, \1
52 TEST_UNIFORM_ZX (aba_w0_u16_tied1
, svuint16_t
, uint16_t,
53 z0
= svaba_n_u16 (z0
, z1
, x0
),
54 z0
= svaba (z0
, z1
, x0
))
58 ** mov (z[0-9]+\.h), w0
59 ** mov (z[0-9]+)\.d, z0\.d
61 ** uaba z0\.h, \2\.h, \1
64 TEST_UNIFORM_ZX (aba_w0_u16_tied2
, svuint16_t
, uint16_t,
65 z0
= svaba_n_u16 (z1
, z0
, x0
),
66 z0
= svaba (z1
, z0
, x0
))
70 ** mov (z[0-9]+\.h), w0
72 ** uaba z0\.h, z2\.h, \1
75 TEST_UNIFORM_ZX (aba_w0_u16_untied
, svuint16_t
, uint16_t,
76 z0
= svaba_n_u16 (z1
, z2
, x0
),
77 z0
= svaba (z1
, z2
, x0
))
81 ** mov (z[0-9]+\.h), #11
82 ** uaba z0\.h, z1\.h, \1
85 TEST_UNIFORM_Z (aba_11_u16_tied1
, svuint16_t
,
86 z0
= svaba_n_u16 (z0
, z1
, 11),
87 z0
= svaba (z0
, z1
, 11))
91 ** mov (z[0-9]+\.h), #11
92 ** mov (z[0-9]+)\.d, z0\.d
94 ** uaba z0\.h, \2\.h, \1
97 TEST_UNIFORM_Z (aba_11_u16_tied2
, svuint16_t
,
98 z0
= svaba_n_u16 (z1
, z0
, 11),
99 z0
= svaba (z1
, z0
, 11))
102 ** aba_11_u16_untied:
103 ** mov (z[0-9]+\.h), #11
105 ** uaba z0\.h, z2\.h, \1
108 TEST_UNIFORM_Z (aba_11_u16_untied
, svuint16_t
,
109 z0
= svaba_n_u16 (z1
, z2
, 11),
110 z0
= svaba (z1
, z2
, 11))