testsuite: enable and fix swaps-p8 testcases
[gcc.git] / gcc / testsuite / gcc.target / powerpc / vec-cmp.c
1 /* { dg-do compile { target lp64 } } */
2 /* { dg-skip-if "" { powerpc*-*-darwin* } } */
3 /* { dg-require-effective-target powerpc_p8vector_ok } */
4 /* { dg-options "-O2 -mdejagnu-cpu=power8" } */
5 /* { dg-final { scan-assembler-times "vcmpgtsb" 4 } } */
6 /* { dg-final { scan-assembler-times "vcmpgtub" 4 } } */
7 /* { dg-final { scan-assembler-times "vcmpgtsh" 4 } } */
8 /* { dg-final { scan-assembler-times "vcmpgtuh" 4 } } */
9 /* { dg-final { scan-assembler-times "vcmpgtsw" 4 } } */
10 /* { dg-final { scan-assembler-times "vcmpgtuw" 4 } } */
11 /* { dg-final { scan-assembler-times "vcmpgtsd" 4 } } */
12 /* { dg-final { scan-assembler-times "vcmpgtud" 4 } } */
13 /* { dg-final { scan-assembler-times "xxlnor" 16 } } */
14
15 #include <altivec.h>
16
17 vector bool char
18 cmple_sc (vector signed char x, vector signed char y)
19 {
20 return vec_cmple (x, y);
21 }
22
23 vector bool char
24 cmple_uc (vector unsigned char x, vector unsigned char y)
25 {
26 return vec_cmple (x, y);
27 }
28
29 vector bool short
30 cmple_ss (vector signed short x, vector signed short y)
31 {
32 return vec_cmple (x, y);
33 }
34
35 vector bool short
36 cmple_us (vector unsigned short x, vector unsigned short y)
37 {
38 return vec_cmple (x, y);
39 }
40
41 vector bool int
42 cmple_si (vector signed int x, vector signed int y)
43 {
44 return vec_cmple (x, y);
45 }
46
47 vector bool int
48 cmple_ui (vector unsigned int x, vector unsigned int y)
49 {
50 return vec_cmple (x, y);
51 }
52
53 vector bool long long
54 cmple_sl (vector signed long long x, vector signed long long y)
55 {
56 return vec_cmple (x, y);
57 }
58
59 vector bool long long
60 cmple_ul (vector unsigned long long x, vector unsigned long long y)
61 {
62 return vec_cmple (x, y);
63 }
64
65 vector bool int
66 cmple_f (vector float x, vector float y)
67 {
68 return vec_cmple (x, y);
69 }
70
71 vector bool long long int
72 cmple_d (vector double x, vector double y)
73 {
74 return vec_cmple (x, y);
75 }
76
77 vector bool char
78 cmpge_sc (vector signed char x, vector signed char y)
79 {
80 return vec_cmpge (x, y);
81 }
82
83 vector bool char
84 cmpge_uc (vector unsigned char x, vector unsigned char y)
85 {
86 return vec_cmpge (x, y);
87 }
88
89 vector bool short
90 cmpge_ss (vector signed short x, vector signed short y)
91 {
92 return vec_cmpge (x, y);
93 }
94
95 vector bool short
96 cmpge_us (vector unsigned short x, vector unsigned short y)
97 {
98 return vec_cmpge (x, y);
99 }
100
101 vector bool int
102 cmpge_si (vector signed int x, vector signed int y)
103 {
104 return vec_cmpge (x, y);
105 }
106
107 vector bool int
108 cmpge_ui (vector unsigned int x, vector unsigned int y)
109 {
110 return vec_cmpge (x, y);
111 }
112
113 vector bool long long
114 cmpge_sl (vector signed long long x, vector signed long long y)
115 {
116 return vec_cmpge (x, y);
117 }
118
119 vector bool long long
120 cmpge_ul (vector unsigned long long x, vector unsigned long long y)
121 {
122 return vec_cmpge (x, y);
123 }
124
125 vector bool int
126 cmpge_f (vector float x, vector float y)
127 {
128 return vec_cmpge (x, y);
129 }
130
131 vector bool long long int
132 cmpge_d (vector double x, vector double y)
133 {
134 return vec_cmpge (x, y);
135 }
136
137 vector bool int
138 cmpgt_ui (vector unsigned int x, vector unsigned int y)
139 {
140 return vec_cmpgt (x, y);
141 }
142
143 vector bool int
144 cmpgt_f (vector float x, vector float y)
145 {
146 return vec_cmpgt (x, y);
147 }
148
149 vector bool long long int
150 cmpgt_d (vector double x, vector double y)
151 {
152 return vec_cmpgt (x, y);
153 }
154
155 vector bool long long
156 cmpgt_sl (vector signed long long x, vector signed long long y)
157 {
158 return vec_cmpgt (x, y);
159 }
160
161 vector bool long long
162 cmpgt_ul (vector unsigned long long x, vector unsigned long long y)
163 {
164 return vec_cmpgt (x, y);
165 }
166
167 vector bool char
168 cmpgt_sc (vector signed char x, vector signed char y)
169 {
170 return vec_cmpgt (x, y);
171 }
172
173 vector bool char
174 cmpgt_uc (vector unsigned char x, vector unsigned char y)
175 {
176 return vec_cmpgt (x, y);
177 }
178
179 vector bool short
180 cmpgt_ss (vector signed short x, vector signed short y)
181 {
182 return vec_cmpgt (x, y);
183 }
184
185 vector bool short
186 cmpgt_us (vector unsigned short x, vector unsigned short y)
187 {
188 return vec_cmpgt (x, y);
189 }
190
191 vector bool int
192 cmpgt_si (vector signed int x, vector signed int y)
193 {
194 return vec_cmpgt (x, y);
195 }
196
197 vector bool int
198 cmplt_ui (vector unsigned int x, vector unsigned int y)
199 {
200 return vec_cmplt (x, y);
201 }
202
203 vector bool int
204 cmplt_f (vector float x, vector float y)
205 {
206 return vec_cmplt (x, y);
207 }
208
209 vector bool long long int
210 cmplt_d (vector double x, vector double y)
211 {
212 return vec_cmplt (x, y);
213 }
214
215 vector bool long long
216 cmplt_sl (vector signed long long x, vector signed long long y)
217 {
218 return vec_cmplt (x, y);
219 }
220
221 vector bool long long
222 cmplt_ul (vector unsigned long long x, vector unsigned long long y)
223 {
224 return vec_cmplt (x, y);
225 }
226
227 vector bool char
228 cmplt_sc (vector signed char x, vector signed char y)
229 {
230 return vec_cmplt (x, y);
231 }
232
233 vector bool char
234 cmplt_uc (vector unsigned char x, vector unsigned char y)
235 {
236 return vec_cmplt (x, y);
237 }
238
239 vector bool short
240 cmplt_ss (vector signed short x, vector signed short y)
241 {
242 return vec_cmplt (x, y);
243 }
244
245 vector bool short
246 cmplt_us (vector unsigned short x, vector unsigned short y)
247 {
248 return vec_cmplt (x, y);
249 }
250
251 vector bool int
252 cmplt_si (vector signed int x, vector signed int y)
253 {
254 return vec_cmplt (x, y);
255 }