]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/adalp_u16.c
1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
3 #include "test_sve_acle.h"
7 ** uadalp z0\.h, p0/m, z4\.b
10 TEST_DUAL_Z (adalp_u16_m_tied1
, svuint16_t
, svuint8_t
,
11 z0
= svadalp_u16_m (p0
, z0
, z4
),
12 z0
= svadalp_m (p0
, z0
, z4
))
16 ** mov (z[0-9]+)\.d, z0\.d
18 ** uadalp z0\.h, p0/m, \1\.b
21 TEST_DUAL_Z_REV (adalp_u16_m_tied2
, svuint16_t
, svuint8_t
,
22 z0_res
= svadalp_u16_m (p0
, z4
, z0
),
23 z0_res
= svadalp_m (p0
, z4
, z0
))
26 ** adalp_u16_m_untied:
28 ** uadalp z0\.h, p0/m, z4\.b
31 TEST_DUAL_Z (adalp_u16_m_untied
, svuint16_t
, svuint8_t
,
32 z0
= svadalp_u16_m (p0
, z1
, z4
),
33 z0
= svadalp_m (p0
, z1
, z4
))
37 ** movprfx z0\.h, p0/z, z0\.h
38 ** uadalp z0\.h, p0/m, z4\.b
41 TEST_DUAL_Z (adalp_u16_z_tied1
, svuint16_t
, svuint8_t
,
42 z0
= svadalp_u16_z (p0
, z0
, z4
),
43 z0
= svadalp_z (p0
, z0
, z4
))
47 ** mov (z[0-9]+)\.d, z0\.d
48 ** movprfx z0\.h, p0/z, z4\.h
49 ** uadalp z0\.h, p0/m, \1\.b
52 TEST_DUAL_Z_REV (adalp_u16_z_tied2
, svuint16_t
, svuint8_t
,
53 z0_res
= svadalp_u16_z (p0
, z4
, z0
),
54 z0_res
= svadalp_z (p0
, z4
, z0
))
57 ** adalp_u16_z_untied:
58 ** movprfx z0\.h, p0/z, z1\.h
59 ** uadalp z0\.h, p0/m, z4\.b
62 TEST_DUAL_Z (adalp_u16_z_untied
, svuint16_t
, svuint8_t
,
63 z0
= svadalp_u16_z (p0
, z1
, z4
),
64 z0
= svadalp_z (p0
, z1
, z4
))
68 ** uadalp z0\.h, p0/m, z4\.b
71 TEST_DUAL_Z (adalp_u16_x_tied1
, svuint16_t
, svuint8_t
,
72 z0
= svadalp_u16_x (p0
, z0
, z4
),
73 z0
= svadalp_x (p0
, z0
, z4
))
77 ** mov (z[0-9]+)\.d, z0\.d
79 ** uadalp z0\.h, p0/m, \1\.b
82 TEST_DUAL_Z_REV (adalp_u16_x_tied2
, svuint16_t
, svuint8_t
,
83 z0_res
= svadalp_u16_x (p0
, z4
, z0
),
84 z0_res
= svadalp_x (p0
, z4
, z0
))
87 ** adalp_u16_x_untied:
89 ** uadalp z0\.h, p0/m, z4\.b
92 TEST_DUAL_Z (adalp_u16_x_untied
, svuint16_t
, svuint8_t
,
93 z0
= svadalp_u16_x (p0
, z1
, z4
),
94 z0
= svadalp_x (p0
, z1
, z4
))