]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gcc.target/aarch64/sme/acle-asm/zero_mask_za.c
aarch64: Avoid using mismatched ZERO ZA sizes
[thirdparty/gcc.git] / gcc / testsuite / gcc.target / aarch64 / sme / acle-asm / zero_mask_za.c
CommitLineData
4f6ab953
RS
1/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
2
3#define STREAMING_COMPATIBLE
4#include "test_sme_acle.h"
5
6/*
7** zero_mask_za_0:
8** zero { *}
9** ret
10*/
11PROTO (zero_mask_za_0, void, ()) { svzero_mask_za (0); }
12
13/*
14** zero_mask_za_01:
15** zero { za0\.d }
16** ret
17*/
18PROTO (zero_mask_za_01, void, ()) { svzero_mask_za (0x01); }
19
20/*
21** zero_mask_za_80:
22** zero { za7\.d }
23** ret
24*/
25PROTO (zero_mask_za_80, void, ()) { svzero_mask_za (0x80); }
26
27/*
28** zero_mask_za_03:
29** zero { za0\.d, za1\.d }
30** ret
31*/
32PROTO (zero_mask_za_03, void, ()) { svzero_mask_za (0x03); }
33
34/*
35** zero_mask_za_09:
36** zero { za0\.d, za3\.d }
37** ret
38*/
39PROTO (zero_mask_za_09, void, ()) { svzero_mask_za (0x09); }
40
41/*
42** zero_mask_za_0d:
43** zero { za0\.d, za2\.d, za3\.d }
44** ret
45*/
46PROTO (zero_mask_za_0d, void, ()) { svzero_mask_za (0x0d); }
47
48/*
49** zero_mask_za_3c:
50** zero { za2\.d, za3\.d, za4\.d, za5\.d }
51** ret
52*/
53PROTO (zero_mask_za_3c, void, ()) { svzero_mask_za (0x3c); }
54
55/*
56** zero_mask_za_5a:
57** zero { za1\.d, za3\.d, za4\.d, za6\.d }
58** ret
59*/
60PROTO (zero_mask_za_5a, void, ()) { svzero_mask_za (0x5a); }
61
62/*
63** zero_mask_za_11:
64** zero { za0\.s }
65** ret
66*/
67PROTO (zero_mask_za_11, void, ()) { svzero_mask_za (0x11); }
68
69/*
70** zero_mask_za_88:
71** zero { za3\.s }
72** ret
73*/
74PROTO (zero_mask_za_88, void, ()) { svzero_mask_za (0x88); }
75
76/*
77** zero_mask_za_33:
78** zero { za0\.s, za1\.s }
79** ret
80*/
81PROTO (zero_mask_za_33, void, ()) { svzero_mask_za (0x33); }
82
83/*
84** zero_mask_za_cc:
85** zero { za2\.s, za3\.s }
86** ret
87*/
88PROTO (zero_mask_za_cc, void, ()) { svzero_mask_za (0xcc); }
89
90/*
91** zero_mask_za_55:
92** zero { za0\.h }
93** ret
94*/
95PROTO (zero_mask_za_55, void, ()) { svzero_mask_za (0x55); }
96
97/*
98** zero_mask_za_aa:
99** zero { za1\.h }
100** ret
101*/
102PROTO (zero_mask_za_aa, void, ()) { svzero_mask_za (0xaa); }
103
104/*
105** zero_mask_za_ab:
9b8c6fff 106** zero { za0\.d, za1\.d, za3\.d, za5\.d, za7\.d }
4f6ab953
RS
107** ret
108*/
109PROTO (zero_mask_za_ab, void, ()) { svzero_mask_za (0xab); }
110
111/*
112** zero_mask_za_d7:
9b8c6fff 113** zero { za0\.d, za1\.d, za2\.d, za4\.d, za6\.d, za7\.d }
4f6ab953
RS
114** ret
115*/
116PROTO (zero_mask_za_d7, void, ()) { svzero_mask_za (0xd7); }
117
118/*
119** zero_mask_za_bf:
9b8c6fff 120** zero { za0\.d, za1\.d, za2\.d, za3\.d, za4\.d, za5\.d, za7\.d }
4f6ab953
RS
121** ret
122*/
123PROTO (zero_mask_za_bf, void, ()) { svzero_mask_za (0xbf); }
124
125/*
126** zero_mask_za_ff:
127** zero { za }
128** ret
129*/
130PROTO (zero_mask_za_ff, void, ()) { svzero_mask_za (0xff); }