]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.target/aarch64/sve2/acle/asm/qabs_s8.c
[AArch64] Add support for the SVE2 ACLE
[thirdparty/gcc.git] / gcc / testsuite / gcc.target / aarch64 / sve2 / acle / asm / qabs_s8.c
1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
2
3 #include "test_sve_acle.h"
4
5 /*
6 ** qabs_s8_m_tied12:
7 ** sqabs z0\.b, p0/m, z0\.b
8 ** ret
9 */
10 TEST_UNIFORM_Z (qabs_s8_m_tied12, svint8_t,
11 z0 = svqabs_s8_m (z0, p0, z0),
12 z0 = svqabs_m (z0, p0, z0))
13
14 /*
15 ** qabs_s8_m_tied1:
16 ** sqabs z0\.b, p0/m, z1\.b
17 ** ret
18 */
19 TEST_UNIFORM_Z (qabs_s8_m_tied1, svint8_t,
20 z0 = svqabs_s8_m (z0, p0, z1),
21 z0 = svqabs_m (z0, p0, z1))
22
23 /*
24 ** qabs_s8_m_tied2:
25 ** mov (z[0-9]+)\.d, z0\.d
26 ** movprfx z0, z1
27 ** sqabs z0\.b, p0/m, \1\.b
28 ** ret
29 */
30 TEST_UNIFORM_Z (qabs_s8_m_tied2, svint8_t,
31 z0 = svqabs_s8_m (z1, p0, z0),
32 z0 = svqabs_m (z1, p0, z0))
33
34 /*
35 ** qabs_s8_m_untied:
36 ** movprfx z0, z2
37 ** sqabs z0\.b, p0/m, z1\.b
38 ** ret
39 */
40 TEST_UNIFORM_Z (qabs_s8_m_untied, svint8_t,
41 z0 = svqabs_s8_m (z2, p0, z1),
42 z0 = svqabs_m (z2, p0, z1))
43
44 /*
45 ** qabs_s8_z_tied1:
46 ** mov (z[0-9]+)\.d, z0\.d
47 ** movprfx z0\.b, p0/z, \1\.b
48 ** sqabs z0\.b, p0/m, \1\.b
49 ** ret
50 */
51 TEST_UNIFORM_Z (qabs_s8_z_tied1, svint8_t,
52 z0 = svqabs_s8_z (p0, z0),
53 z0 = svqabs_z (p0, z0))
54
55 /*
56 ** qabs_s8_z_untied:
57 ** movprfx z0\.b, p0/z, z1\.b
58 ** sqabs z0\.b, p0/m, z1\.b
59 ** ret
60 */
61 TEST_UNIFORM_Z (qabs_s8_z_untied, svint8_t,
62 z0 = svqabs_s8_z (p0, z1),
63 z0 = svqabs_z (p0, z1))
64
65 /*
66 ** qabs_s8_x_tied1:
67 ** sqabs z0\.b, p0/m, z0\.b
68 ** ret
69 */
70 TEST_UNIFORM_Z (qabs_s8_x_tied1, svint8_t,
71 z0 = svqabs_s8_x (p0, z0),
72 z0 = svqabs_x (p0, z0))
73
74 /*
75 ** qabs_s8_x_untied:
76 ** sqabs z0\.b, p0/m, z1\.b
77 ** ret
78 */
79 TEST_UNIFORM_Z (qabs_s8_x_untied, svint8_t,
80 z0 = svqabs_s8_x (p0, z1),
81 z0 = svqabs_x (p0, z1))