1 /* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
2 
3 #include "test_sve_acle.h"
4 
5 /*
6 ** acgt_f16_tied:
7 ** (
8 **	facgt	p0\.h, p0/z, z0\.h, z1\.h
9 ** |
10 **	faclt	p0\.h, p0/z, z1\.h, z0\.h
11 ** )
12 **	ret
13 */
14 TEST_COMPARE_Z (acgt_f16_tied, svfloat16_t,
15 		p0 = svacgt_f16 (p0, z0, z1),
16 		p0 = svacgt (p0, z0, z1))
17 
18 /*
19 ** acgt_f16_untied:
20 ** (
21 **	facgt	p0\.h, p1/z, z0\.h, z1\.h
22 ** |
23 **	faclt	p0\.h, p1/z, z1\.h, z0\.h
24 ** )
25 **	ret
26 */
27 TEST_COMPARE_Z (acgt_f16_untied, svfloat16_t,
28 		p0 = svacgt_f16 (p1, z0, z1),
29 		p0 = svacgt (p1, z0, z1))
30 
31 /*
32 ** acgt_h4_f16:
33 **	mov	(z[0-9]+\.h), h4
34 ** (
35 **	facgt	p0\.h, p1/z, z0\.h, \1
36 ** |
37 **	faclt	p0\.h, p1/z, \1, z0\.h
38 ** )
39 **	ret
40 */
41 TEST_COMPARE_ZD (acgt_h4_f16, svfloat16_t, float16_t,
42 		 p0 = svacgt_n_f16 (p1, z0, d4),
43 		 p0 = svacgt (p1, z0, d4))
44 
45 /*
46 ** acgt_0_f16:
47 **	mov	(z[0-9]+\.h), #0
48 ** (
49 **	facgt	p0\.h, p1/z, z0\.h, \1
50 ** |
51 **	faclt	p0\.h, p1/z, \1, z0\.h
52 ** )
53 **	ret
54 */
55 TEST_COMPARE_Z (acgt_0_f16, svfloat16_t,
56 		p0 = svacgt_n_f16 (p1, z0, 0),
57 		p0 = svacgt (p1, z0, 0))
58 
59 /*
60 ** acgt_1_f16:
61 **	fmov	(z[0-9]+\.h), #1\.0(?:e\+0)?
62 ** (
63 **	facgt	p0\.h, p1/z, z0\.h, \1
64 ** |
65 **	faclt	p0\.h, p1/z, \1, z0\.h
66 ** )
67 **	ret
68 */
69 TEST_COMPARE_Z (acgt_1_f16, svfloat16_t,
70 		p0 = svacgt_n_f16 (p1, z0, 1),
71 		p0 = svacgt (p1, z0, 1))
72