]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/bsl2n_u8.c
1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
3 #include "test_sve_acle.h"
7 ** bsl2n z0\.d, z0\.d, z1\.d, z2\.d
10 TEST_UNIFORM_Z (bsl2n_u8_tied1
, svuint8_t
,
11 z0
= svbsl2n_u8 (z0
, z1
, z2
),
12 z0
= svbsl2n (z0
, z1
, z2
))
16 ** mov (z[0-9]+\.d), z0\.d
18 ** bsl2n z0\.d, z0\.d, \1, z2\.d
21 TEST_UNIFORM_Z (bsl2n_u8_tied2
, svuint8_t
,
22 z0
= svbsl2n_u8 (z1
, z0
, z2
),
23 z0
= svbsl2n (z1
, z0
, z2
))
27 ** mov (z[0-9]+\.d), z0\.d
29 ** bsl2n z0\.d, z0\.d, z2\.d, \1
32 TEST_UNIFORM_Z (bsl2n_u8_tied3
, svuint8_t
,
33 z0
= svbsl2n_u8 (z1
, z2
, z0
),
34 z0
= svbsl2n (z1
, z2
, z0
))
39 ** bsl2n z0\.d, z0\.d, z2\.d, z3\.d
42 TEST_UNIFORM_Z (bsl2n_u8_untied
, svuint8_t
,
43 z0
= svbsl2n_u8 (z1
, z2
, z3
),
44 z0
= svbsl2n (z1
, z2
, z3
))
48 ** mov (z[0-9]+)\.b, w0
49 ** bsl2n z0\.d, z0\.d, z1\.d, \1\.d
52 TEST_UNIFORM_ZX (bsl2n_w0_u8_tied1
, svuint8_t
, uint8_t,
53 z0
= svbsl2n_n_u8 (z0
, z1
, x0
),
54 z0
= svbsl2n (z0
, z1
, x0
))
58 ** mov (z[0-9]+)\.b, w0
59 ** mov (z[0-9]+\.d), z0\.d
61 ** bsl2n z0\.d, z0\.d, \2, \1\.d
64 TEST_UNIFORM_ZX (bsl2n_w0_u8_tied2
, svuint8_t
, uint8_t,
65 z0
= svbsl2n_n_u8 (z1
, z0
, x0
),
66 z0
= svbsl2n (z1
, z0
, x0
))
69 ** bsl2n_w0_u8_untied:
70 ** mov (z[0-9]+)\.b, w0
72 ** bsl2n z0\.d, z0\.d, z2\.d, \1\.d
75 TEST_UNIFORM_ZX (bsl2n_w0_u8_untied
, svuint8_t
, uint8_t,
76 z0
= svbsl2n_n_u8 (z1
, z2
, x0
),
77 z0
= svbsl2n (z1
, z2
, x0
))
81 ** mov (z[0-9]+)\.b, #11
82 ** bsl2n z0\.d, z0\.d, z1\.d, \1\.d
85 TEST_UNIFORM_Z (bsl2n_11_u8_tied1
, svuint8_t
,
86 z0
= svbsl2n_n_u8 (z0
, z1
, 11),
87 z0
= svbsl2n (z0
, z1
, 11))
91 ** mov (z[0-9]+)\.b, #11
92 ** mov (z[0-9]+\.d), z0\.d
94 ** bsl2n z0\.d, z0\.d, \2, \1\.d
97 TEST_UNIFORM_Z (bsl2n_11_u8_tied2
, svuint8_t
,
98 z0
= svbsl2n_n_u8 (z1
, z0
, 11),
99 z0
= svbsl2n (z1
, z0
, 11))
102 ** bsl2n_11_u8_untied:
103 ** mov (z[0-9]+)\.b, #11
105 ** bsl2n z0\.d, z0\.d, z2\.d, \1\.d
108 TEST_UNIFORM_Z (bsl2n_11_u8_untied
, svuint8_t
,
109 z0
= svbsl2n_n_u8 (z1
, z2
, 11),
110 z0
= svbsl2n (z1
, z2
, 11))