comparison gcc/config/s390/s390-builtins.def @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
comparison
equal deleted inserted replaced
68:561a7518be6b 111:04ced10e8804
1 /* Builtin definitions for IBM S/390 and zSeries
2 Copyright (C) 2015-2017 Free Software Foundation, Inc.
3
4 Contributed by Andreas Krebbel (Andreas.Krebbel@de.ibm.com).
5
6 This file is part of GCC.
7
8 GCC is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3, or (at your option)
11 any later version.
12
13 GCC is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
16 License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with GCC; see the file COPYING3. If not see
20 <http://www.gnu.org/licenses/>. */
21
22 #undef O_U1
23 #undef O_U2
24 #undef O_U3
25 #undef O_U4
26 #undef O_U5
27 #undef O_U8
28 #undef O_U12
29 #undef O_U16
30 #undef O_U32
31
32 #undef O_S2
33 #undef O_S3
34 #undef O_S4
35 #undef O_S5
36 #undef O_S8
37 #undef O_S12
38 #undef O_S16
39 #undef O_S32
40 #undef O_ELEM
41 #undef O_LIT
42
43 #undef O1_U1
44 #undef O2_U1
45 #undef O3_U1
46 #undef O4_U1
47
48 #undef O1_U2
49 #undef O2_U2
50 #undef O3_U2
51 #undef O4_U2
52
53 #undef O1_U3
54 #undef O2_U3
55 #undef O3_U3
56 #undef O4_U3
57
58 #undef O1_U4
59 #undef O2_U4
60 #undef O3_U4
61 #undef O4_U4
62
63 #undef O1_U5
64 #undef O2_U5
65 #undef O3_U5
66 #undef O4_U5
67
68 #undef O1_U8
69 #undef O2_U8
70 #undef O3_U8
71 #undef O4_U8
72
73 #undef O1_U12
74 #undef O2_U12
75 #undef O3_U12
76 #undef O4_U12
77
78 #undef O1_U16
79 #undef O2_U16
80 #undef O3_U16
81 #undef O4_U16
82
83 #undef O1_U32
84 #undef O2_U32
85 #undef O3_U32
86 #undef O4_U32
87
88 #undef O1_S2
89 #undef O2_S2
90 #undef O3_S2
91 #undef O4_S2
92
93 #undef O1_S3
94 #undef O2_S3
95 #undef O3_S3
96 #undef O4_S3
97
98 #undef O1_S4
99 #undef O2_S4
100 #undef O3_S4
101 #undef O4_S4
102
103 #undef O1_S5
104 #undef O2_S5
105 #undef O3_S5
106 #undef O4_S5
107
108 #undef O1_S8
109 #undef O2_S8
110 #undef O3_S8
111 #undef O4_S8
112
113 #undef O1_S12
114 #undef O2_S12
115 #undef O3_S12
116 #undef O4_S12
117
118 #undef O1_S16
119 #undef O2_S16
120 #undef O3_S16
121 #undef O4_S16
122
123 #undef O1_S32
124 #undef O2_S32
125 #undef O3_S32
126 #undef O4_S32
127
128 #undef O1_ELEM
129 #undef O2_ELEM
130 #undef O3_ELEM
131 #undef O4_ELEM
132
133 #undef O1_LIT
134 #undef O2_LIT
135 #undef O3_LIT
136 #undef O4_LIT
137
138 #undef O_SHIFT
139 #undef O_IMM_P
140 #undef O_UIMM_P
141 #undef O_SIMM_P
142
143 #define O_U1 1 /* unsigned 1 bit literal */
144 #define O_U2 2 /* unsigned 2 bit literal */
145 #define O_U3 3 /* unsigned 3 bit literal */
146 #define O_U4 4 /* unsigned 4 bit literal */
147 #define O_U5 5 /* unsigned 5 bit literal */
148 #define O_U8 6 /* unsigned 8 bit literal */
149 #define O_U12 7 /* unsigned 16 bit literal */
150 #define O_U16 8 /* unsigned 16 bit literal */
151 #define O_U32 9 /* unsigned 32 bit literal */
152
153 #define O_S2 10 /* signed 2 bit literal */
154 #define O_S3 11 /* signed 3 bit literal */
155 #define O_S4 12 /* signed 4 bit literal */
156 #define O_S5 13 /* signed 5 bit literal */
157 #define O_S8 14 /* signed 8 bit literal */
158 #define O_S12 15 /* signed 12 bit literal */
159 #define O_S16 16 /* signed 16 bit literal */
160 #define O_S32 17 /* signed 32 bit literal */
161
162 #define O_ELEM 18 /* Element selector requiring modulo arithmetic. */
163 #define O_LIT 19 /* Operand must be a literal fitting the target type. */
164
165 #define O_SHIFT 5
166
167 #define O_UIMM_P(X) ((X) >= O_U1 && (X) <= O_U32)
168 #define O_SIMM_P(X) ((X) >= O_S2 && (X) <= O_S32)
169 #define O_IMM_P(X) ((X) == O_LIT || ((X) >= O_U1 && (X) <= O_S32))
170
171 #define O1_U1 O_U1
172 #define O2_U1 (O_U1 << O_SHIFT)
173 #define O3_U1 (O_U1 << (2 * O_SHIFT))
174 #define O4_U1 (O_U1 << (3 * O_SHIFT))
175
176 #define O1_U2 O_U2
177 #define O2_U2 (O_U2 << O_SHIFT)
178 #define O3_U2 (O_U2 << (2 * O_SHIFT))
179 #define O4_U2 (O_U2 << (3 * O_SHIFT))
180
181 #define O1_U3 O_U3
182 #define O2_U3 (O_U3 << O_SHIFT)
183 #define O3_U3 (O_U3 << (2 * O_SHIFT))
184 #define O4_U3 (O_U3 << (3 * O_SHIFT))
185
186 #define O1_U4 O_U4
187 #define O2_U4 (O_U4 << O_SHIFT)
188 #define O3_U4 (O_U4 << (2 * O_SHIFT))
189 #define O4_U4 (O_U4 << (3 * O_SHIFT))
190
191 #define O1_U5 O_U5
192 #define O2_U5 (O_U5 << O_SHIFT)
193 #define O3_U5 (O_U5 << (2 * O_SHIFT))
194 #define O4_U5 (O_U5 << (3 * O_SHIFT))
195
196 #define O1_U8 O_U8
197 #define O2_U8 (O_U8 << O_SHIFT)
198 #define O3_U8 (O_U8 << (2 * O_SHIFT))
199 #define O4_U8 (O_U8 << (3 * O_SHIFT))
200
201 #define O1_U12 O_U12
202 #define O2_U12 (O_U12 << O_SHIFT)
203 #define O3_U12 (O_U12 << (2 * O_SHIFT))
204 #define O4_U12 (O_U12 << (3 * O_SHIFT))
205
206 #define O1_U16 O_U16
207 #define O2_U16 (O_U16 << O_SHIFT)
208 #define O3_U16 (O_U16 << (2 * O_SHIFT))
209 #define O4_U16 (O_U16 << (3 * O_SHIFT))
210
211 #define O1_U32 O_U32
212 #define O2_U32 (O_U32 << O_SHIFT)
213 #define O3_U32 (O_U32 << (2 * O_SHIFT))
214 #define O4_U32 (O_U32 << (3 * O_SHIFT))
215
216
217 #define O1_S2 O_S2
218 #define O2_S2 (O_S2 << O_SHIFT)
219 #define O3_S2 (O_S2 << (2 * O_SHIFT))
220 #define O4_S2 (O_S2 << (3 * O_SHIFT))
221
222 #define O1_S3 O_S3
223 #define O2_S3 (O_S3 << O_SHIFT)
224 #define O3_S3 (O_S3 << (2 * O_SHIFT))
225 #define O4_S3 (O_S3 << (3 * O_SHIFT))
226
227 #define O1_S4 O_S4
228 #define O2_S4 (O_S4 << O_SHIFT)
229 #define O3_S4 (O_S4 << (2 * O_SHIFT))
230 #define O4_S4 (O_S4 << (3 * O_SHIFT))
231
232 #define O1_S5 O_S5
233 #define O2_S5 (O_S5 << O_SHIFT)
234 #define O3_S5 (O_S5 << (2 * O_SHIFT))
235 #define O4_S5 (O_S5 << (3 * O_SHIFT))
236
237 #define O1_S8 O_S8
238 #define O2_S8 (O_S8 << O_SHIFT)
239 #define O3_S8 (O_S8 << (2 * O_SHIFT))
240 #define O4_S8 (O_S8 << (3 * O_SHIFT))
241
242 #define O1_S12 O_S12
243 #define O2_S12 (O_S12 << O_SHIFT)
244 #define O3_S12 (O_S12 << (2 * O_SHIFT))
245 #define O4_S12 (O_S12 << (3 * O_SHIFT))
246
247 #define O1_S16 O_S16
248 #define O2_S16 (O_S16 << O_SHIFT)
249 #define O3_S16 (O_S16 << (2 * O_SHIFT))
250 #define O4_S16 (O_S16 << (3 * O_SHIFT))
251
252 #define O1_S32 O_S32
253 #define O2_S32 (O_S32 << O_SHIFT)
254 #define O3_S32 (O_S32 << (2 * O_SHIFT))
255 #define O4_S32 (O_S32 << (3 * O_SHIFT))
256
257 #define O1_ELEM O_ELEM
258 #define O2_ELEM (O_ELEM << O_SHIFT)
259 #define O3_ELEM (O_ELEM << (2 * O_SHIFT))
260 #define O4_ELEM (O_ELEM << (3 * O_SHIFT))
261
262 #define O1_LIT O_LIT
263 #define O2_LIT (O_LIT << O_SHIFT)
264 #define O3_LIT (O_LIT << (2 * O_SHIFT))
265 #define O4_LIT (O_LIT << (3 * O_SHIFT))
266
267
268 /* Builtin flags. Flags applying to the whole builtin definition. */
269
270 #undef B_INT
271 #undef B_HTM
272 #undef B_VX
273 #undef B_VXE
274 #undef B_DEP
275
276 #undef BFLAGS_MASK_INIT
277 #define BFLAGS_MASK_INIT (B_INT)
278
279 #define B_INT (1 << 0) /* Internal builtins. This builtin cannot be used in user programs. */
280 #define B_HTM (1 << 1) /* Builtins requiring the transactional execution facility. */
281 #define B_VX (1 << 2) /* Builtins requiring the z13 vector extensions. */
282 #define B_VXE (1 << 3) /* Builtins requiring the arch12 vector extensions. */
283 #define B_DEP (1 << 4) /* Builtin has been deprecated and a warning should be issued. */
284
285 /* B_DEF defines a standard (not overloaded) builtin
286 B_DEF (<builtin name>, <RTL expander name>, <function attributes>, <builtin flags>, <operand flags, see above>, <fntype>)
287
288 OB_DEF defines an overloaded builtin
289 OB_DEF (<builtin name>, <start variant>, <end variant>, <builtin flags>, <fntype>)
290 The builtin flags apply to all its variants and do not need to be mentioned there again.
291
292 OB_DEF_VAR defines a variant of an overloaded builtin
293 OB_DEF_VAR (<variant name>, <standard builtin name>, <flags>, <operand flags>, <fntype>)
294 flags: Flags applying to all its variants should be mentioned in the OB_DEF line instead. */
295
296
297 B_DEF (tbeginc, tbeginc, 0, B_HTM, 0, BT_FN_INT)
298 B_DEF (tbegin, tbegin, returns_twice_attr, B_HTM, 0, BT_FN_INT_VOIDPTR)
299 B_DEF (tbegin_nofloat, tbegin_nofloat, returns_twice_attr, B_HTM, 0, BT_FN_INT_VOIDPTR)
300 B_DEF (tbegin_retry, tbegin_retry, returns_twice_attr, B_HTM, 0, BT_FN_INT_VOIDPTR_INT)
301 B_DEF (tbegin_retry_nofloat, tbegin_retry_nofloat,returns_twice_attr,B_HTM, 0, BT_FN_INT_VOIDPTR_INT)
302 B_DEF (tend, tend, 0, B_HTM, 0, BT_FN_INT)
303 B_DEF (tabort, tabort, noreturn_attr, B_HTM, 0, BT_FN_VOID_INT)
304 B_DEF (tx_nesting_depth, etnd, 0, B_HTM, 0, BT_FN_INT)
305 B_DEF (non_tx_store, ntstg, 0, B_HTM, 0, BT_FN_VOID_UINT64PTR_UINT64)
306 B_DEF (tx_assist, tx_assist, 0, B_HTM, 0, BT_FN_VOID_INT)
307 B_DEF (s390_sfpc, sfpc, 0, 0, 0, BT_FN_VOID_UINT)
308 B_DEF (s390_efpc, efpc, 0, 0, 0, BT_FN_UINT)
309 B_DEF (s390_lcbb, lcbb, 0, B_VX, O2_U4, BT_FN_UINT_VOIDCONSTPTR_INT)
310
311 OB_DEF (s390_vec_step, MAX, MAX, B_VX, BT_FN_INT_INT)
312
313 OB_DEF (s390_vec_gather_element, s390_vec_gather_element_s32,s390_vec_gather_element_dbl,B_VX,BT_FN_OV4SI_OV4SI_OUV4SI_INTCONSTPTR_UCHAR)
314 OB_DEF_VAR (s390_vec_gather_element_s32,s390_vgef, 0, O4_U2, BT_OV_V4SI_V4SI_UV4SI_INTCONSTPTR_UCHAR)
315 OB_DEF_VAR (s390_vec_gather_element_b32,s390_vgef, 0, O4_U2, BT_OV_BV4SI_BV4SI_UV4SI_UINTCONSTPTR_UCHAR)
316 OB_DEF_VAR (s390_vec_gather_element_u32,s390_vgef, 0, O4_U2, BT_OV_UV4SI_UV4SI_UV4SI_UINTCONSTPTR_UCHAR)
317 OB_DEF_VAR (s390_vec_gather_element_flt,s390_vgef, B_VXE, O4_U2, BT_OV_V4SF_V4SF_UV4SI_FLTCONSTPTR_UCHAR)
318 OB_DEF_VAR (s390_vec_gather_element_s64,s390_vgeg, 0, O4_U1, BT_OV_V2DI_V2DI_UV2DI_LONGLONGCONSTPTR_UCHAR)
319 OB_DEF_VAR (s390_vec_gather_element_b64,s390_vgeg, 0, O4_U1, BT_OV_BV2DI_BV2DI_UV2DI_ULONGLONGCONSTPTR_UCHAR)
320 OB_DEF_VAR (s390_vec_gather_element_u64,s390_vgeg, 0, O4_U1, BT_OV_UV2DI_UV2DI_UV2DI_ULONGLONGCONSTPTR_UCHAR)
321 OB_DEF_VAR (s390_vec_gather_element_dbl,s390_vgeg, 0, O4_U1, BT_OV_V2DF_V2DF_UV2DI_DBLCONSTPTR_UCHAR)
322
323 B_DEF (s390_vgef, vec_gather_elementv4si,0, B_VX, O4_U2, BT_FN_UV4SI_UV4SI_UV4SI_UINTCONSTPTR_UCHAR)
324 B_DEF (s390_vgeg, vec_gather_elementv2di,0, B_VX, O4_U1, BT_FN_UV2DI_UV2DI_UV2DI_ULONGLONGCONSTPTR_UCHAR)
325 B_DEF (s390_vgbm, vec_genbytemaskv16qi,0, B_VX, O1_U16, BT_FN_UV16QI_USHORT)
326 B_DEF (s390_vgmb, vec_genmaskv16qi, 0, B_VX, O1_U8 | O2_U8, BT_FN_UV16QI_UCHAR_UCHAR)
327 B_DEF (s390_vgmh, vec_genmaskv8hi, 0, B_VX, O1_U8 | O2_U8, BT_FN_UV8HI_UCHAR_UCHAR)
328 B_DEF (s390_vgmf, vec_genmaskv4si, 0, B_VX, O1_U8 | O2_U8, BT_FN_UV4SI_UCHAR_UCHAR)
329 B_DEF (s390_vgmg, vec_genmaskv2di, 0, B_VX, O1_U8 | O2_U8, BT_FN_UV2DI_UCHAR_UCHAR)
330
331 OB_DEF (s390_vec_xl, s390_vec_xl_s8, s390_vec_xl_dbl, B_VX, BT_FN_V4SI_INT_VOIDPTR)
332 OB_DEF_VAR (s390_vec_xl_s8, MAX, 0, O1_LIT, BT_OV_V16QI_LONG_SCHARPTR) /* vl */
333 OB_DEF_VAR (s390_vec_xl_u8, MAX, 0, O1_LIT, BT_OV_UV16QI_LONG_UCHARPTR) /* vl */
334 OB_DEF_VAR (s390_vec_xl_s16, MAX, 0, O1_LIT, BT_OV_V8HI_LONG_SHORTPTR) /* vl */
335 OB_DEF_VAR (s390_vec_xl_u16, MAX, 0, O1_LIT, BT_OV_UV8HI_LONG_USHORTPTR) /* vl */
336 OB_DEF_VAR (s390_vec_xl_s32, MAX, 0, O1_LIT, BT_OV_V4SI_LONG_INTPTR) /* vl */
337 OB_DEF_VAR (s390_vec_xl_u32, MAX, 0, O1_LIT, BT_OV_UV4SI_LONG_UINTPTR) /* vl */
338 OB_DEF_VAR (s390_vec_xl_s64, MAX, 0, O1_LIT, BT_OV_V2DI_LONG_LONGLONGPTR) /* vl */
339 OB_DEF_VAR (s390_vec_xl_u64, MAX, 0, O1_LIT, BT_OV_UV2DI_LONG_ULONGLONGPTR) /* vl */
340 OB_DEF_VAR (s390_vec_xl_flt, MAX, 0, O1_LIT, BT_OV_V4SF_LONG_FLTPTR) /* vl */
341 OB_DEF_VAR (s390_vec_xl_dbl, MAX, 0, O1_LIT, BT_OV_V2DF_LONG_DBLPTR) /* vl */
342
343 OB_DEF (s390_vec_xld2, s390_vec_xld2_s8, s390_vec_xld2_dbl, B_DEP | B_VX, BT_FN_V4SI_INT_VOIDPTR)
344 OB_DEF_VAR (s390_vec_xld2_s8, MAX, 0, O1_LIT, BT_OV_V16QI_LONG_SCHARPTR) /* vl */
345 OB_DEF_VAR (s390_vec_xld2_u8, MAX, 0, O1_LIT, BT_OV_UV16QI_LONG_UCHARPTR) /* vl */
346 OB_DEF_VAR (s390_vec_xld2_s16, MAX, 0, O1_LIT, BT_OV_V8HI_LONG_SHORTPTR) /* vl */
347 OB_DEF_VAR (s390_vec_xld2_u16, MAX, 0, O1_LIT, BT_OV_UV8HI_LONG_USHORTPTR) /* vl */
348 OB_DEF_VAR (s390_vec_xld2_s32, MAX, 0, O1_LIT, BT_OV_V4SI_LONG_INTPTR) /* vl */
349 OB_DEF_VAR (s390_vec_xld2_u32, MAX, 0, O1_LIT, BT_OV_UV4SI_LONG_UINTPTR) /* vl */
350 OB_DEF_VAR (s390_vec_xld2_s64, MAX, 0, O1_LIT, BT_OV_V2DI_LONG_LONGLONGPTR) /* vl */
351 OB_DEF_VAR (s390_vec_xld2_u64, MAX, 0, O1_LIT, BT_OV_UV2DI_LONG_ULONGLONGPTR) /* vl */
352 OB_DEF_VAR (s390_vec_xld2_dbl, MAX, 0, O1_LIT, BT_OV_V2DF_LONG_DBLPTR) /* vl */
353
354 OB_DEF (s390_vec_xlw4, s390_vec_xlw4_s8, s390_vec_xlw4_u32, B_DEP | B_VX, BT_FN_V4SI_INT_VOIDPTR)
355 OB_DEF_VAR (s390_vec_xlw4_s8, MAX, 0, O1_LIT, BT_OV_V16QI_LONG_SCHARPTR) /* vl */
356 OB_DEF_VAR (s390_vec_xlw4_u8, MAX, 0, O1_LIT, BT_OV_UV16QI_LONG_UCHARPTR) /* vl */
357 OB_DEF_VAR (s390_vec_xlw4_s16, MAX, 0, O1_LIT, BT_OV_V8HI_LONG_SHORTPTR) /* vl */
358 OB_DEF_VAR (s390_vec_xlw4_u16, MAX, 0, O1_LIT, BT_OV_UV8HI_LONG_USHORTPTR) /* vl */
359 OB_DEF_VAR (s390_vec_xlw4_s32, MAX, 0, O1_LIT, BT_OV_V4SI_LONG_INTPTR) /* vl */
360 OB_DEF_VAR (s390_vec_xlw4_u32, MAX, 0, O1_LIT, BT_OV_UV4SI_LONG_UINTPTR) /* vl */
361
362 OB_DEF (s390_vec_splats, s390_vec_splats_s8, s390_vec_splats_dbl,B_VX, BT_FN_OV4SI_INT)
363 OB_DEF_VAR (s390_vec_splats_s8, s390_vlrepb, 0, 0, BT_OV_V16QI_SCHAR)
364 OB_DEF_VAR (s390_vec_splats_u8, s390_vlrepb, 0, 0, BT_OV_UV16QI_UCHAR)
365 OB_DEF_VAR (s390_vec_splats_s16, s390_vlreph, 0, 0, BT_OV_V8HI_SHORT)
366 OB_DEF_VAR (s390_vec_splats_u16, s390_vlreph, 0, 0, BT_OV_UV8HI_USHORT)
367 OB_DEF_VAR (s390_vec_splats_s32, s390_vlrepf, 0, 0, BT_OV_V4SI_INT)
368 OB_DEF_VAR (s390_vec_splats_u32, s390_vlrepf, 0, 0, BT_OV_UV4SI_UINT)
369 OB_DEF_VAR (s390_vec_splats_s64, s390_vlrepg, 0, 0, BT_OV_V2DI_LONGLONG)
370 OB_DEF_VAR (s390_vec_splats_u64, s390_vlrepg, 0, 0, BT_OV_UV2DI_ULONGLONG)
371 OB_DEF_VAR (s390_vec_splats_flt, s390_vlrepf_flt, B_VXE, 0, BT_OV_V4SF_FLT) /* vlrepf */
372 OB_DEF_VAR (s390_vec_splats_dbl, s390_vlrepg_dbl, 0, 0, BT_OV_V2DF_DBL) /* vlrepg */
373
374 B_DEF (s390_vlrepb, vec_splatsv16qi, 0, B_VX, 0, BT_FN_UV16QI_UCHAR)
375 B_DEF (s390_vlreph, vec_splatsv8hi, 0, B_VX, 0, BT_FN_UV8HI_USHORT)
376 B_DEF (s390_vlrepf, vec_splatsv4si, 0, B_VX, 0, BT_FN_UV4SI_UINT)
377 B_DEF (s390_vlrepf_flt, vec_splatsv4sf, 0, B_INT | B_VXE, 0, BT_FN_V4SF_FLT)
378 B_DEF (s390_vlrepg, vec_splatsv2di, 0, B_VX, 0, BT_FN_UV2DI_ULONGLONG)
379 B_DEF (s390_vlrepg_dbl, vec_splatsv2df, 0, B_INT | B_VX, 0, BT_FN_V2DF_DBL)
380 B_DEF (s390_vrepib, vec_splatsv16qi, 0, B_VX, O1_U8, BT_FN_V16QI_UCHAR)
381 B_DEF (s390_vrepih, vec_splatsv8hi, 0, B_VX, O1_S16, BT_FN_V8HI_SHORT)
382 B_DEF (s390_vrepif, vec_splatsv4si, 0, B_VX, O1_S16, BT_FN_V4SI_SHORT)
383 B_DEF (s390_vrepig, vec_splatsv2di, 0, B_VX, O1_S16, BT_FN_V2DI_SHORT)
384
385 B_DEF (s390_vec_splat_u8, vec_splatsv16qi, 0, B_VX, O1_U8, BT_FN_UV16QI_UCHAR)
386 B_DEF (s390_vec_splat_s8, vec_splatsv16qi, 0, B_VX, O1_S8, BT_FN_V16QI_SCHAR)
387 B_DEF (s390_vec_splat_u16, vec_splatsv8hi, 0, B_VX, O1_U16, BT_FN_UV8HI_USHORT)
388 B_DEF (s390_vec_splat_s16, vec_splatsv8hi, 0, B_VX, O1_S16, BT_FN_V8HI_SHORT)
389 B_DEF (s390_vec_splat_u32, vec_splatsv4si, 0, B_VX, O1_U16, BT_FN_UV4SI_USHORT)
390 B_DEF (s390_vec_splat_s32, vec_splatsv4si, 0, B_VX, O1_S16, BT_FN_V4SI_SHORT)
391 B_DEF (s390_vec_splat_u64, vec_splatsv2di, 0, B_VX, O1_U16, BT_FN_UV2DI_USHORT)
392 B_DEF (s390_vec_splat_s64, vec_splatsv2di, 0, B_VX, O1_S16, BT_FN_V2DI_SHORT)
393
394 /* First two operands are swapped in s390-c.c */
395 OB_DEF (s390_vec_insert, s390_vec_insert_s8, s390_vec_insert_dbl,B_VX, BT_FN_OV4SI_INT_OV4SI_INT)
396 OB_DEF_VAR (s390_vec_insert_s8, s390_vlvgb, 0, O3_ELEM, BT_OV_V16QI_SCHAR_V16QI_INT)
397 OB_DEF_VAR (s390_vec_insert_u8, s390_vlvgb, 0, O3_ELEM, BT_OV_UV16QI_UCHAR_UV16QI_INT)
398 OB_DEF_VAR (s390_vec_insert_b8, s390_vlvgb, 0, O3_ELEM, BT_OV_UV16QI_UCHAR_BV16QI_INT)
399 OB_DEF_VAR (s390_vec_insert_s16, s390_vlvgh, 0, O3_ELEM, BT_OV_V8HI_SHORT_V8HI_INT)
400 OB_DEF_VAR (s390_vec_insert_u16, s390_vlvgh, 0, O3_ELEM, BT_OV_UV8HI_USHORT_UV8HI_INT)
401 OB_DEF_VAR (s390_vec_insert_b16, s390_vlvgh, 0, O3_ELEM, BT_OV_UV8HI_USHORT_BV8HI_INT)
402 OB_DEF_VAR (s390_vec_insert_s32, s390_vlvgf, 0, O3_ELEM, BT_OV_V4SI_INT_V4SI_INT)
403 OB_DEF_VAR (s390_vec_insert_u32, s390_vlvgf, 0, O3_ELEM, BT_OV_UV4SI_UINT_UV4SI_INT)
404 OB_DEF_VAR (s390_vec_insert_b32, s390_vlvgf, 0, O3_ELEM, BT_OV_UV4SI_UINT_BV4SI_INT)
405 OB_DEF_VAR (s390_vec_insert_s64, s390_vlvgg, 0, O3_ELEM, BT_OV_V2DI_LONGLONG_V2DI_INT)
406 OB_DEF_VAR (s390_vec_insert_u64, s390_vlvgg, 0, O3_ELEM, BT_OV_UV2DI_ULONGLONG_UV2DI_INT)
407 OB_DEF_VAR (s390_vec_insert_b64, s390_vlvgg, 0, O3_ELEM, BT_OV_UV2DI_ULONGLONG_BV2DI_INT)
408 OB_DEF_VAR (s390_vec_insert_flt, s390_vlvgf_flt, B_VXE, O3_ELEM, BT_OV_V4SF_FLT_V4SF_INT) /* vlvgf */
409 OB_DEF_VAR (s390_vec_insert_dbl, s390_vlvgg_dbl, 0, O3_ELEM, BT_OV_V2DF_DBL_V2DF_INT) /* vlvgg */
410
411 B_DEF (s390_vlvgb, vec_insertv16qi, 0, B_VX, O3_ELEM, BT_FN_UV16QI_UV16QI_UCHAR_INT)
412 B_DEF (s390_vlvgh, vec_insertv8hi, 0, B_VX, O3_ELEM, BT_FN_UV8HI_UV8HI_USHORT_INT)
413 B_DEF (s390_vlvgf, vec_insertv4si, 0, B_VX, O3_ELEM, BT_FN_UV4SI_UV4SI_UINT_INT)
414 B_DEF (s390_vlvgg, vec_insertv2di, 0, B_VX, O3_ELEM, BT_FN_UV2DI_UV2DI_ULONGLONG_INT)
415 B_DEF (s390_vlvgf_flt, vec_insertv4sf, 0, B_INT | B_VXE, O3_ELEM, BT_FN_V4SF_V4SF_FLT_INT)
416 B_DEF (s390_vlvgg_dbl, vec_insertv2df, 0, B_INT | B_VX, O3_ELEM, BT_FN_V2DF_V2DF_DBL_INT)
417
418 OB_DEF (s390_vec_promote, s390_vec_promote_s8,s390_vec_promote_dbl,B_VX, BT_FN_OV4SI_INT_INT)
419 OB_DEF_VAR (s390_vec_promote_s8, s390_vlvgb_noin, 0, O2_ELEM, BT_OV_V16QI_SCHAR_INT) /* vlvgb */
420 OB_DEF_VAR (s390_vec_promote_u8, s390_vlvgb_noin, 0, O2_ELEM, BT_OV_UV16QI_UCHAR_INT) /* vlvgb */
421 OB_DEF_VAR (s390_vec_promote_s16, s390_vlvgh_noin, 0, O2_ELEM, BT_OV_V8HI_SHORT_INT) /* vlvgh */
422 OB_DEF_VAR (s390_vec_promote_u16, s390_vlvgh_noin, 0, O2_ELEM, BT_OV_UV8HI_USHORT_INT) /* vlvgh */
423 OB_DEF_VAR (s390_vec_promote_s32, s390_vlvgf_noin, 0, O2_ELEM, BT_OV_V4SI_INT_INT) /* vlvgf */
424 OB_DEF_VAR (s390_vec_promote_u32, s390_vlvgf_noin, 0, O2_ELEM, BT_OV_UV4SI_UINT_INT) /* vlvgf */
425 OB_DEF_VAR (s390_vec_promote_s64, s390_vlvgg_noin, 0, O2_ELEM, BT_OV_V2DI_LONGLONG_INT) /* vlvgg */
426 OB_DEF_VAR (s390_vec_promote_u64, s390_vlvgg_noin, 0, O2_ELEM, BT_OV_UV2DI_ULONGLONG_INT) /* vlvgg */
427 OB_DEF_VAR (s390_vec_promote_flt, s390_vlvgf_flt_noin,B_VXE, O2_ELEM, BT_OV_V4SF_FLT_INT) /* vlvgf */
428 OB_DEF_VAR (s390_vec_promote_dbl, s390_vlvgg_dbl_noin,0, O2_ELEM, BT_OV_V2DF_DBL_INT) /* vlvgg */
429
430 B_DEF (s390_vlvgb_noin, vec_promotev16qi, 0, B_INT | B_VX, 0, BT_FN_UV16QI_UCHAR_INT)
431 B_DEF (s390_vlvgh_noin, vec_promotev8hi, 0, B_INT | B_VX, 0, BT_FN_UV8HI_USHORT_INT)
432 B_DEF (s390_vlvgf_noin, vec_promotev4si, 0, B_INT | B_VX, 0, BT_FN_UV4SI_UINT_INT)
433 B_DEF (s390_vlvgg_noin, vec_promotev2di, 0, B_INT | B_VX, 0, BT_FN_UV2DI_ULONGLONG_INT)
434 B_DEF (s390_vlvgf_flt_noin, vec_promotev4sf, 0, B_INT | B_VXE, 0, BT_FN_V4SF_FLT_INT)
435 B_DEF (s390_vlvgg_dbl_noin, vec_promotev2df, 0, B_INT | B_VX, 0, BT_FN_V2DF_DBL_INT)
436
437 OB_DEF (s390_vec_extract, s390_vec_extract_s8,s390_vec_extract_dbl,B_VX, BT_FN_INT_OV4SI_INT)
438 OB_DEF_VAR (s390_vec_extract_s8, s390_vlgvb, 0, O2_ELEM, BT_OV_SCHAR_V16QI_INT)
439 OB_DEF_VAR (s390_vec_extract_u8, s390_vlgvb, 0, O2_ELEM, BT_OV_UCHAR_UV16QI_INT)
440 OB_DEF_VAR (s390_vec_extract_b8, s390_vlgvb, 0, O2_ELEM, BT_OV_UCHAR_BV16QI_INT)
441 OB_DEF_VAR (s390_vec_extract_s16, s390_vlgvh, 0, O2_ELEM, BT_OV_SHORT_V8HI_INT)
442 OB_DEF_VAR (s390_vec_extract_u16, s390_vlgvh, 0, O2_ELEM, BT_OV_USHORT_UV8HI_INT)
443 OB_DEF_VAR (s390_vec_extract_b16, s390_vlgvh, 0, O2_ELEM, BT_OV_USHORT_BV8HI_INT)
444 OB_DEF_VAR (s390_vec_extract_s32, s390_vlgvf, 0, O2_ELEM, BT_OV_INT_V4SI_INT)
445 OB_DEF_VAR (s390_vec_extract_u32, s390_vlgvf, 0, O2_ELEM, BT_OV_UINT_UV4SI_INT)
446 OB_DEF_VAR (s390_vec_extract_b32, s390_vlgvf, 0, O2_ELEM, BT_OV_UINT_BV4SI_INT)
447 OB_DEF_VAR (s390_vec_extract_flt, s390_vlgvf_flt, B_VXE, O2_ELEM, BT_OV_FLT_V4SF_INT)
448 OB_DEF_VAR (s390_vec_extract_s64, s390_vlgvg, 0, O2_ELEM, BT_OV_LONGLONG_V2DI_INT)
449 OB_DEF_VAR (s390_vec_extract_u64, s390_vlgvg, 0, O2_ELEM, BT_OV_ULONGLONG_UV2DI_INT)
450 OB_DEF_VAR (s390_vec_extract_b64, s390_vlgvg, 0, O2_ELEM, BT_OV_ULONGLONG_BV2DI_INT)
451 OB_DEF_VAR (s390_vec_extract_dbl, s390_vlgvg_dbl, 0, O2_ELEM, BT_OV_DBL_V2DF_INT) /* vlgvg */
452
453 B_DEF (s390_vlgvb, vec_extractv16qiqi, 0, B_VX, O2_ELEM, BT_FN_UCHAR_UV16QI_INT)
454 B_DEF (s390_vlgvh, vec_extractv8hihi, 0, B_VX, O2_ELEM, BT_FN_USHORT_UV8HI_INT)
455 B_DEF (s390_vlgvf, vec_extractv4sisi, 0, B_VX, O2_ELEM, BT_FN_UINT_UV4SI_INT)
456 B_DEF (s390_vlgvf_flt, vec_extractv4sfsf, 0, B_INT | B_VXE, O2_ELEM, BT_FN_FLT_V4SF_INT)
457 B_DEF (s390_vlgvg, vec_extractv2didi, 0, B_VX, O2_ELEM, BT_FN_ULONGLONG_UV2DI_INT)
458 B_DEF (s390_vlgvg_dbl, vec_extractv2dfdf, 0, B_INT | B_VX, O2_ELEM, BT_FN_DBL_V2DF_INT)
459
460 OB_DEF (s390_vec_insert_and_zero, s390_vec_insert_and_zero_s8,s390_vec_insert_and_zero_dbl,B_VX,BT_FN_OV4SI_INTCONSTPTR)
461 OB_DEF_VAR (s390_vec_insert_and_zero_s8,s390_vllezb, 0, 0, BT_OV_V16QI_SCHARCONSTPTR)
462 OB_DEF_VAR (s390_vec_insert_and_zero_u8,s390_vllezb, 0, 0, BT_OV_UV16QI_UCHARCONSTPTR)
463 OB_DEF_VAR (s390_vec_insert_and_zero_s16,s390_vllezh, 0, 0, BT_OV_V8HI_SHORTCONSTPTR)
464 OB_DEF_VAR (s390_vec_insert_and_zero_u16,s390_vllezh, 0, 0, BT_OV_UV8HI_USHORTCONSTPTR)
465 OB_DEF_VAR (s390_vec_insert_and_zero_s32,s390_vllezf, 0, 0, BT_OV_V4SI_INTCONSTPTR)
466 OB_DEF_VAR (s390_vec_insert_and_zero_u32,s390_vllezf, 0, 0, BT_OV_UV4SI_UINTCONSTPTR)
467 OB_DEF_VAR (s390_vec_insert_and_zero_flt,s390_vllezf_flt, B_VXE, 0, BT_OV_V4SF_FLTCONSTPTR)
468 OB_DEF_VAR (s390_vec_insert_and_zero_s64,s390_vllezg, 0, 0, BT_OV_V2DI_LONGLONGCONSTPTR)
469 OB_DEF_VAR (s390_vec_insert_and_zero_u64,s390_vllezg, 0, 0, BT_OV_UV2DI_ULONGLONGCONSTPTR)
470 OB_DEF_VAR (s390_vec_insert_and_zero_dbl,s390_vllezg_dbl, 0, 0, BT_OV_V2DF_DBLCONSTPTR)
471
472 B_DEF (s390_vllezb, vec_insert_and_zerov16qi,0, B_VX, 0, BT_FN_UV16QI_UCHARCONSTPTR)
473 B_DEF (s390_vllezh, vec_insert_and_zerov8hi,0, B_VX, 0, BT_FN_UV8HI_USHORTCONSTPTR)
474 B_DEF (s390_vllezf, vec_insert_and_zerov4si,0, B_VX, 0, BT_FN_UV4SI_UINTCONSTPTR)
475 B_DEF (s390_vllezf_flt, vec_insert_and_zerov4sf,0, B_INT | B_VXE, 0, BT_FN_V4SF_FLTCONSTPTR)
476 B_DEF (s390_vllezg, vec_insert_and_zerov2di,0, B_VX, 0, BT_FN_UV2DI_ULONGLONGCONSTPTR)
477 B_DEF (s390_vllezg_dbl, vec_insert_and_zerov2df,0, B_INT | B_VX, 0, BT_FN_V2DF_DBLCONSTPTR)
478
479 /* The 2nd operand will by translated in s390-c.c from 64, 128, 256, ... to 0, 1, 2, ... */
480 OB_DEF (s390_vec_load_bndry, s390_vec_load_bndry_s8,s390_vec_load_bndry_dbl,B_VX, BT_FN_OV4SI_INTCONSTPTR_INT)
481 OB_DEF_VAR (s390_vec_load_bndry_s8, s390_vlbb, 0, O2_U16, BT_OV_V16QI_SCHARCONSTPTR_USHORT)
482 OB_DEF_VAR (s390_vec_load_bndry_u8, s390_vlbb, 0, O2_U16, BT_OV_UV16QI_UCHARCONSTPTR_USHORT)
483 OB_DEF_VAR (s390_vec_load_bndry_s16, s390_vlbb, 0, O2_U16, BT_OV_V8HI_SHORTCONSTPTR_USHORT)
484 OB_DEF_VAR (s390_vec_load_bndry_u16, s390_vlbb, 0, O2_U16, BT_OV_UV8HI_USHORTCONSTPTR_USHORT)
485 OB_DEF_VAR (s390_vec_load_bndry_s32, s390_vlbb, 0, O2_U16, BT_OV_V4SI_INTCONSTPTR_USHORT)
486 OB_DEF_VAR (s390_vec_load_bndry_u32, s390_vlbb, 0, O2_U16, BT_OV_UV4SI_UINTCONSTPTR_USHORT)
487 OB_DEF_VAR (s390_vec_load_bndry_s64, s390_vlbb, 0, O2_U16, BT_OV_V2DI_LONGLONGCONSTPTR_USHORT)
488 OB_DEF_VAR (s390_vec_load_bndry_u64, s390_vlbb, 0, O2_U16, BT_OV_UV2DI_ULONGLONGCONSTPTR_USHORT)
489 OB_DEF_VAR (s390_vec_load_bndry_flt, s390_vlbb, B_VXE, O2_U16, BT_OV_V4SF_FLTCONSTPTR_USHORT)
490 OB_DEF_VAR (s390_vec_load_bndry_dbl, s390_vlbb, 0, O2_U16, BT_OV_V2DF_DBLCONSTPTR_USHORT)
491
492 B_DEF (s390_vlbb, vlbb, 0, B_VX, O2_U3, BT_FN_UV16QI_UCHARCONSTPTR_USHORT)
493
494 OB_DEF (s390_vec_load_pair, s390_vec_load_pair_s64,s390_vec_load_pair_u64,B_VX, BT_FN_OV2DI_LONGLONG_LONGLONG)
495 OB_DEF_VAR (s390_vec_load_pair_s64, MAX, 0, 0, BT_OV_V2DI_LONGLONG_LONGLONG) /* vlvgp */
496 OB_DEF_VAR (s390_vec_load_pair_u64, MAX, 0, 0, BT_OV_UV2DI_ULONGLONG_ULONGLONG) /* vlvgp */
497
498 /* First two operands are swapped in s390-c.c */
499 OB_DEF (s390_vec_load_len, s390_vec_load_len_s8,s390_vec_load_len_dbl,B_VX, BT_FN_OV4SI_INTCONSTPTR_UINT)
500 OB_DEF_VAR (s390_vec_load_len_s8, s390_vll, 0, 0, BT_OV_V16QI_SCHARCONSTPTR_UINT)
501 OB_DEF_VAR (s390_vec_load_len_u8, s390_vll, 0, 0, BT_OV_UV16QI_UCHARCONSTPTR_UINT)
502 OB_DEF_VAR (s390_vec_load_len_s16, s390_vll, 0, 0, BT_OV_V8HI_SHORTCONSTPTR_UINT)
503 OB_DEF_VAR (s390_vec_load_len_u16, s390_vll, 0, 0, BT_OV_UV8HI_USHORTCONSTPTR_UINT)
504 OB_DEF_VAR (s390_vec_load_len_s32, s390_vll, 0, 0, BT_OV_V4SI_INTCONSTPTR_UINT)
505 OB_DEF_VAR (s390_vec_load_len_u32, s390_vll, 0, 0, BT_OV_UV4SI_UINTCONSTPTR_UINT)
506 OB_DEF_VAR (s390_vec_load_len_s64, s390_vll, 0, 0, BT_OV_V2DI_LONGLONGCONSTPTR_UINT)
507 OB_DEF_VAR (s390_vec_load_len_u64, s390_vll, 0, 0, BT_OV_UV2DI_ULONGLONGCONSTPTR_UINT)
508 OB_DEF_VAR (s390_vec_load_len_flt, s390_vll, B_VXE, 0, BT_OV_V4SF_FLTCONSTPTR_UINT)
509 OB_DEF_VAR (s390_vec_load_len_dbl, s390_vll, 0, 0, BT_OV_V2DF_DBLCONSTPTR_UINT)
510
511 B_DEF (s390_vll, vllv16qi, 0, B_VX, 0, BT_FN_V16QI_UINT_VOIDCONSTPTR)
512 B_DEF (s390_vlrlr, vlrlrv16qi, 0, B_VXE, 0, BT_FN_V16QI_UINT_VOIDCONSTPTR)
513
514 OB_DEF (s390_vec_mergeh, s390_vec_mergeh_s8, s390_vec_mergeh_dbl,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
515 OB_DEF_VAR (s390_vec_mergeh_s8, s390_vmrhb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
516 OB_DEF_VAR (s390_vec_mergeh_u8, s390_vmrhb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
517 OB_DEF_VAR (s390_vec_mergeh_b8, s390_vmrhb, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
518 OB_DEF_VAR (s390_vec_mergeh_s16, s390_vmrhh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
519 OB_DEF_VAR (s390_vec_mergeh_u16, s390_vmrhh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
520 OB_DEF_VAR (s390_vec_mergeh_b16, s390_vmrhh, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
521 OB_DEF_VAR (s390_vec_mergeh_s32, s390_vmrhf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
522 OB_DEF_VAR (s390_vec_mergeh_u32, s390_vmrhf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
523 OB_DEF_VAR (s390_vec_mergeh_b32, s390_vmrhf, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
524 OB_DEF_VAR (s390_vec_mergeh_s64, s390_vmrhg, 0, 0, BT_OV_V2DI_V2DI_V2DI)
525 OB_DEF_VAR (s390_vec_mergeh_u64, s390_vmrhg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
526 OB_DEF_VAR (s390_vec_mergeh_b64, s390_vmrhg, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
527 OB_DEF_VAR (s390_vec_mergeh_flt, s390_vmrhf_flt, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
528 OB_DEF_VAR (s390_vec_mergeh_dbl, s390_vmrhg_dbl, 0, 0, BT_OV_V2DF_V2DF_V2DF)
529
530 B_DEF (s390_vmrhb, vec_mergehv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
531 B_DEF (s390_vmrhh, vec_mergehv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
532 B_DEF (s390_vmrhf, vec_mergehv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
533 B_DEF (s390_vmrhf_flt, vec_mergehv4sf, 0, B_INT | B_VX, 0, BT_FN_V4SF_V4SF_V4SF)
534 B_DEF (s390_vmrhg, vec_mergehv2di, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
535 B_DEF (s390_vmrhg_dbl, vec_mergehv2df, 0, B_INT | B_VX, 0, BT_FN_V2DF_V2DF_V2DF)
536
537 OB_DEF (s390_vec_mergel, s390_vec_mergel_s8, s390_vec_mergel_dbl,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
538 OB_DEF_VAR (s390_vec_mergel_s8, s390_vmrlb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
539 OB_DEF_VAR (s390_vec_mergel_u8, s390_vmrlb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
540 OB_DEF_VAR (s390_vec_mergel_b8, s390_vmrlb, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
541 OB_DEF_VAR (s390_vec_mergel_s16, s390_vmrlh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
542 OB_DEF_VAR (s390_vec_mergel_u16, s390_vmrlh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
543 OB_DEF_VAR (s390_vec_mergel_b16, s390_vmrlh, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
544 OB_DEF_VAR (s390_vec_mergel_s32, s390_vmrlf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
545 OB_DEF_VAR (s390_vec_mergel_u32, s390_vmrlf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
546 OB_DEF_VAR (s390_vec_mergel_b32, s390_vmrlf, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
547 OB_DEF_VAR (s390_vec_mergel_s64, s390_vmrlg, 0, 0, BT_OV_V2DI_V2DI_V2DI)
548 OB_DEF_VAR (s390_vec_mergel_u64, s390_vmrlg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
549 OB_DEF_VAR (s390_vec_mergel_b64, s390_vmrlg, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
550 OB_DEF_VAR (s390_vec_mergel_flt, s390_vmrlf_flt, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
551 OB_DEF_VAR (s390_vec_mergel_dbl, s390_vmrlg_dbl, 0, 0, BT_OV_V2DF_V2DF_V2DF)
552
553 B_DEF (s390_vmrlb, vec_mergelv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
554 B_DEF (s390_vmrlh, vec_mergelv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
555 B_DEF (s390_vmrlf, vec_mergelv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
556 B_DEF (s390_vmrlf_flt, vec_mergelv4sf, 0, B_INT | B_VXE, 0, BT_FN_V4SF_V4SF_V4SF)
557 B_DEF (s390_vmrlg, vec_mergelv2di, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
558 B_DEF (s390_vmrlg_dbl, vec_mergelv2df, 0, B_INT | B_VX, 0, BT_FN_V2DF_V2DF_V2DF)
559
560 OB_DEF (s390_vec_pack, s390_vec_pack_s16, s390_vec_pack_b64, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
561 OB_DEF_VAR (s390_vec_pack_s16, s390_vpkh, 0, 0, BT_OV_V16QI_V8HI_V8HI)
562 OB_DEF_VAR (s390_vec_pack_u16, s390_vpkh, 0, 0, BT_OV_UV16QI_UV8HI_UV8HI)
563 OB_DEF_VAR (s390_vec_pack_b16, s390_vpkh, 0, 0, BT_OV_BV16QI_BV8HI_BV8HI)
564 OB_DEF_VAR (s390_vec_pack_s32, s390_vpkf, 0, 0, BT_OV_V8HI_V4SI_V4SI)
565 OB_DEF_VAR (s390_vec_pack_u32, s390_vpkf, 0, 0, BT_OV_UV8HI_UV4SI_UV4SI)
566 OB_DEF_VAR (s390_vec_pack_b32, s390_vpkf, 0, 0, BT_OV_BV8HI_BV4SI_BV4SI)
567 OB_DEF_VAR (s390_vec_pack_s64, s390_vpkg, 0, 0, BT_OV_V4SI_V2DI_V2DI)
568 OB_DEF_VAR (s390_vec_pack_u64, s390_vpkg, 0, 0, BT_OV_UV4SI_UV2DI_UV2DI)
569 OB_DEF_VAR (s390_vec_pack_b64, s390_vpkg, 0, 0, BT_OV_BV4SI_BV2DI_BV2DI)
570
571 B_DEF (s390_vpkh, vec_packv8hi, 0, B_VX, 0, BT_FN_UV16QI_UV8HI_UV8HI)
572 B_DEF (s390_vpkf, vec_packv4si, 0, B_VX, 0, BT_FN_UV8HI_UV4SI_UV4SI)
573 B_DEF (s390_vpkg, vec_packv2di, 0, B_VX, 0, BT_FN_UV4SI_UV2DI_UV2DI)
574
575 OB_DEF (s390_vec_packs, s390_vec_packs_s16, s390_vec_packs_u64, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
576 OB_DEF_VAR (s390_vec_packs_s16, s390_vpksh, 0, 0, BT_OV_V16QI_V8HI_V8HI)
577 OB_DEF_VAR (s390_vec_packs_u16, s390_vpklsh, 0, 0, BT_OV_UV16QI_UV8HI_UV8HI)
578 OB_DEF_VAR (s390_vec_packs_s32, s390_vpksf, 0, 0, BT_OV_V8HI_V4SI_V4SI)
579 OB_DEF_VAR (s390_vec_packs_u32, s390_vpklsf, 0, 0, BT_OV_UV8HI_UV4SI_UV4SI)
580 OB_DEF_VAR (s390_vec_packs_s64, s390_vpksg, 0, 0, BT_OV_V4SI_V2DI_V2DI)
581 OB_DEF_VAR (s390_vec_packs_u64, s390_vpklsg, 0, 0, BT_OV_UV4SI_UV2DI_UV2DI)
582
583 B_DEF (s390_vpksh, vec_packsv8hi, 0, B_VX, 0, BT_FN_V16QI_V8HI_V8HI)
584 B_DEF (s390_vpklsh, vec_packsuv8hi, 0, B_VX, 0, BT_FN_UV16QI_UV8HI_UV8HI)
585 B_DEF (s390_vpksf, vec_packsv4si, 0, B_VX, 0, BT_FN_V8HI_V4SI_V4SI)
586 B_DEF (s390_vpklsf, vec_packsuv4si, 0, B_VX, 0, BT_FN_UV8HI_UV4SI_UV4SI)
587 B_DEF (s390_vpksg, vec_packsv2di, 0, B_VX, 0, BT_FN_V4SI_V2DI_V2DI)
588 B_DEF (s390_vpklsg, vec_packsuv2di, 0, B_VX, 0, BT_FN_UV4SI_UV2DI_UV2DI)
589
590 OB_DEF (s390_vec_packs_cc, s390_vec_packs_cc_s16,s390_vec_packs_cc_u64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
591 OB_DEF_VAR (s390_vec_packs_cc_s16, s390_vpkshs, 0, 0, BT_OV_V16QI_V8HI_V8HI_INTPTR)
592 OB_DEF_VAR (s390_vec_packs_cc_u16, s390_vpklshs, 0, 0, BT_OV_UV16QI_UV8HI_UV8HI_INTPTR)
593 OB_DEF_VAR (s390_vec_packs_cc_s32, s390_vpksfs, 0, 0, BT_OV_V8HI_V4SI_V4SI_INTPTR)
594 OB_DEF_VAR (s390_vec_packs_cc_u32, s390_vpklsfs, 0, 0, BT_OV_UV8HI_UV4SI_UV4SI_INTPTR)
595 OB_DEF_VAR (s390_vec_packs_cc_s64, s390_vpksgs, 0, 0, BT_OV_V4SI_V2DI_V2DI_INTPTR)
596 OB_DEF_VAR (s390_vec_packs_cc_u64, s390_vpklsgs, 0, 0, BT_OV_UV4SI_UV2DI_UV2DI_INTPTR)
597
598 B_DEF (s390_vpkshs, vec_packs_ccv8hi, 0, B_VX, 0, BT_FN_V16QI_V8HI_V8HI_INTPTR)
599 B_DEF (s390_vpklshs, vec_packsu_ccv8hi, 0, B_VX, 0, BT_FN_UV16QI_UV8HI_UV8HI_INTPTR)
600 B_DEF (s390_vpksfs, vec_packs_ccv4si, 0, B_VX, 0, BT_FN_V8HI_V4SI_V4SI_INTPTR)
601 B_DEF (s390_vpklsfs, vec_packsu_ccv4si, 0, B_VX, 0, BT_FN_UV8HI_UV4SI_UV4SI_INTPTR)
602 B_DEF (s390_vpksgs, vec_packs_ccv2di, 0, B_VX, 0, BT_FN_V4SI_V2DI_V2DI_INTPTR)
603 B_DEF (s390_vpklsgs, vec_packsu_ccv2di, 0, B_VX, 0, BT_FN_UV4SI_UV2DI_UV2DI_INTPTR)
604
605 OB_DEF (s390_vec_packsu, s390_vec_packsu_s16,s390_vec_packsu_u64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
606 OB_DEF_VAR (s390_vec_packsu_s16, s390_vec_packsu_u16,0, 0, BT_OV_UV16QI_V8HI_V8HI) /* vpklsh */
607 OB_DEF_VAR (s390_vec_packsu_u16, s390_vpklsh, 0, 0, BT_OV_UV16QI_UV8HI_UV8HI)
608 OB_DEF_VAR (s390_vec_packsu_s32, s390_vec_packsu_u32,0, 0, BT_OV_UV8HI_V4SI_V4SI) /* vpklsf */
609 OB_DEF_VAR (s390_vec_packsu_u32, s390_vpklsf, 0, 0, BT_OV_UV8HI_UV4SI_UV4SI)
610 OB_DEF_VAR (s390_vec_packsu_s64, s390_vec_packsu_u64,0, 0, BT_OV_UV4SI_V2DI_V2DI) /* vpklsg */
611 OB_DEF_VAR (s390_vec_packsu_u64, s390_vpklsg, 0, 0, BT_OV_UV4SI_UV2DI_UV2DI)
612
613 B_DEF (s390_vec_packsu_u16, vec_packsu_uv8hi, 0, B_INT | B_VX, 0, BT_FN_UV16QI_UV8HI_UV8HI) /* vpklsh */
614 B_DEF (s390_vec_packsu_u32, vec_packsu_uv4si, 0, B_INT | B_VX, 0, BT_FN_UV8HI_UV4SI_UV4SI) /* vpklsf */
615 B_DEF (s390_vec_packsu_u64, vec_packsu_uv2di, 0, B_INT | B_VX, 0, BT_FN_UV4SI_UV2DI_UV2DI) /* vpklsg */
616
617 OB_DEF (s390_vec_packsu_cc, s390_vec_packsu_cc_u16,s390_vec_packsu_cc_u64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
618 OB_DEF_VAR (s390_vec_packsu_cc_u16, s390_vpklshs, 0, 0, BT_OV_UV16QI_UV8HI_UV8HI_INTPTR)
619 OB_DEF_VAR (s390_vec_packsu_cc_u32, s390_vpklsfs, 0, 0, BT_OV_UV8HI_UV4SI_UV4SI_INTPTR)
620 OB_DEF_VAR (s390_vec_packsu_cc_u64, s390_vpklsgs, 0, 0, BT_OV_UV4SI_UV2DI_UV2DI_INTPTR)
621
622 OB_DEF (s390_vec_perm, s390_vec_perm_s8, s390_vec_perm_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
623 OB_DEF_VAR (s390_vec_perm_s8, s390_vperm, 0, 0, BT_OV_V16QI_V16QI_V16QI_UV16QI)
624 OB_DEF_VAR (s390_vec_perm_b8, s390_vperm, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI_UV16QI)
625 OB_DEF_VAR (s390_vec_perm_u8, s390_vperm, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
626 OB_DEF_VAR (s390_vec_perm_s16, s390_vperm, 0, 0, BT_OV_V8HI_V8HI_V8HI_UV16QI)
627 OB_DEF_VAR (s390_vec_perm_b16, s390_vperm, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI_UV16QI)
628 OB_DEF_VAR (s390_vec_perm_u16, s390_vperm, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV16QI)
629 OB_DEF_VAR (s390_vec_perm_s32, s390_vperm, 0, 0, BT_OV_V4SI_V4SI_V4SI_UV16QI)
630 OB_DEF_VAR (s390_vec_perm_b32, s390_vperm, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI_UV16QI)
631 OB_DEF_VAR (s390_vec_perm_u32, s390_vperm, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV16QI)
632 OB_DEF_VAR (s390_vec_perm_s64, s390_vperm, 0, 0, BT_OV_V2DI_V2DI_V2DI_UV16QI)
633 OB_DEF_VAR (s390_vec_perm_b64, s390_vperm, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI_UV16QI)
634 OB_DEF_VAR (s390_vec_perm_u64, s390_vperm, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI_UV16QI)
635 OB_DEF_VAR (s390_vec_perm_flt, s390_vperm, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF_UV16QI)
636 OB_DEF_VAR (s390_vec_perm_dbl, s390_vperm, 0, 0, BT_OV_V2DF_V2DF_V2DF_UV16QI)
637
638 B_DEF (s390_vperm, vec_permv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
639
640 OB_DEF (s390_vec_permi, s390_vec_permi_s64, s390_vec_permi_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_INT)
641 OB_DEF_VAR (s390_vec_permi_s64, s390_vpdi, 0, O3_U2, BT_OV_V2DI_V2DI_V2DI_INT)
642 OB_DEF_VAR (s390_vec_permi_b64, s390_vpdi, 0, O3_U2, BT_OV_BV2DI_BV2DI_BV2DI_INT)
643 OB_DEF_VAR (s390_vec_permi_u64, s390_vpdi, 0, O3_U2, BT_OV_UV2DI_UV2DI_UV2DI_INT)
644 OB_DEF_VAR (s390_vec_permi_dbl, s390_vpdi, 0, O3_U2, BT_OV_V2DF_V2DF_V2DF_INT)
645
646 B_DEF (s390_vpdi, vec_permiv2di, 0, B_VX, O3_U2, BT_FN_UV2DI_UV2DI_UV2DI_INT)
647
648 OB_DEF (s390_vec_splat, s390_vec_splat2_s8, s390_vec_splat2_dbl,B_VX, BT_FN_OV4SI_OV4SI_UCHAR)
649 OB_DEF_VAR (s390_vec_splat2_s8, s390_vrepb, 0, O2_U4, BT_OV_V16QI_V16QI_UCHAR)
650 OB_DEF_VAR (s390_vec_splat2_b8, s390_vrepb, 0, O2_U4, BT_OV_BV16QI_BV16QI_UCHAR)
651 OB_DEF_VAR (s390_vec_splat2_u8, s390_vrepb, 0, O2_U4, BT_OV_UV16QI_UV16QI_UCHAR)
652 OB_DEF_VAR (s390_vec_splat2_s16, s390_vreph, 0, O2_U3, BT_OV_V8HI_V8HI_UCHAR)
653 OB_DEF_VAR (s390_vec_splat2_b16, s390_vreph, 0, O2_U3, BT_OV_BV8HI_BV8HI_UCHAR)
654 OB_DEF_VAR (s390_vec_splat2_u16, s390_vreph, 0, O2_U3, BT_OV_UV8HI_UV8HI_UCHAR)
655 OB_DEF_VAR (s390_vec_splat2_s32, s390_vrepf, 0, O2_U2, BT_OV_V4SI_V4SI_UCHAR)
656 OB_DEF_VAR (s390_vec_splat2_b32, s390_vrepf, 0, O2_U2, BT_OV_BV4SI_BV4SI_UCHAR)
657 OB_DEF_VAR (s390_vec_splat2_u32, s390_vrepf, 0, O2_U2, BT_OV_UV4SI_UV4SI_UCHAR)
658 OB_DEF_VAR (s390_vec_splat2_s64, s390_vrepg, 0, O2_U1, BT_OV_V2DI_V2DI_UCHAR)
659 OB_DEF_VAR (s390_vec_splat2_b64, s390_vrepg, 0, O2_U1, BT_OV_BV2DI_BV2DI_UCHAR)
660 OB_DEF_VAR (s390_vec_splat2_u64, s390_vrepg, 0, O2_U1, BT_OV_UV2DI_UV2DI_UCHAR)
661 OB_DEF_VAR (s390_vec_splat2_flt, s390_vrepf_flt, B_VXE, O2_U2, BT_OV_V4SF_V4SF_UCHAR) /* vrepf */
662 OB_DEF_VAR (s390_vec_splat2_dbl, s390_vrepg_dbl, 0, O2_U1, BT_OV_V2DF_V2DF_UCHAR) /* vrepg */
663
664 B_DEF (s390_vrepb, vec_splatv16qi, 0, B_VX, O2_U4, BT_FN_UV16QI_UV16QI_UCHAR)
665 B_DEF (s390_vreph, vec_splatv8hi, 0, B_VX, O2_U3, BT_FN_UV8HI_UV8HI_UCHAR)
666 B_DEF (s390_vrepf, vec_splatv4si, 0, B_VX, O2_U2, BT_FN_UV4SI_UV4SI_UCHAR)
667 B_DEF (s390_vrepf_flt, vec_splatv4sf, 0, B_INT | B_VXE, O2_U2, BT_FN_V4SF_V4SF_UCHAR)
668 B_DEF (s390_vrepg, vec_splatv2di, 0, B_VX, O2_U1, BT_FN_UV2DI_UV2DI_UCHAR)
669 B_DEF (s390_vrepg_dbl, vec_splatv2df, 0, B_INT | B_VX, O2_U1, BT_FN_V2DF_V2DF_UCHAR)
670
671 OB_DEF (s390_vec_scatter_element, s390_vec_scatter_element_s32,s390_vec_scatter_element_dbl,B_VX,BT_FN_VOID_V4SI_V4SI_INTPTR_ULONGLONG)
672 OB_DEF_VAR (s390_vec_scatter_element_s32,s390_vscef, 0, O4_U2, BT_OV_VOID_V4SI_UV4SI_INTPTR_ULONGLONG)
673 OB_DEF_VAR (s390_vec_scatter_element_b32,s390_vscef, 0, O4_U2, BT_OV_VOID_BV4SI_UV4SI_UINTPTR_ULONGLONG)
674 OB_DEF_VAR (s390_vec_scatter_element_u32,s390_vscef, 0, O4_U2, BT_OV_VOID_UV4SI_UV4SI_UINTPTR_ULONGLONG)
675 OB_DEF_VAR (s390_vec_scatter_element_s64,s390_vsceg, 0, O4_U1, BT_OV_VOID_V2DI_UV2DI_LONGLONGPTR_ULONGLONG)
676 OB_DEF_VAR (s390_vec_scatter_element_b64,s390_vsceg, 0, O4_U1, BT_OV_VOID_BV2DI_UV2DI_ULONGLONGPTR_ULONGLONG)
677 OB_DEF_VAR (s390_vec_scatter_element_u64,s390_vsceg, 0, O4_U1, BT_OV_VOID_UV2DI_UV2DI_ULONGLONGPTR_ULONGLONG)
678 OB_DEF_VAR (s390_vec_scatter_element_flt,s390_vscef, B_VXE, O4_U2, BT_OV_VOID_V4SF_V4SF_FLTPTR_ULONGLONG)
679 OB_DEF_VAR (s390_vec_scatter_element_dbl,s390_vsceg, 0, O4_U1, BT_OV_VOID_V2DF_UV2DI_DBLPTR_ULONGLONG)
680
681 B_DEF (s390_vscef, vec_scatter_elementv4si,0, B_VX, O4_U2, BT_FN_VOID_UV4SI_UV4SI_UINTPTR_ULONGLONG)
682 B_DEF (s390_vsceg, vec_scatter_elementv2di,0, B_VX, O4_U1, BT_FN_VOID_UV2DI_UV2DI_ULONGLONGPTR_ULONGLONG)
683
684 /* First two operands are swapped in s390-c.c */
685 OB_DEF (s390_vec_sel, s390_vec_sel_b8_a, s390_vec_sel_dbl_b, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
686 OB_DEF_VAR (s390_vec_sel_b8_a, s390_vsel, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI_UV16QI)
687 OB_DEF_VAR (s390_vec_sel_b8_b, s390_vsel, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI_BV16QI)
688 OB_DEF_VAR (s390_vec_sel_s8_a, s390_vsel, 0, 0, BT_OV_V16QI_V16QI_V16QI_UV16QI)
689 OB_DEF_VAR (s390_vec_sel_s8_b, s390_vsel, 0, 0, BT_OV_V16QI_V16QI_V16QI_BV16QI)
690 OB_DEF_VAR (s390_vec_sel_u8_a, s390_vsel, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
691 OB_DEF_VAR (s390_vec_sel_u8_b, s390_vsel, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_BV16QI)
692 OB_DEF_VAR (s390_vec_sel_b16_a, s390_vsel, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI_UV8HI)
693 OB_DEF_VAR (s390_vec_sel_b16_b, s390_vsel, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI_BV8HI)
694 OB_DEF_VAR (s390_vec_sel_s16_a, s390_vsel, 0, 0, BT_OV_V8HI_V8HI_V8HI_UV8HI)
695 OB_DEF_VAR (s390_vec_sel_s16_b, s390_vsel, 0, 0, BT_OV_V8HI_V8HI_V8HI_BV8HI)
696 OB_DEF_VAR (s390_vec_sel_u16_a, s390_vsel, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
697 OB_DEF_VAR (s390_vec_sel_u16_b, s390_vsel, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_BV8HI)
698 OB_DEF_VAR (s390_vec_sel_b32_a, s390_vsel, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI_UV4SI)
699 OB_DEF_VAR (s390_vec_sel_b32_b, s390_vsel, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI_BV4SI)
700 OB_DEF_VAR (s390_vec_sel_s32_a, s390_vsel, 0, 0, BT_OV_V4SI_V4SI_V4SI_UV4SI)
701 OB_DEF_VAR (s390_vec_sel_s32_b, s390_vsel, 0, 0, BT_OV_V4SI_V4SI_V4SI_BV4SI)
702 OB_DEF_VAR (s390_vec_sel_u32_a, s390_vsel, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
703 OB_DEF_VAR (s390_vec_sel_u32_b, s390_vsel, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_BV4SI)
704 OB_DEF_VAR (s390_vec_sel_b64_a, s390_vsel, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI_UV2DI)
705 OB_DEF_VAR (s390_vec_sel_b64_b, s390_vsel, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI_BV2DI)
706 OB_DEF_VAR (s390_vec_sel_s64_a, s390_vsel, 0, 0, BT_OV_V2DI_V2DI_V2DI_UV2DI)
707 OB_DEF_VAR (s390_vec_sel_s64_b, s390_vsel, 0, 0, BT_OV_V2DI_V2DI_V2DI_BV2DI)
708 OB_DEF_VAR (s390_vec_sel_u64_a, s390_vsel, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI_UV2DI)
709 OB_DEF_VAR (s390_vec_sel_u64_b, s390_vsel, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI_BV2DI)
710 OB_DEF_VAR (s390_vec_sel_flt_a, s390_vsel, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF_UV4SI)
711 OB_DEF_VAR (s390_vec_sel_flt_b, s390_vsel, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF_BV4SI)
712 OB_DEF_VAR (s390_vec_sel_dbl_a, s390_vsel, 0, 0, BT_OV_V2DF_V2DF_V2DF_UV2DI)
713 OB_DEF_VAR (s390_vec_sel_dbl_b, s390_vsel, 0, 0, BT_OV_V2DF_V2DF_V2DF_BV2DI)
714
715 B_DEF (s390_vsel, vec_selv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
716
717 OB_DEF (s390_vec_extend_s64, s390_vec_extend_s64_s8,s390_vec_extend_s64_s32,B_VX, BT_FN_OV4SI_OV4SI)
718 OB_DEF_VAR (s390_vec_extend_s64_s8, s390_vsegb, 0, 0, BT_OV_V2DI_V16QI)
719 OB_DEF_VAR (s390_vec_extend_s64_s16, s390_vsegh, 0, 0, BT_OV_V2DI_V8HI)
720 OB_DEF_VAR (s390_vec_extend_s64_s32, s390_vsegf, 0, 0, BT_OV_V2DI_V4SI)
721
722 B_DEF (s390_vsegb, vec_extendv16qi, 0, B_VX, 0, BT_FN_V2DI_V16QI)
723 B_DEF (s390_vsegh, vec_extendv8hi, 0, B_VX, 0, BT_FN_V2DI_V8HI)
724 B_DEF (s390_vsegf, vec_extendv4si, 0, B_VX, 0, BT_FN_V2DI_V4SI)
725
726 OB_DEF (s390_vec_xst, s390_vec_xst_s8, s390_vec_xst_dbl, B_VX, BT_FN_VOID_OV4SI_INT_VOIDPTR)
727 OB_DEF_VAR (s390_vec_xst_s8, MAX, 0, O2_LIT, BT_OV_VOID_V16QI_LONG_SCHARPTR) /* vst */
728 OB_DEF_VAR (s390_vec_xst_u8, MAX, 0, O2_LIT, BT_OV_VOID_UV16QI_LONG_UCHARPTR) /* vst */
729 OB_DEF_VAR (s390_vec_xst_s16, MAX, 0, O2_LIT, BT_OV_VOID_V8HI_LONG_SHORTPTR) /* vst */
730 OB_DEF_VAR (s390_vec_xst_u16, MAX, 0, O2_LIT, BT_OV_VOID_UV8HI_LONG_USHORTPTR) /* vst */
731 OB_DEF_VAR (s390_vec_xst_s32, MAX, 0, O2_LIT, BT_OV_VOID_V4SI_LONG_INTPTR) /* vst */
732 OB_DEF_VAR (s390_vec_xst_u32, MAX, 0, O2_LIT, BT_OV_VOID_UV4SI_LONG_UINTPTR) /* vst */
733 OB_DEF_VAR (s390_vec_xst_s64, MAX, 0, O2_LIT, BT_OV_VOID_V2DI_LONG_LONGLONGPTR) /* vst */
734 OB_DEF_VAR (s390_vec_xst_u64, MAX, 0, O2_LIT, BT_OV_VOID_UV2DI_LONG_ULONGLONGPTR) /* vst */
735 OB_DEF_VAR (s390_vec_xst_flt, MAX, 0, O2_LIT, BT_OV_VOID_V4SF_LONG_FLTPTR) /* vst */
736 OB_DEF_VAR (s390_vec_xst_dbl, MAX, 0, O2_LIT, BT_OV_VOID_V2DF_LONG_DBLPTR) /* vst */
737
738 OB_DEF (s390_vec_xstd2, s390_vec_xstd2_s8, s390_vec_xstd2_dbl, B_DEP | B_VX, BT_FN_VOID_OV4SI_INT_VOIDPTR)
739 OB_DEF_VAR (s390_vec_xstd2_s8, MAX, 0, O2_LIT, BT_OV_VOID_V16QI_LONG_SCHARPTR) /* vst */
740 OB_DEF_VAR (s390_vec_xstd2_u8, MAX, 0, O2_LIT, BT_OV_VOID_UV16QI_LONG_UCHARPTR) /* vst */
741 OB_DEF_VAR (s390_vec_xstd2_s16, MAX, 0, O2_LIT, BT_OV_VOID_V8HI_LONG_SHORTPTR) /* vst */
742 OB_DEF_VAR (s390_vec_xstd2_u16, MAX, 0, O2_LIT, BT_OV_VOID_UV8HI_LONG_USHORTPTR) /* vst */
743 OB_DEF_VAR (s390_vec_xstd2_s32, MAX, 0, O2_LIT, BT_OV_VOID_V4SI_LONG_INTPTR) /* vst */
744 OB_DEF_VAR (s390_vec_xstd2_u32, MAX, 0, O2_LIT, BT_OV_VOID_UV4SI_LONG_UINTPTR) /* vst */
745 OB_DEF_VAR (s390_vec_xstd2_s64, MAX, 0, O2_LIT, BT_OV_VOID_V2DI_LONG_LONGLONGPTR) /* vst */
746 OB_DEF_VAR (s390_vec_xstd2_u64, MAX, 0, O2_LIT, BT_OV_VOID_UV2DI_LONG_ULONGLONGPTR) /* vst */
747 OB_DEF_VAR (s390_vec_xstd2_dbl, MAX, 0, O2_LIT, BT_OV_VOID_V2DF_LONG_DBLPTR) /* vst */
748
749 OB_DEF (s390_vec_xstw4, s390_vec_xstw4_s8, s390_vec_xstw4_u32, B_DEP | B_VX, BT_FN_VOID_OV4SI_INT_VOIDPTR)
750 OB_DEF_VAR (s390_vec_xstw4_s8, MAX, 0, O2_LIT, BT_OV_VOID_V16QI_LONG_SCHARPTR) /* vst */
751 OB_DEF_VAR (s390_vec_xstw4_u8, MAX, 0, O2_LIT, BT_OV_VOID_UV16QI_LONG_UCHARPTR) /* vst */
752 OB_DEF_VAR (s390_vec_xstw4_s16, MAX, 0, O2_LIT, BT_OV_VOID_V8HI_LONG_SHORTPTR) /* vst */
753 OB_DEF_VAR (s390_vec_xstw4_u16, MAX, 0, O2_LIT, BT_OV_VOID_UV8HI_LONG_USHORTPTR) /* vst */
754 OB_DEF_VAR (s390_vec_xstw4_s32, MAX, 0, O2_LIT, BT_OV_VOID_V4SI_LONG_INTPTR) /* vst */
755 OB_DEF_VAR (s390_vec_xstw4_u32, MAX, 0, O2_LIT, BT_OV_VOID_UV4SI_LONG_UINTPTR) /* vst */
756
757 OB_DEF (s390_vec_store_len, s390_vec_store_len_s8,s390_vec_store_len_dbl,B_VX, BT_FN_VOID_OV4SI_VOIDPTR_UINT)
758 OB_DEF_VAR (s390_vec_store_len_s8, s390_vstl, 0, 0, BT_OV_VOID_V16QI_SCHARPTR_UINT)
759 OB_DEF_VAR (s390_vec_store_len_u8, s390_vstl, 0, 0, BT_OV_VOID_UV16QI_UCHARPTR_UINT)
760 OB_DEF_VAR (s390_vec_store_len_s16, s390_vstl, 0, 0, BT_OV_VOID_V8HI_SHORTPTR_UINT)
761 OB_DEF_VAR (s390_vec_store_len_u16, s390_vstl, 0, 0, BT_OV_VOID_UV8HI_USHORTPTR_UINT)
762 OB_DEF_VAR (s390_vec_store_len_s32, s390_vstl, 0, 0, BT_OV_VOID_V4SI_INTPTR_UINT)
763 OB_DEF_VAR (s390_vec_store_len_u32, s390_vstl, 0, 0, BT_OV_VOID_UV4SI_UINTPTR_UINT)
764 OB_DEF_VAR (s390_vec_store_len_s64, s390_vstl, 0, 0, BT_OV_VOID_V2DI_LONGLONGPTR_UINT)
765 OB_DEF_VAR (s390_vec_store_len_u64, s390_vstl, 0, 0, BT_OV_VOID_UV2DI_ULONGLONGPTR_UINT)
766 OB_DEF_VAR (s390_vec_store_len_flt, s390_vstl, B_VXE, 0, BT_OV_VOID_V4SF_FLTPTR_UINT)
767 OB_DEF_VAR (s390_vec_store_len_dbl, s390_vstl, 0, 0, BT_OV_VOID_V2DF_DBLPTR_UINT)
768
769 B_DEF (s390_vstl, vstlv16qi, 0, B_VX, 0, BT_FN_VOID_V16QI_UINT_VOIDPTR)
770 B_DEF (s390_vstrlr, vstrlrv16qi, 0, B_VXE, 0, BT_FN_VOID_V16QI_UINT_VOIDPTR)
771
772 B_DEF (s390_vec_bperm_u128, vbpermv16qi, 0, B_VXE, 0, BT_FN_UV2DI_UV16QI_UV16QI) /* vbperm */
773 B_DEF (s390_vbperm, vbpermv16qi, 0, B_VXE, 0, BT_FN_UV2DI_UV16QI_UV16QI)
774
775 OB_DEF (s390_vec_unpackh, s390_vec_unpackh_s8,s390_vec_unpackh_u32,B_VX, BT_FN_OV4SI_OV4SI)
776 OB_DEF_VAR (s390_vec_unpackh_s8, s390_vuphb, 0, 0, BT_OV_V8HI_V16QI)
777 OB_DEF_VAR (s390_vec_unpackh_b8, s390_vuphb, 0, 0, BT_OV_BV8HI_BV16QI)
778 OB_DEF_VAR (s390_vec_unpackh_u8, s390_vuplhb, 0, 0, BT_OV_UV8HI_UV16QI)
779 OB_DEF_VAR (s390_vec_unpackh_s16, s390_vuphh, 0, 0, BT_OV_V4SI_V8HI)
780 OB_DEF_VAR (s390_vec_unpackh_b16, s390_vuphh, 0, 0, BT_OV_BV4SI_BV8HI)
781 OB_DEF_VAR (s390_vec_unpackh_u16, s390_vuplhh, 0, 0, BT_OV_UV4SI_UV8HI)
782 OB_DEF_VAR (s390_vec_unpackh_s32, s390_vuphf, 0, 0, BT_OV_V2DI_V4SI)
783 OB_DEF_VAR (s390_vec_unpackh_b32, s390_vuphf, 0, 0, BT_OV_BV2DI_BV4SI)
784 OB_DEF_VAR (s390_vec_unpackh_u32, s390_vuplhf, 0, 0, BT_OV_UV2DI_UV4SI)
785
786 B_DEF (s390_vuphb, vec_unpackhv16qi, 0, B_VX, 0, BT_FN_V8HI_V16QI)
787 B_DEF (s390_vuplhb, vec_unpackh_lv16qi, 0, B_VX, 0, BT_FN_UV8HI_UV16QI)
788 B_DEF (s390_vuphh, vec_unpackhv8hi, 0, B_VX, 0, BT_FN_V4SI_V8HI)
789 B_DEF (s390_vuplhh, vec_unpackh_lv8hi, 0, B_VX, 0, BT_FN_UV4SI_UV8HI)
790 B_DEF (s390_vuphf, vec_unpackhv4si, 0, B_VX, 0, BT_FN_V2DI_V4SI)
791 B_DEF (s390_vuplhf, vec_unpackh_lv4si, 0, B_VX, 0, BT_FN_UV2DI_UV4SI)
792
793 OB_DEF (s390_vec_unpackl, s390_vec_unpackl_s8,s390_vec_unpackl_u32,B_VX, BT_FN_OV4SI_OV4SI)
794 OB_DEF_VAR (s390_vec_unpackl_s8, s390_vuplb, 0, 0, BT_OV_V8HI_V16QI)
795 OB_DEF_VAR (s390_vec_unpackl_b8, s390_vuplb, 0, 0, BT_OV_BV8HI_BV16QI)
796 OB_DEF_VAR (s390_vec_unpackl_u8, s390_vupllb, 0, 0, BT_OV_UV8HI_UV16QI)
797 OB_DEF_VAR (s390_vec_unpackl_s16, s390_vuplhw, 0, 0, BT_OV_V4SI_V8HI)
798 OB_DEF_VAR (s390_vec_unpackl_b16, s390_vupllh, 0, 0, BT_OV_BV4SI_BV8HI)
799 OB_DEF_VAR (s390_vec_unpackl_u16, s390_vupllh, 0, 0, BT_OV_UV4SI_UV8HI)
800 OB_DEF_VAR (s390_vec_unpackl_s32, s390_vuplf, 0, 0, BT_OV_V2DI_V4SI)
801 OB_DEF_VAR (s390_vec_unpackl_b32, s390_vuplf, 0, 0, BT_OV_BV2DI_BV4SI)
802 OB_DEF_VAR (s390_vec_unpackl_u32, s390_vupllf, 0, 0, BT_OV_UV2DI_UV4SI)
803
804 B_DEF (s390_vuplb, vec_unpacklv16qi, 0, B_VX, 0, BT_FN_V8HI_V16QI)
805 B_DEF (s390_vupllb, vec_unpackl_lv16qi, 0, B_VX, 0, BT_FN_UV8HI_UV16QI)
806 B_DEF (s390_vuplhw, vec_unpacklv8hi, 0, B_VX, 0, BT_FN_V4SI_V8HI)
807 B_DEF (s390_vupllh, vec_unpackl_lv8hi, 0, B_VX, 0, BT_FN_UV4SI_UV8HI)
808 B_DEF (s390_vuplf, vec_unpacklv4si, 0, B_VX, 0, BT_FN_V2DI_V4SI)
809 B_DEF (s390_vupllf, vec_unpackl_lv4si, 0, B_VX, 0, BT_FN_UV2DI_UV4SI)
810
811 OB_DEF (s390_vec_addc, s390_vec_addc_u8, s390_vec_addc_u64, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
812 OB_DEF_VAR (s390_vec_addc_u8, s390_vaccb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
813 OB_DEF_VAR (s390_vec_addc_u16, s390_vacch, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
814 OB_DEF_VAR (s390_vec_addc_u32, s390_vaccf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
815 OB_DEF_VAR (s390_vec_addc_u64, s390_vaccg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
816
817 B_DEF (s390_vaccb, vaccb_v16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
818 B_DEF (s390_vacch, vacch_v8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
819 B_DEF (s390_vaccf, vaccf_v4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
820 B_DEF (s390_vaccg, vaccg_v2di, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
821
822 B_DEF (s390_vec_add_u128, addti3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
823 B_DEF (s390_vec_addc_u128, vaccq_ti, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
824 B_DEF (s390_vec_adde_u128, vacq, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
825 B_DEF (s390_vec_addec_u128, vacccq, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
826
827 B_DEF (s390_vaq, addti3, 0, B_VX, 0, BT_FN_INT128_INT128_INT128)
828 B_DEF (s390_vaccq, vaccq_ti, 0, B_VX, 0, BT_FN_INT128_INT128_INT128)
829 B_DEF (s390_vacq, vacq, 0, B_VX, 0, BT_FN_INT128_INT128_INT128_INT128)
830 B_DEF (s390_vacccq, vacccq, 0, B_VX, 0, BT_FN_INT128_INT128_INT128_INT128)
831
832 OB_DEF (s390_vec_and, s390_vec_and_b8, s390_vec_and_dbl_c, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
833 OB_DEF_VAR (s390_vec_and_b8, s390_vn, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
834 OB_DEF_VAR (s390_vec_and_s8_a, s390_vn, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
835 OB_DEF_VAR (s390_vec_and_s8_b, s390_vn, 0, 0, BT_OV_V16QI_V16QI_V16QI)
836 OB_DEF_VAR (s390_vec_and_s8_c, s390_vn, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
837 OB_DEF_VAR (s390_vec_and_u8_a, s390_vn, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
838 OB_DEF_VAR (s390_vec_and_u8_b, s390_vn, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
839 OB_DEF_VAR (s390_vec_and_u8_c, s390_vn, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
840 OB_DEF_VAR (s390_vec_and_b16, s390_vn, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
841 OB_DEF_VAR (s390_vec_and_s16_a, s390_vn, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
842 OB_DEF_VAR (s390_vec_and_s16_b, s390_vn, 0, 0, BT_OV_V8HI_V8HI_V8HI)
843 OB_DEF_VAR (s390_vec_and_s16_c, s390_vn, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
844 OB_DEF_VAR (s390_vec_and_u16_a, s390_vn, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
845 OB_DEF_VAR (s390_vec_and_u16_b, s390_vn, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
846 OB_DEF_VAR (s390_vec_and_u16_c, s390_vn, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
847 OB_DEF_VAR (s390_vec_and_b32, s390_vn, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
848 OB_DEF_VAR (s390_vec_and_s32_a, s390_vn, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
849 OB_DEF_VAR (s390_vec_and_s32_b, s390_vn, 0, 0, BT_OV_V4SI_V4SI_V4SI)
850 OB_DEF_VAR (s390_vec_and_s32_c, s390_vn, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
851 OB_DEF_VAR (s390_vec_and_u32_a, s390_vn, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
852 OB_DEF_VAR (s390_vec_and_u32_b, s390_vn, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
853 OB_DEF_VAR (s390_vec_and_u32_c, s390_vn, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
854 OB_DEF_VAR (s390_vec_and_b64, s390_vn, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
855 OB_DEF_VAR (s390_vec_and_s64_a, s390_vn, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
856 OB_DEF_VAR (s390_vec_and_s64_b, s390_vn, 0, 0, BT_OV_V2DI_V2DI_V2DI)
857 OB_DEF_VAR (s390_vec_and_s64_c, s390_vn, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
858 OB_DEF_VAR (s390_vec_and_u64_a, s390_vn, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
859 OB_DEF_VAR (s390_vec_and_u64_b, s390_vn, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
860 OB_DEF_VAR (s390_vec_and_u64_c, s390_vn, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
861 OB_DEF_VAR (s390_vec_and_flt_a, s390_vn, B_VXE | B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
862 OB_DEF_VAR (s390_vec_and_flt_b, s390_vn, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
863 OB_DEF_VAR (s390_vec_and_flt_c, s390_vn, B_VXE | B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
864 OB_DEF_VAR (s390_vec_and_dbl_a, s390_vn, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
865 OB_DEF_VAR (s390_vec_and_dbl_b, s390_vn, 0, 0, BT_OV_V2DF_V2DF_V2DF)
866 OB_DEF_VAR (s390_vec_and_dbl_c, s390_vn, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
867
868 B_DEF (s390_vn, andv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
869
870 OB_DEF (s390_vec_andc, s390_vec_andc_b8, s390_vec_andc_dbl_c,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
871 OB_DEF_VAR (s390_vec_andc_b8, s390_vnc, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
872 OB_DEF_VAR (s390_vec_andc_s8_a, s390_vnc, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
873 OB_DEF_VAR (s390_vec_andc_s8_b, s390_vnc, 0, 0, BT_OV_V16QI_V16QI_V16QI)
874 OB_DEF_VAR (s390_vec_andc_s8_c, s390_vnc, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
875 OB_DEF_VAR (s390_vec_andc_u8_a, s390_vnc, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
876 OB_DEF_VAR (s390_vec_andc_u8_b, s390_vnc, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
877 OB_DEF_VAR (s390_vec_andc_u8_c, s390_vnc, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
878 OB_DEF_VAR (s390_vec_andc_b16, s390_vnc, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
879 OB_DEF_VAR (s390_vec_andc_s16_a, s390_vnc, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
880 OB_DEF_VAR (s390_vec_andc_s16_b, s390_vnc, 0, 0, BT_OV_V8HI_V8HI_V8HI)
881 OB_DEF_VAR (s390_vec_andc_s16_c, s390_vnc, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
882 OB_DEF_VAR (s390_vec_andc_u16_a, s390_vnc, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
883 OB_DEF_VAR (s390_vec_andc_u16_b, s390_vnc, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
884 OB_DEF_VAR (s390_vec_andc_u16_c, s390_vnc, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
885 OB_DEF_VAR (s390_vec_andc_b32, s390_vnc, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
886 OB_DEF_VAR (s390_vec_andc_s32_a, s390_vnc, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
887 OB_DEF_VAR (s390_vec_andc_s32_b, s390_vnc, 0, 0, BT_OV_V4SI_V4SI_V4SI)
888 OB_DEF_VAR (s390_vec_andc_s32_c, s390_vnc, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
889 OB_DEF_VAR (s390_vec_andc_u32_a, s390_vnc, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
890 OB_DEF_VAR (s390_vec_andc_u32_b, s390_vnc, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
891 OB_DEF_VAR (s390_vec_andc_u32_c, s390_vnc, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
892 OB_DEF_VAR (s390_vec_andc_b64, s390_vnc, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
893 OB_DEF_VAR (s390_vec_andc_s64_a, s390_vnc, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
894 OB_DEF_VAR (s390_vec_andc_s64_b, s390_vnc, 0, 0, BT_OV_V2DI_V2DI_V2DI)
895 OB_DEF_VAR (s390_vec_andc_s64_c, s390_vnc, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
896 OB_DEF_VAR (s390_vec_andc_u64_a, s390_vnc, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
897 OB_DEF_VAR (s390_vec_andc_u64_b, s390_vnc, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
898 OB_DEF_VAR (s390_vec_andc_u64_c, s390_vnc, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
899 OB_DEF_VAR (s390_vec_andc_flt_a, s390_vnc, B_VXE | B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
900 OB_DEF_VAR (s390_vec_andc_flt_b, s390_vnc, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
901 OB_DEF_VAR (s390_vec_andc_flt_c, s390_vnc, B_VXE | B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
902 OB_DEF_VAR (s390_vec_andc_dbl_a, s390_vnc, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
903 OB_DEF_VAR (s390_vec_andc_dbl_b, s390_vnc, 0, 0, BT_OV_V2DF_V2DF_V2DF)
904 OB_DEF_VAR (s390_vec_andc_dbl_c, s390_vnc, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
905
906 B_DEF (s390_vnc, vec_andcv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
907
908 OB_DEF (s390_vec_avg, s390_vec_avg_s8, s390_vec_avg_u64, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
909 OB_DEF_VAR (s390_vec_avg_s8, s390_vavgb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
910 OB_DEF_VAR (s390_vec_avg_u8, s390_vavglb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
911 OB_DEF_VAR (s390_vec_avg_s16, s390_vavgh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
912 OB_DEF_VAR (s390_vec_avg_u16, s390_vavglh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
913 OB_DEF_VAR (s390_vec_avg_s32, s390_vavgf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
914 OB_DEF_VAR (s390_vec_avg_u32, s390_vavglf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
915 OB_DEF_VAR (s390_vec_avg_s64, s390_vavgg, 0, 0, BT_OV_V2DI_V2DI_V2DI)
916 OB_DEF_VAR (s390_vec_avg_u64, s390_vavglg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
917
918 B_DEF (s390_vavgb, vec_avgv16qi, 0, B_VX, 0, BT_FN_V16QI_V16QI_V16QI)
919 B_DEF (s390_vavglb, vec_avguv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
920 B_DEF (s390_vavgh, vec_avgv8hi, 0, B_VX, 0, BT_FN_V8HI_V8HI_V8HI)
921 B_DEF (s390_vavglh, vec_avguv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
922 B_DEF (s390_vavgf, vec_avgv4si, 0, B_VX, 0, BT_FN_V4SI_V4SI_V4SI)
923 B_DEF (s390_vavglf, vec_avguv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
924 B_DEF (s390_vavgg, vec_avgv2di, 0, B_VX, 0, BT_FN_V2DI_V2DI_V2DI)
925 B_DEF (s390_vavglg, vec_avguv2di, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
926
927 B_DEF (s390_vcksm, vec_checksum, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
928
929 B_DEF (s390_vceqbs, vec_cmpeqv16qi_cc, 0, B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI_INTPTR)
930 B_DEF (s390_vceqhs, vec_cmpeqv8hi_cc, 0, B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI_INTPTR)
931 B_DEF (s390_vceqfs, vec_cmpeqv4si_cc, 0, B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI_INTPTR)
932 B_DEF (s390_vceqgs, vec_cmpeqv2di_cc, 0, B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI_INTPTR)
933 B_DEF (s390_vfcesbs, vec_cmpeqv4sf_cc, 0, B_VXE, 0, BT_FN_V4SI_V4SF_V4SF_INTPTR)
934 B_DEF (s390_vfcedbs, vec_cmpeqv2df_cc, 0, B_VX, 0, BT_FN_V2DI_V2DF_V2DF_INTPTR)
935
936 B_DEF (s390_vchbs, vec_cmphv16qi_cc, 0, B_VX, 0, BT_FN_V16QI_V16QI_V16QI_INTPTR)
937 B_DEF (s390_vchlbs, vec_cmphlv16qi_cc, 0, B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI_INTPTR)
938 B_DEF (s390_vchhs, vec_cmphv8hi_cc, 0, B_VX, 0, BT_FN_V8HI_V8HI_V8HI_INTPTR)
939 B_DEF (s390_vchlhs, vec_cmphlv8hi_cc, 0, B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI_INTPTR)
940 B_DEF (s390_vchfs, vec_cmphv4si_cc, 0, B_VX, 0, BT_FN_V4SI_V4SI_V4SI_INTPTR)
941 B_DEF (s390_vchlfs, vec_cmphlv4si_cc, 0, B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI_INTPTR)
942 B_DEF (s390_vchgs, vec_cmphv2di_cc, 0, B_VX, 0, BT_FN_V2DI_V2DI_V2DI_INTPTR)
943 B_DEF (s390_vchlgs, vec_cmphlv2di_cc, 0, B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI_INTPTR)
944 B_DEF (s390_vfchsbs, vec_cmphv4sf_cc, 0, B_VXE, 0, BT_FN_V4SI_V4SF_V4SF_INTPTR)
945 B_DEF (s390_vfchdbs, vec_cmphv2df_cc, 0, B_VX, 0, BT_FN_V2DI_V2DF_V2DF_INTPTR)
946
947 B_DEF (s390_vfchesbs, vec_cmphev4sf_cc, 0, B_VXE, 0, BT_FN_V4SI_V4SF_V4SF_INTPTR)
948 B_DEF (s390_vfchedbs, vec_cmphev2df_cc, 0, B_VX, 0, BT_FN_V2DI_V2DF_V2DF_INTPTR)
949
950 B_DEF (vec_all_eqv16qi, vec_all_eqv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
951 B_DEF (vec_all_eqv8hi, vec_all_eqv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
952 B_DEF (vec_all_eqv4si, vec_all_eqv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
953 B_DEF (vec_all_eqv2di, vec_all_eqv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
954 B_DEF (vec_all_eqv4sf, vec_all_eqv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
955 B_DEF (vec_all_eqv2df, vec_all_eqv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
956
957 B_DEF (vec_all_nev16qi, vec_all_nev16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
958 B_DEF (vec_all_nev8hi, vec_all_nev8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
959 B_DEF (vec_all_nev4si, vec_all_nev4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
960 B_DEF (vec_all_nev2di, vec_all_nev2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
961 B_DEF (vec_all_nev4sf, vec_all_nev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
962 B_DEF (vec_all_nev2df, vec_all_nev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
963
964 B_DEF (vec_all_gev16qi, vec_all_gev16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
965 B_DEF (vec_all_geuv16qi, vec_all_geuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
966 B_DEF (vec_all_gev8hi, vec_all_gev8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
967 B_DEF (vec_all_geuv8hi, vec_all_geuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
968 B_DEF (vec_all_gev4si, vec_all_gev4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
969 B_DEF (vec_all_geuv4si, vec_all_geuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
970 B_DEF (vec_all_gev2di, vec_all_gev2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
971 B_DEF (vec_all_geuv2di, vec_all_geuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
972 B_DEF (vec_all_gev4sf, vec_all_gev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
973 B_DEF (vec_all_gev2df, vec_all_gev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
974
975 B_DEF (vec_all_gtv16qi, vec_all_gtv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
976 B_DEF (vec_all_gtuv16qi, vec_all_gtuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
977 B_DEF (vec_all_gtv8hi, vec_all_gtv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
978 B_DEF (vec_all_gtuv8hi, vec_all_gtuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
979 B_DEF (vec_all_gtv4si, vec_all_gtv4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
980 B_DEF (vec_all_gtuv4si, vec_all_gtuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
981 B_DEF (vec_all_gtv2di, vec_all_gtv2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
982 B_DEF (vec_all_gtuv2di, vec_all_gtuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
983 B_DEF (vec_all_gtv4sf, vec_all_gtv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
984 B_DEF (vec_all_gtv2df, vec_all_gtv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
985
986 B_DEF (vec_all_lev16qi, vec_all_lev16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
987 B_DEF (vec_all_leuv16qi, vec_all_leuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
988 B_DEF (vec_all_lev8hi, vec_all_lev8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
989 B_DEF (vec_all_leuv8hi, vec_all_leuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
990 B_DEF (vec_all_lev4si, vec_all_lev4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
991 B_DEF (vec_all_leuv4si, vec_all_leuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
992 B_DEF (vec_all_lev2di, vec_all_lev2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
993 B_DEF (vec_all_leuv2di, vec_all_leuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
994 B_DEF (vec_all_lev4sf, vec_all_lev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
995 B_DEF (vec_all_lev2df, vec_all_lev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
996
997 B_DEF (vec_all_ltv16qi, vec_all_ltv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
998 B_DEF (vec_all_ltuv16qi, vec_all_ltuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
999 B_DEF (vec_all_ltv8hi, vec_all_ltv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
1000 B_DEF (vec_all_ltuv8hi, vec_all_ltuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1001 B_DEF (vec_all_ltv4si, vec_all_ltv4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
1002 B_DEF (vec_all_ltuv4si, vec_all_ltuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1003 B_DEF (vec_all_ltv2di, vec_all_ltv2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
1004 B_DEF (vec_all_ltuv2di, vec_all_ltuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1005 B_DEF (vec_all_ltv4sf, vec_all_ltv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1006 B_DEF (vec_all_ltv2df, vec_all_ltv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1007
1008 OB_DEF (s390_vec_all_eq, s390_vec_all_eq_s8_a,s390_vec_all_eq_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1009 OB_DEF_VAR (s390_vec_all_eq_s8_a, vec_all_eqv16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1010 OB_DEF_VAR (s390_vec_all_eq_s8_b, vec_all_eqv16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1011 OB_DEF_VAR (s390_vec_all_eq_b8_a, vec_all_eqv16qi, 0, 0, BT_OV_INT_BV16QI_BV16QI)
1012 OB_DEF_VAR (s390_vec_all_eq_b8_b, vec_all_eqv16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1013 OB_DEF_VAR (s390_vec_all_eq_b8_c, vec_all_eqv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1014 OB_DEF_VAR (s390_vec_all_eq_u8_a, vec_all_eqv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1015 OB_DEF_VAR (s390_vec_all_eq_u8_b, vec_all_eqv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1016 OB_DEF_VAR (s390_vec_all_eq_s16_a, vec_all_eqv8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1017 OB_DEF_VAR (s390_vec_all_eq_s16_b, vec_all_eqv8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1018 OB_DEF_VAR (s390_vec_all_eq_b16_a, vec_all_eqv8hi, 0, 0, BT_OV_INT_BV8HI_BV8HI)
1019 OB_DEF_VAR (s390_vec_all_eq_b16_b, vec_all_eqv8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1020 OB_DEF_VAR (s390_vec_all_eq_b16_c, vec_all_eqv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1021 OB_DEF_VAR (s390_vec_all_eq_u16_a, vec_all_eqv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1022 OB_DEF_VAR (s390_vec_all_eq_u16_b, vec_all_eqv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1023 OB_DEF_VAR (s390_vec_all_eq_s32_a, vec_all_eqv4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1024 OB_DEF_VAR (s390_vec_all_eq_s32_b, vec_all_eqv4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1025 OB_DEF_VAR (s390_vec_all_eq_b32_a, vec_all_eqv4si, 0, 0, BT_OV_INT_BV4SI_BV4SI)
1026 OB_DEF_VAR (s390_vec_all_eq_b32_b, vec_all_eqv4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1027 OB_DEF_VAR (s390_vec_all_eq_b32_c, vec_all_eqv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1028 OB_DEF_VAR (s390_vec_all_eq_u32_a, vec_all_eqv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1029 OB_DEF_VAR (s390_vec_all_eq_u32_b, vec_all_eqv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1030 OB_DEF_VAR (s390_vec_all_eq_s64_a, vec_all_eqv2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1031 OB_DEF_VAR (s390_vec_all_eq_s64_b, vec_all_eqv2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1032 OB_DEF_VAR (s390_vec_all_eq_b64_a, vec_all_eqv2di, 0, 0, BT_OV_INT_BV2DI_BV2DI)
1033 OB_DEF_VAR (s390_vec_all_eq_b64_b, vec_all_eqv2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1034 OB_DEF_VAR (s390_vec_all_eq_b64_c, vec_all_eqv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1035 OB_DEF_VAR (s390_vec_all_eq_u64_a, vec_all_eqv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1036 OB_DEF_VAR (s390_vec_all_eq_u64_b, vec_all_eqv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1037 OB_DEF_VAR (s390_vec_all_eq_flt, vec_all_eqv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1038 OB_DEF_VAR (s390_vec_all_eq_dbl, vec_all_eqv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1039
1040 OB_DEF (s390_vec_all_ne, s390_vec_all_ne_s8_a,s390_vec_all_ne_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1041 OB_DEF_VAR (s390_vec_all_ne_s8_a, vec_all_nev16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1042 OB_DEF_VAR (s390_vec_all_ne_s8_b, vec_all_nev16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1043 OB_DEF_VAR (s390_vec_all_ne_b8_a, vec_all_nev16qi, 0, 0, BT_OV_INT_BV16QI_BV16QI)
1044 OB_DEF_VAR (s390_vec_all_ne_b8_b, vec_all_nev16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1045 OB_DEF_VAR (s390_vec_all_ne_b8_c, vec_all_nev16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1046 OB_DEF_VAR (s390_vec_all_ne_u8_a, vec_all_nev16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1047 OB_DEF_VAR (s390_vec_all_ne_u8_b, vec_all_nev16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1048 OB_DEF_VAR (s390_vec_all_ne_s16_a, vec_all_nev8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1049 OB_DEF_VAR (s390_vec_all_ne_s16_b, vec_all_nev8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1050 OB_DEF_VAR (s390_vec_all_ne_b16_a, vec_all_nev8hi, 0, 0, BT_OV_INT_BV8HI_BV8HI)
1051 OB_DEF_VAR (s390_vec_all_ne_b16_b, vec_all_nev8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1052 OB_DEF_VAR (s390_vec_all_ne_b16_c, vec_all_nev8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1053 OB_DEF_VAR (s390_vec_all_ne_u16_a, vec_all_nev8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1054 OB_DEF_VAR (s390_vec_all_ne_u16_b, vec_all_nev8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1055 OB_DEF_VAR (s390_vec_all_ne_s32_a, vec_all_nev4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1056 OB_DEF_VAR (s390_vec_all_ne_s32_b, vec_all_nev4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1057 OB_DEF_VAR (s390_vec_all_ne_b32_a, vec_all_nev4si, 0, 0, BT_OV_INT_BV4SI_BV4SI)
1058 OB_DEF_VAR (s390_vec_all_ne_b32_b, vec_all_nev4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1059 OB_DEF_VAR (s390_vec_all_ne_b32_c, vec_all_nev4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1060 OB_DEF_VAR (s390_vec_all_ne_u32_a, vec_all_nev4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1061 OB_DEF_VAR (s390_vec_all_ne_u32_b, vec_all_nev4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1062 OB_DEF_VAR (s390_vec_all_ne_s64_a, vec_all_nev2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1063 OB_DEF_VAR (s390_vec_all_ne_s64_b, vec_all_nev2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1064 OB_DEF_VAR (s390_vec_all_ne_b64_a, vec_all_nev2di, 0, 0, BT_OV_INT_BV2DI_BV2DI)
1065 OB_DEF_VAR (s390_vec_all_ne_b64_b, vec_all_nev2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1066 OB_DEF_VAR (s390_vec_all_ne_b64_c, vec_all_nev2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1067 OB_DEF_VAR (s390_vec_all_ne_u64_a, vec_all_nev2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1068 OB_DEF_VAR (s390_vec_all_ne_u64_b, vec_all_nev2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1069 OB_DEF_VAR (s390_vec_all_ne_flt, vec_all_nev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1070 OB_DEF_VAR (s390_vec_all_ne_dbl, vec_all_nev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1071
1072 OB_DEF (s390_vec_all_ge, s390_vec_all_ge_s8_a,s390_vec_all_ge_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1073 OB_DEF_VAR (s390_vec_all_ge_s8_a, vec_all_gev16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1074 OB_DEF_VAR (s390_vec_all_ge_s8_b, vec_all_gev16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1075 OB_DEF_VAR (s390_vec_all_ge_b8_a, vec_all_geuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1076 OB_DEF_VAR (s390_vec_all_ge_b8_b, vec_all_gev16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1077 OB_DEF_VAR (s390_vec_all_ge_b8_c, vec_all_geuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1078 OB_DEF_VAR (s390_vec_all_ge_u8_a, vec_all_geuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1079 OB_DEF_VAR (s390_vec_all_ge_u8_b, vec_all_geuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1080 OB_DEF_VAR (s390_vec_all_ge_s16_a, vec_all_gev8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1081 OB_DEF_VAR (s390_vec_all_ge_s16_b, vec_all_gev8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1082 OB_DEF_VAR (s390_vec_all_ge_b16_a, vec_all_geuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1083 OB_DEF_VAR (s390_vec_all_ge_b16_b, vec_all_gev8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1084 OB_DEF_VAR (s390_vec_all_ge_b16_c, vec_all_geuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1085 OB_DEF_VAR (s390_vec_all_ge_u16_a, vec_all_geuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1086 OB_DEF_VAR (s390_vec_all_ge_u16_b, vec_all_geuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1087 OB_DEF_VAR (s390_vec_all_ge_s32_a, vec_all_gev4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1088 OB_DEF_VAR (s390_vec_all_ge_s32_b, vec_all_gev4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1089 OB_DEF_VAR (s390_vec_all_ge_b32_a, vec_all_geuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1090 OB_DEF_VAR (s390_vec_all_ge_b32_b, vec_all_gev4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1091 OB_DEF_VAR (s390_vec_all_ge_b32_c, vec_all_geuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1092 OB_DEF_VAR (s390_vec_all_ge_u32_a, vec_all_geuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1093 OB_DEF_VAR (s390_vec_all_ge_u32_b, vec_all_geuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1094 OB_DEF_VAR (s390_vec_all_ge_s64_a, vec_all_gev2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1095 OB_DEF_VAR (s390_vec_all_ge_s64_b, vec_all_gev2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1096 OB_DEF_VAR (s390_vec_all_ge_b64_a, vec_all_geuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1097 OB_DEF_VAR (s390_vec_all_ge_b64_b, vec_all_gev2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1098 OB_DEF_VAR (s390_vec_all_ge_b64_c, vec_all_geuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1099 OB_DEF_VAR (s390_vec_all_ge_u64_a, vec_all_geuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1100 OB_DEF_VAR (s390_vec_all_ge_u64_b, vec_all_geuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1101 OB_DEF_VAR (s390_vec_all_ge_flt, vec_all_gev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1102 OB_DEF_VAR (s390_vec_all_ge_dbl, vec_all_gev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1103
1104 OB_DEF (s390_vec_all_gt, s390_vec_all_gt_s8_a,s390_vec_all_gt_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1105 OB_DEF_VAR (s390_vec_all_gt_s8_a, vec_all_gtv16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1106 OB_DEF_VAR (s390_vec_all_gt_s8_b, vec_all_gtv16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1107 OB_DEF_VAR (s390_vec_all_gt_b8_a, vec_all_gtuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1108 OB_DEF_VAR (s390_vec_all_gt_b8_b, vec_all_gtv16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1109 OB_DEF_VAR (s390_vec_all_gt_b8_c, vec_all_gtuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1110 OB_DEF_VAR (s390_vec_all_gt_u8_a, vec_all_gtuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1111 OB_DEF_VAR (s390_vec_all_gt_u8_b, vec_all_gtuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1112 OB_DEF_VAR (s390_vec_all_gt_s16_a, vec_all_gtv8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1113 OB_DEF_VAR (s390_vec_all_gt_s16_b, vec_all_gtv8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1114 OB_DEF_VAR (s390_vec_all_gt_b16_a, vec_all_gtuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1115 OB_DEF_VAR (s390_vec_all_gt_b16_b, vec_all_gtv8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1116 OB_DEF_VAR (s390_vec_all_gt_b16_c, vec_all_gtuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1117 OB_DEF_VAR (s390_vec_all_gt_u16_a, vec_all_gtuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1118 OB_DEF_VAR (s390_vec_all_gt_u16_b, vec_all_gtuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1119 OB_DEF_VAR (s390_vec_all_gt_s32_a, vec_all_gtv4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1120 OB_DEF_VAR (s390_vec_all_gt_s32_b, vec_all_gtv4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1121 OB_DEF_VAR (s390_vec_all_gt_b32_a, vec_all_gtuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1122 OB_DEF_VAR (s390_vec_all_gt_b32_b, vec_all_gtv4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1123 OB_DEF_VAR (s390_vec_all_gt_b32_c, vec_all_gtuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1124 OB_DEF_VAR (s390_vec_all_gt_u32_a, vec_all_gtuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1125 OB_DEF_VAR (s390_vec_all_gt_u32_b, vec_all_gtuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1126 OB_DEF_VAR (s390_vec_all_gt_s64_a, vec_all_gtv2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1127 OB_DEF_VAR (s390_vec_all_gt_s64_b, vec_all_gtv2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1128 OB_DEF_VAR (s390_vec_all_gt_b64_a, vec_all_gtuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1129 OB_DEF_VAR (s390_vec_all_gt_b64_b, vec_all_gtv2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1130 OB_DEF_VAR (s390_vec_all_gt_b64_c, vec_all_gtuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1131 OB_DEF_VAR (s390_vec_all_gt_u64_a, vec_all_gtuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1132 OB_DEF_VAR (s390_vec_all_gt_u64_b, vec_all_gtuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1133 OB_DEF_VAR (s390_vec_all_gt_flt, vec_all_gtv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1134 OB_DEF_VAR (s390_vec_all_gt_dbl, vec_all_gtv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1135
1136 OB_DEF (s390_vec_all_le, s390_vec_all_le_s8_a,s390_vec_all_le_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1137 OB_DEF_VAR (s390_vec_all_le_s8_a, vec_all_lev16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1138 OB_DEF_VAR (s390_vec_all_le_s8_b, vec_all_lev16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1139 OB_DEF_VAR (s390_vec_all_le_b8_a, vec_all_leuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1140 OB_DEF_VAR (s390_vec_all_le_b8_b, vec_all_lev16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1141 OB_DEF_VAR (s390_vec_all_le_b8_c, vec_all_leuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1142 OB_DEF_VAR (s390_vec_all_le_u8_a, vec_all_leuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1143 OB_DEF_VAR (s390_vec_all_le_u8_b, vec_all_leuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1144 OB_DEF_VAR (s390_vec_all_le_s16_a, vec_all_lev8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1145 OB_DEF_VAR (s390_vec_all_le_s16_b, vec_all_lev8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1146 OB_DEF_VAR (s390_vec_all_le_b16_a, vec_all_leuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1147 OB_DEF_VAR (s390_vec_all_le_b16_b, vec_all_lev8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1148 OB_DEF_VAR (s390_vec_all_le_b16_c, vec_all_leuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1149 OB_DEF_VAR (s390_vec_all_le_u16_a, vec_all_leuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1150 OB_DEF_VAR (s390_vec_all_le_u16_b, vec_all_leuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1151 OB_DEF_VAR (s390_vec_all_le_s32_a, vec_all_lev4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1152 OB_DEF_VAR (s390_vec_all_le_s32_b, vec_all_lev4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1153 OB_DEF_VAR (s390_vec_all_le_b32_a, vec_all_leuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1154 OB_DEF_VAR (s390_vec_all_le_b32_b, vec_all_lev4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1155 OB_DEF_VAR (s390_vec_all_le_b32_c, vec_all_leuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1156 OB_DEF_VAR (s390_vec_all_le_u32_a, vec_all_leuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1157 OB_DEF_VAR (s390_vec_all_le_u32_b, vec_all_leuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1158 OB_DEF_VAR (s390_vec_all_le_s64_a, vec_all_lev2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1159 OB_DEF_VAR (s390_vec_all_le_s64_b, vec_all_lev2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1160 OB_DEF_VAR (s390_vec_all_le_b64_a, vec_all_leuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1161 OB_DEF_VAR (s390_vec_all_le_b64_b, vec_all_lev2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1162 OB_DEF_VAR (s390_vec_all_le_b64_c, vec_all_leuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1163 OB_DEF_VAR (s390_vec_all_le_u64_a, vec_all_leuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1164 OB_DEF_VAR (s390_vec_all_le_u64_b, vec_all_leuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1165 OB_DEF_VAR (s390_vec_all_le_flt, vec_all_lev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1166 OB_DEF_VAR (s390_vec_all_le_dbl, vec_all_lev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1167
1168 OB_DEF (s390_vec_all_lt, s390_vec_all_lt_s8_a,s390_vec_all_lt_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1169 OB_DEF_VAR (s390_vec_all_lt_s8_a, vec_all_ltv16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1170 OB_DEF_VAR (s390_vec_all_lt_s8_b, vec_all_ltv16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1171 OB_DEF_VAR (s390_vec_all_lt_b8_a, vec_all_ltuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1172 OB_DEF_VAR (s390_vec_all_lt_b8_b, vec_all_ltv16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1173 OB_DEF_VAR (s390_vec_all_lt_b8_c, vec_all_ltuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1174 OB_DEF_VAR (s390_vec_all_lt_u8_a, vec_all_ltuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1175 OB_DEF_VAR (s390_vec_all_lt_u8_b, vec_all_ltuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1176 OB_DEF_VAR (s390_vec_all_lt_s16_a, vec_all_ltv8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1177 OB_DEF_VAR (s390_vec_all_lt_s16_b, vec_all_ltv8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1178 OB_DEF_VAR (s390_vec_all_lt_b16_a, vec_all_ltuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1179 OB_DEF_VAR (s390_vec_all_lt_b16_b, vec_all_ltv8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1180 OB_DEF_VAR (s390_vec_all_lt_b16_c, vec_all_ltuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1181 OB_DEF_VAR (s390_vec_all_lt_u16_a, vec_all_ltuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1182 OB_DEF_VAR (s390_vec_all_lt_u16_b, vec_all_ltuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1183 OB_DEF_VAR (s390_vec_all_lt_s32_a, vec_all_ltv4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1184 OB_DEF_VAR (s390_vec_all_lt_s32_b, vec_all_ltv4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1185 OB_DEF_VAR (s390_vec_all_lt_b32_a, vec_all_ltuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1186 OB_DEF_VAR (s390_vec_all_lt_b32_b, vec_all_ltv4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1187 OB_DEF_VAR (s390_vec_all_lt_b32_c, vec_all_ltuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1188 OB_DEF_VAR (s390_vec_all_lt_u32_a, vec_all_ltuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1189 OB_DEF_VAR (s390_vec_all_lt_u32_b, vec_all_ltuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1190 OB_DEF_VAR (s390_vec_all_lt_s64_a, vec_all_ltv2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1191 OB_DEF_VAR (s390_vec_all_lt_s64_b, vec_all_ltv2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1192 OB_DEF_VAR (s390_vec_all_lt_b64_a, vec_all_ltuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1193 OB_DEF_VAR (s390_vec_all_lt_b64_b, vec_all_ltv2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1194 OB_DEF_VAR (s390_vec_all_lt_b64_c, vec_all_ltuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1195 OB_DEF_VAR (s390_vec_all_lt_u64_a, vec_all_ltuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1196 OB_DEF_VAR (s390_vec_all_lt_u64_b, vec_all_ltuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1197 OB_DEF_VAR (s390_vec_all_lt_flt, vec_all_ltv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1198 OB_DEF_VAR (s390_vec_all_lt_dbl, vec_all_ltv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1199
1200 B_DEF (vec_any_eqv16qi, vec_any_eqv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
1201 B_DEF (vec_any_eqv8hi, vec_any_eqv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1202 B_DEF (vec_any_eqv4si, vec_any_eqv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1203 B_DEF (vec_any_eqv2di, vec_any_eqv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1204 B_DEF (vec_any_eqv4sf, vec_any_eqv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1205 B_DEF (vec_any_eqv2df, vec_any_eqv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1206
1207 B_DEF (vec_any_nev16qi, vec_any_nev16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
1208 B_DEF (vec_any_nev8hi, vec_any_nev8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1209 B_DEF (vec_any_nev4si, vec_any_nev4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1210 B_DEF (vec_any_nev2di, vec_any_nev2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1211 B_DEF (vec_any_nev4sf, vec_any_nev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1212 B_DEF (vec_any_nev2df, vec_any_nev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1213
1214 B_DEF (vec_any_gev16qi, vec_any_gev16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
1215 B_DEF (vec_any_geuv16qi, vec_any_geuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
1216 B_DEF (vec_any_gev8hi, vec_any_gev8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
1217 B_DEF (vec_any_geuv8hi, vec_any_geuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1218 B_DEF (vec_any_gev4si, vec_any_gev4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
1219 B_DEF (vec_any_geuv4si, vec_any_geuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1220 B_DEF (vec_any_gev2di, vec_any_gev2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
1221 B_DEF (vec_any_geuv2di, vec_any_geuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1222 B_DEF (vec_any_gev4sf, vec_any_gev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1223 B_DEF (vec_any_gev2df, vec_any_gev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1224
1225 B_DEF (vec_any_gtv16qi, vec_any_gtv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
1226 B_DEF (vec_any_gtuv16qi, vec_any_gtuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
1227 B_DEF (vec_any_gtv8hi, vec_any_gtv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
1228 B_DEF (vec_any_gtuv8hi, vec_any_gtuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1229 B_DEF (vec_any_gtv4si, vec_any_gtv4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
1230 B_DEF (vec_any_gtuv4si, vec_any_gtuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1231 B_DEF (vec_any_gtv2di, vec_any_gtv2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
1232 B_DEF (vec_any_gtuv2di, vec_any_gtuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1233 B_DEF (vec_any_gtv4sf, vec_any_gtv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1234 B_DEF (vec_any_gtv2df, vec_any_gtv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1235
1236 B_DEF (vec_any_lev16qi, vec_any_lev16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
1237 B_DEF (vec_any_leuv16qi, vec_any_leuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
1238 B_DEF (vec_any_lev8hi, vec_any_lev8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
1239 B_DEF (vec_any_leuv8hi, vec_any_leuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1240 B_DEF (vec_any_lev4si, vec_any_lev4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
1241 B_DEF (vec_any_leuv4si, vec_any_leuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1242 B_DEF (vec_any_lev2di, vec_any_lev2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
1243 B_DEF (vec_any_leuv2di, vec_any_leuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1244 B_DEF (vec_any_lev4sf, vec_any_lev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1245 B_DEF (vec_any_lev2df, vec_any_lev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1246
1247 B_DEF (vec_any_ltv16qi, vec_any_ltv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_V16QI_V16QI)
1248 B_DEF (vec_any_ltuv16qi, vec_any_ltuv16qi, 0, B_INT | B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
1249 B_DEF (vec_any_ltv8hi, vec_any_ltv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_V8HI_V8HI)
1250 B_DEF (vec_any_ltuv8hi, vec_any_ltuv8hi, 0, B_INT | B_VX, 0, BT_FN_INT_UV8HI_UV8HI)
1251 B_DEF (vec_any_ltv4si, vec_any_ltv4si, 0, B_INT | B_VX, 0, BT_FN_INT_V4SI_V4SI)
1252 B_DEF (vec_any_ltuv4si, vec_any_ltuv4si, 0, B_INT | B_VX, 0, BT_FN_INT_UV4SI_UV4SI)
1253 B_DEF (vec_any_ltv2di, vec_any_ltv2di, 0, B_INT | B_VX, 0, BT_FN_INT_V2DI_V2DI)
1254 B_DEF (vec_any_ltuv2di, vec_any_ltuv2di, 0, B_INT | B_VX, 0, BT_FN_INT_UV2DI_UV2DI)
1255 B_DEF (vec_any_ltv4sf, vec_any_ltv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
1256 B_DEF (vec_any_ltv2df, vec_any_ltv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
1257
1258 OB_DEF (s390_vec_any_eq, s390_vec_any_eq_s8_a,s390_vec_any_eq_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1259 OB_DEF_VAR (s390_vec_any_eq_s8_a, vec_any_eqv16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1260 OB_DEF_VAR (s390_vec_any_eq_s8_b, vec_any_eqv16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1261 OB_DEF_VAR (s390_vec_any_eq_b8_a, vec_any_eqv16qi, 0, 0, BT_OV_INT_BV16QI_BV16QI)
1262 OB_DEF_VAR (s390_vec_any_eq_b8_b, vec_any_eqv16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1263 OB_DEF_VAR (s390_vec_any_eq_b8_c, vec_any_eqv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1264 OB_DEF_VAR (s390_vec_any_eq_u8_a, vec_any_eqv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1265 OB_DEF_VAR (s390_vec_any_eq_u8_b, vec_any_eqv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1266 OB_DEF_VAR (s390_vec_any_eq_s16_a, vec_any_eqv8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1267 OB_DEF_VAR (s390_vec_any_eq_s16_b, vec_any_eqv8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1268 OB_DEF_VAR (s390_vec_any_eq_b16_a, vec_any_eqv8hi, 0, 0, BT_OV_INT_BV8HI_BV8HI)
1269 OB_DEF_VAR (s390_vec_any_eq_b16_b, vec_any_eqv8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1270 OB_DEF_VAR (s390_vec_any_eq_b16_c, vec_any_eqv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1271 OB_DEF_VAR (s390_vec_any_eq_u16_a, vec_any_eqv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1272 OB_DEF_VAR (s390_vec_any_eq_u16_b, vec_any_eqv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1273 OB_DEF_VAR (s390_vec_any_eq_s32_a, vec_any_eqv4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1274 OB_DEF_VAR (s390_vec_any_eq_s32_b, vec_any_eqv4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1275 OB_DEF_VAR (s390_vec_any_eq_b32_a, vec_any_eqv4si, 0, 0, BT_OV_INT_BV4SI_BV4SI)
1276 OB_DEF_VAR (s390_vec_any_eq_b32_b, vec_any_eqv4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1277 OB_DEF_VAR (s390_vec_any_eq_b32_c, vec_any_eqv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1278 OB_DEF_VAR (s390_vec_any_eq_u32_a, vec_any_eqv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1279 OB_DEF_VAR (s390_vec_any_eq_u32_b, vec_any_eqv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1280 OB_DEF_VAR (s390_vec_any_eq_s64_a, vec_any_eqv2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1281 OB_DEF_VAR (s390_vec_any_eq_s64_b, vec_any_eqv2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1282 OB_DEF_VAR (s390_vec_any_eq_b64_a, vec_any_eqv2di, 0, 0, BT_OV_INT_BV2DI_BV2DI)
1283 OB_DEF_VAR (s390_vec_any_eq_b64_b, vec_any_eqv2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1284 OB_DEF_VAR (s390_vec_any_eq_b64_c, vec_any_eqv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1285 OB_DEF_VAR (s390_vec_any_eq_u64_a, vec_any_eqv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1286 OB_DEF_VAR (s390_vec_any_eq_u64_b, vec_any_eqv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1287 OB_DEF_VAR (s390_vec_any_eq_flt, vec_any_eqv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1288 OB_DEF_VAR (s390_vec_any_eq_dbl, vec_any_eqv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1289
1290 OB_DEF (s390_vec_any_ne, s390_vec_any_ne_s8_a,s390_vec_any_ne_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1291 OB_DEF_VAR (s390_vec_any_ne_s8_a, vec_any_nev16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1292 OB_DEF_VAR (s390_vec_any_ne_s8_b, vec_any_nev16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1293 OB_DEF_VAR (s390_vec_any_ne_b8_a, vec_any_nev16qi, 0, 0, BT_OV_INT_BV16QI_BV16QI)
1294 OB_DEF_VAR (s390_vec_any_ne_b8_b, vec_any_nev16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1295 OB_DEF_VAR (s390_vec_any_ne_b8_c, vec_any_nev16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1296 OB_DEF_VAR (s390_vec_any_ne_u8_a, vec_any_nev16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1297 OB_DEF_VAR (s390_vec_any_ne_u8_b, vec_any_nev16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1298 OB_DEF_VAR (s390_vec_any_ne_s16_a, vec_any_nev8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1299 OB_DEF_VAR (s390_vec_any_ne_s16_b, vec_any_nev8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1300 OB_DEF_VAR (s390_vec_any_ne_b16_a, vec_any_nev8hi, 0, 0, BT_OV_INT_BV8HI_BV8HI)
1301 OB_DEF_VAR (s390_vec_any_ne_b16_b, vec_any_nev8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1302 OB_DEF_VAR (s390_vec_any_ne_b16_c, vec_any_nev8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1303 OB_DEF_VAR (s390_vec_any_ne_u16_a, vec_any_nev8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1304 OB_DEF_VAR (s390_vec_any_ne_u16_b, vec_any_nev8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1305 OB_DEF_VAR (s390_vec_any_ne_s32_a, vec_any_nev4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1306 OB_DEF_VAR (s390_vec_any_ne_s32_b, vec_any_nev4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1307 OB_DEF_VAR (s390_vec_any_ne_b32_a, vec_any_nev4si, 0, 0, BT_OV_INT_BV4SI_BV4SI)
1308 OB_DEF_VAR (s390_vec_any_ne_b32_b, vec_any_nev4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1309 OB_DEF_VAR (s390_vec_any_ne_b32_c, vec_any_nev4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1310 OB_DEF_VAR (s390_vec_any_ne_u32_a, vec_any_nev4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1311 OB_DEF_VAR (s390_vec_any_ne_u32_b, vec_any_nev4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1312 OB_DEF_VAR (s390_vec_any_ne_s64_a, vec_any_nev2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1313 OB_DEF_VAR (s390_vec_any_ne_s64_b, vec_any_nev2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1314 OB_DEF_VAR (s390_vec_any_ne_b64_a, vec_any_nev2di, 0, 0, BT_OV_INT_BV2DI_BV2DI)
1315 OB_DEF_VAR (s390_vec_any_ne_b64_b, vec_any_nev2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1316 OB_DEF_VAR (s390_vec_any_ne_b64_c, vec_any_nev2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1317 OB_DEF_VAR (s390_vec_any_ne_u64_a, vec_any_nev2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1318 OB_DEF_VAR (s390_vec_any_ne_u64_b, vec_any_nev2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1319 OB_DEF_VAR (s390_vec_any_ne_flt, vec_any_nev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1320 OB_DEF_VAR (s390_vec_any_ne_dbl, vec_any_nev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1321
1322 OB_DEF (s390_vec_any_ge, s390_vec_any_ge_s8_a,s390_vec_any_ge_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1323 OB_DEF_VAR (s390_vec_any_ge_s8_a, vec_any_gev16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1324 OB_DEF_VAR (s390_vec_any_ge_s8_b, vec_any_gev16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1325 OB_DEF_VAR (s390_vec_any_ge_b8_a, vec_any_geuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1326 OB_DEF_VAR (s390_vec_any_ge_b8_b, vec_any_gev16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1327 OB_DEF_VAR (s390_vec_any_ge_b8_c, vec_any_geuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1328 OB_DEF_VAR (s390_vec_any_ge_u8_a, vec_any_geuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1329 OB_DEF_VAR (s390_vec_any_ge_u8_b, vec_any_geuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1330 OB_DEF_VAR (s390_vec_any_ge_s16_a, vec_any_gev8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1331 OB_DEF_VAR (s390_vec_any_ge_s16_b, vec_any_gev8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1332 OB_DEF_VAR (s390_vec_any_ge_b16_a, vec_any_geuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1333 OB_DEF_VAR (s390_vec_any_ge_b16_b, vec_any_gev8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1334 OB_DEF_VAR (s390_vec_any_ge_b16_c, vec_any_geuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1335 OB_DEF_VAR (s390_vec_any_ge_u16_a, vec_any_geuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1336 OB_DEF_VAR (s390_vec_any_ge_u16_b, vec_any_geuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1337 OB_DEF_VAR (s390_vec_any_ge_s32_a, vec_any_gev4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1338 OB_DEF_VAR (s390_vec_any_ge_s32_b, vec_any_gev4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1339 OB_DEF_VAR (s390_vec_any_ge_b32_a, vec_any_geuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1340 OB_DEF_VAR (s390_vec_any_ge_b32_b, vec_any_gev4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1341 OB_DEF_VAR (s390_vec_any_ge_b32_c, vec_any_geuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1342 OB_DEF_VAR (s390_vec_any_ge_u32_a, vec_any_geuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1343 OB_DEF_VAR (s390_vec_any_ge_u32_b, vec_any_geuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1344 OB_DEF_VAR (s390_vec_any_ge_s64_a, vec_any_gev2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1345 OB_DEF_VAR (s390_vec_any_ge_s64_b, vec_any_gev2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1346 OB_DEF_VAR (s390_vec_any_ge_b64_a, vec_any_geuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1347 OB_DEF_VAR (s390_vec_any_ge_b64_b, vec_any_gev2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1348 OB_DEF_VAR (s390_vec_any_ge_b64_c, vec_any_geuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1349 OB_DEF_VAR (s390_vec_any_ge_u64_a, vec_any_geuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1350 OB_DEF_VAR (s390_vec_any_ge_u64_b, vec_any_geuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1351 OB_DEF_VAR (s390_vec_any_ge_flt, vec_any_gev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1352 OB_DEF_VAR (s390_vec_any_ge_dbl, vec_any_gev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1353
1354 OB_DEF (s390_vec_any_gt, s390_vec_any_gt_s8_a,s390_vec_any_gt_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1355 OB_DEF_VAR (s390_vec_any_gt_s8_a, vec_any_gtv16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1356 OB_DEF_VAR (s390_vec_any_gt_s8_b, vec_any_gtv16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1357 OB_DEF_VAR (s390_vec_any_gt_b8_a, vec_any_gtuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1358 OB_DEF_VAR (s390_vec_any_gt_b8_b, vec_any_gtv16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1359 OB_DEF_VAR (s390_vec_any_gt_b8_c, vec_any_gtuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1360 OB_DEF_VAR (s390_vec_any_gt_u8_a, vec_any_gtuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1361 OB_DEF_VAR (s390_vec_any_gt_u8_b, vec_any_gtuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1362 OB_DEF_VAR (s390_vec_any_gt_s16_a, vec_any_gtv8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1363 OB_DEF_VAR (s390_vec_any_gt_s16_b, vec_any_gtv8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1364 OB_DEF_VAR (s390_vec_any_gt_b16_a, vec_any_gtuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1365 OB_DEF_VAR (s390_vec_any_gt_b16_b, vec_any_gtv8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1366 OB_DEF_VAR (s390_vec_any_gt_b16_c, vec_any_gtuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1367 OB_DEF_VAR (s390_vec_any_gt_u16_a, vec_any_gtuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1368 OB_DEF_VAR (s390_vec_any_gt_u16_b, vec_any_gtuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1369 OB_DEF_VAR (s390_vec_any_gt_s32_a, vec_any_gtv4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1370 OB_DEF_VAR (s390_vec_any_gt_s32_b, vec_any_gtv4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1371 OB_DEF_VAR (s390_vec_any_gt_b32_a, vec_any_gtuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1372 OB_DEF_VAR (s390_vec_any_gt_b32_b, vec_any_gtv4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1373 OB_DEF_VAR (s390_vec_any_gt_b32_c, vec_any_gtuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1374 OB_DEF_VAR (s390_vec_any_gt_u32_a, vec_any_gtuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1375 OB_DEF_VAR (s390_vec_any_gt_u32_b, vec_any_gtuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1376 OB_DEF_VAR (s390_vec_any_gt_s64_a, vec_any_gtv2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1377 OB_DEF_VAR (s390_vec_any_gt_s64_b, vec_any_gtv2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1378 OB_DEF_VAR (s390_vec_any_gt_b64_a, vec_any_gtuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1379 OB_DEF_VAR (s390_vec_any_gt_b64_b, vec_any_gtv2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1380 OB_DEF_VAR (s390_vec_any_gt_b64_c, vec_any_gtuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1381 OB_DEF_VAR (s390_vec_any_gt_u64_a, vec_any_gtuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1382 OB_DEF_VAR (s390_vec_any_gt_u64_b, vec_any_gtuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1383 OB_DEF_VAR (s390_vec_any_gt_flt, vec_any_gtv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1384 OB_DEF_VAR (s390_vec_any_gt_dbl, vec_any_gtv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1385
1386 OB_DEF (s390_vec_any_le, s390_vec_any_le_s8_a,s390_vec_any_le_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1387 OB_DEF_VAR (s390_vec_any_le_s8_a, vec_any_lev16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1388 OB_DEF_VAR (s390_vec_any_le_s8_b, vec_any_lev16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1389 OB_DEF_VAR (s390_vec_any_le_b8_a, vec_any_leuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1390 OB_DEF_VAR (s390_vec_any_le_b8_b, vec_any_lev16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1391 OB_DEF_VAR (s390_vec_any_le_b8_c, vec_any_leuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1392 OB_DEF_VAR (s390_vec_any_le_u8_a, vec_any_leuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1393 OB_DEF_VAR (s390_vec_any_le_u8_b, vec_any_leuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1394 OB_DEF_VAR (s390_vec_any_le_s16_a, vec_any_lev8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1395 OB_DEF_VAR (s390_vec_any_le_s16_b, vec_any_lev8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1396 OB_DEF_VAR (s390_vec_any_le_b16_a, vec_any_leuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1397 OB_DEF_VAR (s390_vec_any_le_b16_b, vec_any_lev8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1398 OB_DEF_VAR (s390_vec_any_le_b16_c, vec_any_leuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1399 OB_DEF_VAR (s390_vec_any_le_u16_a, vec_any_leuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1400 OB_DEF_VAR (s390_vec_any_le_u16_b, vec_any_leuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1401 OB_DEF_VAR (s390_vec_any_le_s32_a, vec_any_lev4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1402 OB_DEF_VAR (s390_vec_any_le_s32_b, vec_any_lev4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1403 OB_DEF_VAR (s390_vec_any_le_b32_a, vec_any_leuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1404 OB_DEF_VAR (s390_vec_any_le_b32_b, vec_any_lev4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1405 OB_DEF_VAR (s390_vec_any_le_b32_c, vec_any_leuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1406 OB_DEF_VAR (s390_vec_any_le_u32_a, vec_any_leuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1407 OB_DEF_VAR (s390_vec_any_le_u32_b, vec_any_leuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1408 OB_DEF_VAR (s390_vec_any_le_s64_a, vec_any_lev2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1409 OB_DEF_VAR (s390_vec_any_le_s64_b, vec_any_lev2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1410 OB_DEF_VAR (s390_vec_any_le_b64_a, vec_any_leuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1411 OB_DEF_VAR (s390_vec_any_le_b64_b, vec_any_lev2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1412 OB_DEF_VAR (s390_vec_any_le_b64_c, vec_any_leuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1413 OB_DEF_VAR (s390_vec_any_le_u64_a, vec_any_leuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1414 OB_DEF_VAR (s390_vec_any_le_u64_b, vec_any_leuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1415 OB_DEF_VAR (s390_vec_any_le_flt, vec_any_lev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1416 OB_DEF_VAR (s390_vec_any_le_dbl, vec_any_lev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1417
1418 OB_DEF (s390_vec_any_lt, s390_vec_any_lt_s8_a,s390_vec_any_lt_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
1419 OB_DEF_VAR (s390_vec_any_lt_s8_a, vec_any_ltv16qi, 0, 0, BT_OV_INT_V16QI_V16QI)
1420 OB_DEF_VAR (s390_vec_any_lt_s8_b, vec_any_ltv16qi, B_DEP, 0, BT_OV_INT_V16QI_BV16QI)
1421 OB_DEF_VAR (s390_vec_any_lt_b8_a, vec_any_ltuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_BV16QI)
1422 OB_DEF_VAR (s390_vec_any_lt_b8_b, vec_any_ltv16qi, B_DEP, 0, BT_OV_INT_BV16QI_V16QI)
1423 OB_DEF_VAR (s390_vec_any_lt_b8_c, vec_any_ltuv16qi, B_DEP, 0, BT_OV_INT_BV16QI_UV16QI)
1424 OB_DEF_VAR (s390_vec_any_lt_u8_a, vec_any_ltuv16qi, 0, 0, BT_OV_INT_UV16QI_UV16QI)
1425 OB_DEF_VAR (s390_vec_any_lt_u8_b, vec_any_ltuv16qi, B_DEP, 0, BT_OV_INT_UV16QI_BV16QI)
1426 OB_DEF_VAR (s390_vec_any_lt_s16_a, vec_any_ltv8hi, 0, 0, BT_OV_INT_V8HI_V8HI)
1427 OB_DEF_VAR (s390_vec_any_lt_s16_b, vec_any_ltv8hi, B_DEP, 0, BT_OV_INT_V8HI_BV8HI)
1428 OB_DEF_VAR (s390_vec_any_lt_b16_a, vec_any_ltuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_BV8HI)
1429 OB_DEF_VAR (s390_vec_any_lt_b16_b, vec_any_ltv8hi, B_DEP, 0, BT_OV_INT_BV8HI_V8HI)
1430 OB_DEF_VAR (s390_vec_any_lt_b16_c, vec_any_ltuv8hi, B_DEP, 0, BT_OV_INT_BV8HI_UV8HI)
1431 OB_DEF_VAR (s390_vec_any_lt_u16_a, vec_any_ltuv8hi, 0, 0, BT_OV_INT_UV8HI_UV8HI)
1432 OB_DEF_VAR (s390_vec_any_lt_u16_b, vec_any_ltuv8hi, B_DEP, 0, BT_OV_INT_UV8HI_BV8HI)
1433 OB_DEF_VAR (s390_vec_any_lt_s32_a, vec_any_ltv4si, 0, 0, BT_OV_INT_V4SI_V4SI)
1434 OB_DEF_VAR (s390_vec_any_lt_s32_b, vec_any_ltv4si, B_DEP, 0, BT_OV_INT_V4SI_BV4SI)
1435 OB_DEF_VAR (s390_vec_any_lt_b32_a, vec_any_ltuv4si, B_DEP, 0, BT_OV_INT_BV4SI_BV4SI)
1436 OB_DEF_VAR (s390_vec_any_lt_b32_b, vec_any_ltv4si, B_DEP, 0, BT_OV_INT_BV4SI_V4SI)
1437 OB_DEF_VAR (s390_vec_any_lt_b32_c, vec_any_ltuv4si, B_DEP, 0, BT_OV_INT_BV4SI_UV4SI)
1438 OB_DEF_VAR (s390_vec_any_lt_u32_a, vec_any_ltuv4si, 0, 0, BT_OV_INT_UV4SI_UV4SI)
1439 OB_DEF_VAR (s390_vec_any_lt_u32_b, vec_any_ltuv4si, B_DEP, 0, BT_OV_INT_UV4SI_BV4SI)
1440 OB_DEF_VAR (s390_vec_any_lt_s64_a, vec_any_ltv2di, 0, 0, BT_OV_INT_V2DI_V2DI)
1441 OB_DEF_VAR (s390_vec_any_lt_s64_b, vec_any_ltv2di, B_DEP, 0, BT_OV_INT_V2DI_BV2DI)
1442 OB_DEF_VAR (s390_vec_any_lt_b64_a, vec_any_ltuv2di, B_DEP, 0, BT_OV_INT_BV2DI_BV2DI)
1443 OB_DEF_VAR (s390_vec_any_lt_b64_b, vec_any_ltv2di, B_DEP, 0, BT_OV_INT_BV2DI_V2DI)
1444 OB_DEF_VAR (s390_vec_any_lt_b64_c, vec_any_ltuv2di, B_DEP, 0, BT_OV_INT_BV2DI_UV2DI)
1445 OB_DEF_VAR (s390_vec_any_lt_u64_a, vec_any_ltuv2di, 0, 0, BT_OV_INT_UV2DI_UV2DI)
1446 OB_DEF_VAR (s390_vec_any_lt_u64_b, vec_any_ltuv2di, B_DEP, 0, BT_OV_INT_UV2DI_BV2DI)
1447 OB_DEF_VAR (s390_vec_any_lt_flt, vec_any_ltv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
1448 OB_DEF_VAR (s390_vec_any_lt_dbl, vec_any_ltv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
1449
1450 OB_DEF (s390_vec_cmpeq, s390_vec_cmpeq_s8, s390_vec_cmpeq_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1451 OB_DEF_VAR (s390_vec_cmpeq_s8, s390_vceqb, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
1452 OB_DEF_VAR (s390_vec_cmpeq_u8, s390_vceqb, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
1453 OB_DEF_VAR (s390_vec_cmpeq_b8, s390_vceqb, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
1454 OB_DEF_VAR (s390_vec_cmpeq_s16, s390_vceqh, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
1455 OB_DEF_VAR (s390_vec_cmpeq_u16, s390_vceqh, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
1456 OB_DEF_VAR (s390_vec_cmpeq_b16, s390_vceqh, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
1457 OB_DEF_VAR (s390_vec_cmpeq_s32, s390_vceqf, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
1458 OB_DEF_VAR (s390_vec_cmpeq_u32, s390_vceqf, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
1459 OB_DEF_VAR (s390_vec_cmpeq_b32, s390_vceqf, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
1460 OB_DEF_VAR (s390_vec_cmpeq_s64, s390_vceqg, 0, 0, BT_OV_BV2DI_V2DI_V2DI)
1461 OB_DEF_VAR (s390_vec_cmpeq_u64, s390_vceqg, 0, 0, BT_OV_BV2DI_UV2DI_UV2DI)
1462 OB_DEF_VAR (s390_vec_cmpeq_b64, s390_vceqg, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
1463 OB_DEF_VAR (s390_vec_cmpeq_flt, s390_vfcesb, B_VXE, 0, BT_OV_BV4SI_V4SF_V4SF)
1464 OB_DEF_VAR (s390_vec_cmpeq_dbl, s390_vfcedb, 0, 0, BT_OV_BV2DI_V2DF_V2DF)
1465
1466 B_DEF (s390_vceqb, vec_cmpeqv16qi, 0, B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1467 B_DEF (s390_vceqh, vec_cmpeqv8hi, 0, B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1468 B_DEF (s390_vceqf, vec_cmpeqv4si, 0, B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1469 B_DEF (s390_vceqg, vec_cmpeqv2di, 0, B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1470 B_DEF (s390_vfcesb, vec_cmpeqv4sf, 0, B_VXE, 0, BT_FN_V4SI_V4SF_V4SF)
1471 B_DEF (s390_vfcedb, vec_cmpeqv2df, 0, B_VX, 0, BT_FN_V2DI_V2DF_V2DF)
1472
1473 OB_DEF (s390_vec_cmpge, s390_vec_cmpge_s8, s390_vec_cmpge_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1474 OB_DEF_VAR (s390_vec_cmpge_s8, vec_cmpgev16qi, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
1475 OB_DEF_VAR (s390_vec_cmpge_u8, vec_cmpgeuv16qi, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
1476 OB_DEF_VAR (s390_vec_cmpge_s16, vec_cmpgev8hi, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
1477 OB_DEF_VAR (s390_vec_cmpge_u16, vec_cmpgeuv8hi, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
1478 OB_DEF_VAR (s390_vec_cmpge_s32, vec_cmpgev4si, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
1479 OB_DEF_VAR (s390_vec_cmpge_u32, vec_cmpgeuv4si, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
1480 OB_DEF_VAR (s390_vec_cmpge_s64, vec_cmpgev2di, 0, 0, BT_OV_BV2DI_V2DI_V2DI)
1481 OB_DEF_VAR (s390_vec_cmpge_u64, vec_cmpgeuv2di, 0, 0, BT_OV_BV2DI_UV2DI_UV2DI)
1482 OB_DEF_VAR (s390_vec_cmpge_flt, s390_vfchesb, B_VXE, 0, BT_OV_BV4SI_V4SF_V4SF)
1483 OB_DEF_VAR (s390_vec_cmpge_dbl, s390_vfchedb, 0, 0, BT_OV_BV2DI_V2DF_V2DF)
1484
1485 B_DEF (vec_cmpgev16qi, vec_cmpgev16qi, 0, B_INT | B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1486 B_DEF (vec_cmpgeuv16qi, vec_cmpgeuv16qi, 0, B_INT | B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1487 B_DEF (vec_cmpgev8hi, vec_cmpgev8hi, 0, B_INT | B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1488 B_DEF (vec_cmpgeuv8hi, vec_cmpgeuv8hi, 0, B_INT | B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1489 B_DEF (vec_cmpgev4si, vec_cmpgev4si, 0, B_INT | B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1490 B_DEF (vec_cmpgeuv4si, vec_cmpgeuv4si, 0, B_INT | B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1491 B_DEF (vec_cmpgev2di, vec_cmpgev2di, 0, B_INT | B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1492 B_DEF (vec_cmpgeuv2di, vec_cmpgeuv2di, 0, B_INT | B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1493 B_DEF (s390_vfchesb, vec_cmpgev4sf, 0, B_VXE, 0, BT_FN_V4SI_V4SF_V4SF)
1494 B_DEF (s390_vfchedb, vec_cmpgev2df, 0, B_VX, 0, BT_FN_V2DI_V2DF_V2DF)
1495
1496 OB_DEF (s390_vec_cmpgt, s390_vec_cmpgt_s8, s390_vec_cmpgt_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1497 OB_DEF_VAR (s390_vec_cmpgt_s8, s390_vchb, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
1498 OB_DEF_VAR (s390_vec_cmpgt_u8, s390_vchlb, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
1499 OB_DEF_VAR (s390_vec_cmpgt_s16, s390_vchh, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
1500 OB_DEF_VAR (s390_vec_cmpgt_u16, s390_vchlh, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
1501 OB_DEF_VAR (s390_vec_cmpgt_s32, s390_vchf, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
1502 OB_DEF_VAR (s390_vec_cmpgt_u32, s390_vchlf, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
1503 OB_DEF_VAR (s390_vec_cmpgt_s64, s390_vchg, 0, 0, BT_OV_BV2DI_V2DI_V2DI)
1504 OB_DEF_VAR (s390_vec_cmpgt_u64, s390_vchlg, 0, 0, BT_OV_BV2DI_UV2DI_UV2DI)
1505 OB_DEF_VAR (s390_vec_cmpgt_flt, s390_vfchsb, B_VXE, 0, BT_OV_BV4SI_V4SF_V4SF)
1506 OB_DEF_VAR (s390_vec_cmpgt_dbl, s390_vfchdb, 0, 0, BT_OV_BV2DI_V2DF_V2DF)
1507
1508 B_DEF (s390_vchb, vec_cmpgtv16qi, 0, B_VX, 0, BT_FN_V16QI_V16QI_V16QI)
1509 B_DEF (s390_vchlb, vec_cmpgtuv16qi, 0, B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1510 B_DEF (s390_vchh, vec_cmpgtv8hi, 0, B_VX, 0, BT_FN_V8HI_V8HI_V8HI)
1511 B_DEF (s390_vchlh, vec_cmpgtuv8hi, 0, B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1512 B_DEF (s390_vchf, vec_cmpgtv4si, 0, B_VX, 0, BT_FN_V4SI_V4SI_V4SI)
1513 B_DEF (s390_vchlf, vec_cmpgtuv4si, 0, B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1514 B_DEF (s390_vchg, vec_cmpgtv2di, 0, B_VX, 0, BT_FN_V2DI_V2DI_V2DI)
1515 B_DEF (s390_vchlg, vec_cmpgtuv2di, 0, B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1516 B_DEF (s390_vfchsb, vec_cmpgtv4sf, 0, B_VXE, 0, BT_FN_V4SI_V4SF_V4SF)
1517 B_DEF (s390_vfchdb, vec_cmpgtv2df, 0, B_VX, 0, BT_FN_V2DI_V2DF_V2DF)
1518
1519 OB_DEF (s390_vec_cmple, s390_vec_cmple_s8, s390_vec_cmple_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1520 OB_DEF_VAR (s390_vec_cmple_s8, vec_cmplev16qi, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
1521 OB_DEF_VAR (s390_vec_cmple_u8, vec_cmpleuv16qi, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
1522 OB_DEF_VAR (s390_vec_cmple_s16, vec_cmplev8hi, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
1523 OB_DEF_VAR (s390_vec_cmple_u16, vec_cmpleuv8hi, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
1524 OB_DEF_VAR (s390_vec_cmple_s32, vec_cmplev4si, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
1525 OB_DEF_VAR (s390_vec_cmple_u32, vec_cmpleuv4si, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
1526 OB_DEF_VAR (s390_vec_cmple_s64, vec_cmplev2di, 0, 0, BT_OV_BV2DI_V2DI_V2DI)
1527 OB_DEF_VAR (s390_vec_cmple_u64, vec_cmpleuv2di, 0, 0, BT_OV_BV2DI_UV2DI_UV2DI)
1528 OB_DEF_VAR (s390_vec_cmple_flt, vec_cmplev4sf, B_VXE, 0, BT_OV_BV4SI_V4SF_V4SF)
1529 OB_DEF_VAR (s390_vec_cmple_dbl, vec_cmplev2df, 0, 0, BT_OV_BV2DI_V2DF_V2DF)
1530
1531 B_DEF (vec_cmplev16qi, vec_cmplev16qi, 0, B_INT | B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1532 B_DEF (vec_cmpleuv16qi, vec_cmpleuv16qi, 0, B_INT | B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1533 B_DEF (vec_cmplev8hi, vec_cmplev8hi, 0, B_INT | B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1534 B_DEF (vec_cmpleuv8hi, vec_cmpleuv8hi, 0, B_INT | B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1535 B_DEF (vec_cmplev4si, vec_cmplev4si, 0, B_INT | B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1536 B_DEF (vec_cmpleuv4si, vec_cmpleuv4si, 0, B_INT | B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1537 B_DEF (vec_cmplev2di, vec_cmplev2di, 0, B_INT | B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1538 B_DEF (vec_cmpleuv2di, vec_cmpleuv2di, 0, B_INT | B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1539 B_DEF (vec_cmplev4sf, vec_cmplev4sf, 0, B_INT | B_VXE, 0, BT_FN_V4SI_V4SF_V4SF)
1540 B_DEF (vec_cmplev2df, vec_cmplev2df, 0, B_INT | B_VX, 0, BT_FN_V2DI_V2DF_V2DF)
1541
1542 OB_DEF (s390_vec_cmplt, s390_vec_cmplt_s8, s390_vec_cmplt_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1543 OB_DEF_VAR (s390_vec_cmplt_s8, vec_cmpltv16qi, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
1544 OB_DEF_VAR (s390_vec_cmplt_u8, vec_cmpltuv16qi, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
1545 OB_DEF_VAR (s390_vec_cmplt_s16, vec_cmpltv8hi, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
1546 OB_DEF_VAR (s390_vec_cmplt_u16, vec_cmpltuv8hi, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
1547 OB_DEF_VAR (s390_vec_cmplt_s32, vec_cmpltv4si, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
1548 OB_DEF_VAR (s390_vec_cmplt_u32, vec_cmpltuv4si, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
1549 OB_DEF_VAR (s390_vec_cmplt_s64, vec_cmpltv2di, 0, 0, BT_OV_BV2DI_V2DI_V2DI)
1550 OB_DEF_VAR (s390_vec_cmplt_u64, vec_cmpltuv2di, 0, 0, BT_OV_BV2DI_UV2DI_UV2DI)
1551 OB_DEF_VAR (s390_vec_cmplt_flt, vec_cmpltv4sf, B_VXE, 0, BT_OV_BV4SI_V4SF_V4SF)
1552 OB_DEF_VAR (s390_vec_cmplt_dbl, vec_cmpltv2df, 0, 0, BT_OV_BV2DI_V2DF_V2DF)
1553
1554 B_DEF (vec_cmpltv16qi, vec_cmpltv16qi, 0, B_INT | B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1555 B_DEF (vec_cmpltuv16qi, vec_cmpltuv16qi, 0, B_INT | B_VX, 0, BT_FN_V16QI_UV16QI_UV16QI)
1556 B_DEF (vec_cmpltv8hi, vec_cmpltv8hi, 0, B_INT | B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1557 B_DEF (vec_cmpltuv8hi, vec_cmpltuv8hi, 0, B_INT | B_VX, 0, BT_FN_V8HI_UV8HI_UV8HI)
1558 B_DEF (vec_cmpltv4si, vec_cmpltv4si, 0, B_INT | B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1559 B_DEF (vec_cmpltuv4si, vec_cmpltuv4si, 0, B_INT | B_VX, 0, BT_FN_V4SI_UV4SI_UV4SI)
1560 B_DEF (vec_cmpltv2di, vec_cmpltv2di, 0, B_INT | B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1561 B_DEF (vec_cmpltuv2di, vec_cmpltuv2di, 0, B_INT | B_VX, 0, BT_FN_V2DI_UV2DI_UV2DI)
1562 B_DEF (vec_cmpltv4sf, vec_cmpltv4sf, 0, B_INT | B_VXE, 0, BT_FN_V4SI_V4SF_V4SF)
1563 B_DEF (vec_cmpltv2df, vec_cmpltv2df, 0, B_INT | B_VX, 0, BT_FN_V2DI_V2DF_V2DF)
1564
1565 OB_DEF (s390_vec_cntlz, s390_vec_cntlz_s8, s390_vec_cntlz_u64, B_VX, BT_FN_OV4SI_OV4SI)
1566 OB_DEF_VAR (s390_vec_cntlz_s8, s390_vclzb, 0, 0, BT_OV_UV16QI_V16QI)
1567 OB_DEF_VAR (s390_vec_cntlz_u8, s390_vclzb, 0, 0, BT_OV_UV16QI_UV16QI)
1568 OB_DEF_VAR (s390_vec_cntlz_s16, s390_vclzh, 0, 0, BT_OV_UV8HI_V8HI)
1569 OB_DEF_VAR (s390_vec_cntlz_u16, s390_vclzh, 0, 0, BT_OV_UV8HI_UV8HI)
1570 OB_DEF_VAR (s390_vec_cntlz_s32, s390_vclzf, 0, 0, BT_OV_UV4SI_V4SI)
1571 OB_DEF_VAR (s390_vec_cntlz_u32, s390_vclzf, 0, 0, BT_OV_UV4SI_UV4SI)
1572 OB_DEF_VAR (s390_vec_cntlz_s64, s390_vclzg, 0, 0, BT_OV_UV2DI_V2DI)
1573 OB_DEF_VAR (s390_vec_cntlz_u64, s390_vclzg, 0, 0, BT_OV_UV2DI_UV2DI)
1574
1575 B_DEF (s390_vclzb, clzv16qi2, 0, B_VX, 0, BT_FN_UV16QI_UV16QI)
1576 B_DEF (s390_vclzh, clzv8hi2, 0, B_VX, 0, BT_FN_UV8HI_UV8HI)
1577 B_DEF (s390_vclzf, clzv4si2, 0, B_VX, 0, BT_FN_UV4SI_UV4SI)
1578 B_DEF (s390_vclzg, clzv2di2, 0, B_VX, 0, BT_FN_UV2DI_UV2DI)
1579
1580 OB_DEF (s390_vec_cnttz, s390_vec_cnttz_s8, s390_vec_cnttz_u64, B_VX, BT_FN_OV4SI_OV4SI)
1581 OB_DEF_VAR (s390_vec_cnttz_s8, s390_vctzb, 0, 0, BT_OV_UV16QI_V16QI)
1582 OB_DEF_VAR (s390_vec_cnttz_u8, s390_vctzb, 0, 0, BT_OV_UV16QI_UV16QI)
1583 OB_DEF_VAR (s390_vec_cnttz_s16, s390_vctzh, 0, 0, BT_OV_UV8HI_V8HI)
1584 OB_DEF_VAR (s390_vec_cnttz_u16, s390_vctzh, 0, 0, BT_OV_UV8HI_UV8HI)
1585 OB_DEF_VAR (s390_vec_cnttz_s32, s390_vctzf, 0, 0, BT_OV_UV4SI_V4SI)
1586 OB_DEF_VAR (s390_vec_cnttz_u32, s390_vctzf, 0, 0, BT_OV_UV4SI_UV4SI)
1587 OB_DEF_VAR (s390_vec_cnttz_s64, s390_vctzg, 0, 0, BT_OV_UV2DI_V2DI)
1588 OB_DEF_VAR (s390_vec_cnttz_u64, s390_vctzg, 0, 0, BT_OV_UV2DI_UV2DI)
1589
1590 B_DEF (s390_vctzb, ctzv16qi2, 0, B_VX, 0, BT_FN_UV16QI_UV16QI)
1591 B_DEF (s390_vctzh, ctzv8hi2, 0, B_VX, 0, BT_FN_UV8HI_UV8HI)
1592 B_DEF (s390_vctzf, ctzv4si2, 0, B_VX, 0, BT_FN_UV4SI_UV4SI)
1593 B_DEF (s390_vctzg, ctzv2di2, 0, B_VX, 0, BT_FN_UV2DI_UV2DI)
1594
1595 OB_DEF (s390_vec_xor, s390_vec_xor_b8, s390_vec_xor_dbl_c, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1596 OB_DEF_VAR (s390_vec_xor_b8, s390_vx, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
1597 OB_DEF_VAR (s390_vec_xor_s8_a, s390_vx, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
1598 OB_DEF_VAR (s390_vec_xor_s8_b, s390_vx, 0, 0, BT_OV_V16QI_V16QI_V16QI)
1599 OB_DEF_VAR (s390_vec_xor_s8_c, s390_vx, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
1600 OB_DEF_VAR (s390_vec_xor_u8_a, s390_vx, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
1601 OB_DEF_VAR (s390_vec_xor_u8_b, s390_vx, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1602 OB_DEF_VAR (s390_vec_xor_u8_c, s390_vx, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
1603 OB_DEF_VAR (s390_vec_xor_b16, s390_vx, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
1604 OB_DEF_VAR (s390_vec_xor_s16_a, s390_vx, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
1605 OB_DEF_VAR (s390_vec_xor_s16_b, s390_vx, 0, 0, BT_OV_V8HI_V8HI_V8HI)
1606 OB_DEF_VAR (s390_vec_xor_s16_c, s390_vx, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
1607 OB_DEF_VAR (s390_vec_xor_u16_a, s390_vx, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
1608 OB_DEF_VAR (s390_vec_xor_u16_b, s390_vx, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1609 OB_DEF_VAR (s390_vec_xor_u16_c, s390_vx, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
1610 OB_DEF_VAR (s390_vec_xor_b32, s390_vx, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
1611 OB_DEF_VAR (s390_vec_xor_s32_a, s390_vx, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
1612 OB_DEF_VAR (s390_vec_xor_s32_b, s390_vx, 0, 0, BT_OV_V4SI_V4SI_V4SI)
1613 OB_DEF_VAR (s390_vec_xor_s32_c, s390_vx, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
1614 OB_DEF_VAR (s390_vec_xor_u32_a, s390_vx, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
1615 OB_DEF_VAR (s390_vec_xor_u32_b, s390_vx, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1616 OB_DEF_VAR (s390_vec_xor_u32_c, s390_vx, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
1617 OB_DEF_VAR (s390_vec_xor_b64, s390_vx, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
1618 OB_DEF_VAR (s390_vec_xor_s64_a, s390_vx, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
1619 OB_DEF_VAR (s390_vec_xor_s64_b, s390_vx, 0, 0, BT_OV_V2DI_V2DI_V2DI)
1620 OB_DEF_VAR (s390_vec_xor_s64_c, s390_vx, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
1621 OB_DEF_VAR (s390_vec_xor_u64_a, s390_vx, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
1622 OB_DEF_VAR (s390_vec_xor_u64_b, s390_vx, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
1623 OB_DEF_VAR (s390_vec_xor_u64_c, s390_vx, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
1624 OB_DEF_VAR (s390_vec_xor_flt_a, s390_vx, B_VXE | B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
1625 OB_DEF_VAR (s390_vec_xor_flt_b, s390_vx, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
1626 OB_DEF_VAR (s390_vec_xor_flt_c, s390_vx, B_VXE | B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
1627 OB_DEF_VAR (s390_vec_xor_dbl_a, s390_vx, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
1628 OB_DEF_VAR (s390_vec_xor_dbl_b, s390_vx, 0, 0, BT_OV_V2DF_V2DF_V2DF)
1629 OB_DEF_VAR (s390_vec_xor_dbl_c, s390_vx, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
1630
1631 B_DEF (s390_vx, xorv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1632
1633 OB_DEF (s390_vec_gfmsum, s390_vec_gfmsum_u8, s390_vec_gfmsum_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1634 OB_DEF_VAR (s390_vec_gfmsum_u8, s390_vgfmb, 0, 0, BT_OV_UV8HI_UV16QI_UV16QI)
1635 OB_DEF_VAR (s390_vec_gfmsum_u16, s390_vgfmh, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI)
1636 OB_DEF_VAR (s390_vec_gfmsum_u32, s390_vgfmf, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI)
1637
1638 B_DEF (s390_vgfmb, vec_gfmsumv16qi, 0, B_VX, 0, BT_FN_UV8HI_UV16QI_UV16QI)
1639 B_DEF (s390_vgfmh, vec_gfmsumv8hi, 0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI)
1640 B_DEF (s390_vgfmf, vec_gfmsumv4si, 0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI)
1641 B_DEF (s390_vgfmg, vec_gfmsum_128, 0, B_VX, 0, BT_FN_UV16QI_UV2DI_UV2DI)
1642
1643 OB_DEF (s390_vec_gfmsum_accum, s390_vec_gfmsum_accum_u8,s390_vec_gfmsum_accum_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
1644 OB_DEF_VAR (s390_vec_gfmsum_accum_u8, s390_vgfmab, 0, 0, BT_OV_UV8HI_UV16QI_UV16QI_UV8HI)
1645 OB_DEF_VAR (s390_vec_gfmsum_accum_u16, s390_vgfmah, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI_UV4SI)
1646 OB_DEF_VAR (s390_vec_gfmsum_accum_u32, s390_vgfmaf, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI_UV2DI)
1647
1648 B_DEF (s390_vgfmab, vec_gfmsum_accumv16qi,0, B_VX, 0, BT_FN_UV8HI_UV16QI_UV16QI_UV8HI)
1649 B_DEF (s390_vgfmah, vec_gfmsum_accumv8hi,0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI_UV4SI)
1650 B_DEF (s390_vgfmaf, vec_gfmsum_accumv4si,0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI_UV2DI)
1651 B_DEF (s390_vgfmag, vec_gfmsum_accum_128,0, B_VX, 0, BT_FN_UV16QI_UV2DI_UV2DI_UV16QI)
1652
1653 OB_DEF (s390_vec_abs, s390_vec_abs_s8, s390_vec_abs_dbl, B_VX, BT_FN_OV4SI_OV4SI)
1654 OB_DEF_VAR (s390_vec_abs_s8, s390_vlpb, 0, 0, BT_OV_V16QI_V16QI)
1655 OB_DEF_VAR (s390_vec_abs_s16, s390_vlph, 0, 0, BT_OV_V8HI_V8HI)
1656 OB_DEF_VAR (s390_vec_abs_s32, s390_vlpf, 0, 0, BT_OV_V4SI_V4SI)
1657 OB_DEF_VAR (s390_vec_abs_s64, s390_vlpg, 0, 0, BT_OV_V2DI_V2DI)
1658 OB_DEF_VAR (s390_vec_abs_flt, s390_vflpsb, B_VXE, 0, BT_OV_V4SF_V4SF)
1659 OB_DEF_VAR (s390_vec_abs_dbl, s390_vflpdb, 0, 0, BT_OV_V2DF_V2DF)
1660
1661 B_DEF (s390_vlpb, absv16qi2, 0, B_VX, 0, BT_FN_V16QI_V16QI)
1662 B_DEF (s390_vlph, absv8hi2, 0, B_VX, 0, BT_FN_V8HI_V8HI)
1663 B_DEF (s390_vlpf, absv4si2, 0, B_VX, 0, BT_FN_V4SI_V4SI)
1664 B_DEF (s390_vlpg, absv2di2, 0, B_VX, 0, BT_FN_V2DI_V2DI)
1665 B_DEF (s390_vflpsb, absv4sf2, 0, B_VXE, 0, BT_FN_V4SF_V4SF)
1666 B_DEF (s390_vflpdb, absv2df2, 0, B_VX, 0, BT_FN_V2DF_V2DF)
1667
1668 OB_DEF (s390_vec_max, s390_vec_max_s8_a, s390_vec_max_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1669 OB_DEF_VAR (s390_vec_max_s8_a, s390_vmxb, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
1670 OB_DEF_VAR (s390_vec_max_s8_b, s390_vmxb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
1671 OB_DEF_VAR (s390_vec_max_s8_c, s390_vmxb, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
1672 OB_DEF_VAR (s390_vec_max_u8_a, s390_vmxlb, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
1673 OB_DEF_VAR (s390_vec_max_u8_b, s390_vmxlb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1674 OB_DEF_VAR (s390_vec_max_u8_c, s390_vmxlb, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
1675 OB_DEF_VAR (s390_vec_max_s16_a, s390_vmxh, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
1676 OB_DEF_VAR (s390_vec_max_s16_b, s390_vmxh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
1677 OB_DEF_VAR (s390_vec_max_s16_c, s390_vmxh, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
1678 OB_DEF_VAR (s390_vec_max_u16_a, s390_vmxlh, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
1679 OB_DEF_VAR (s390_vec_max_u16_b, s390_vmxlh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1680 OB_DEF_VAR (s390_vec_max_u16_c, s390_vmxlh, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
1681 OB_DEF_VAR (s390_vec_max_s32_a, s390_vmxf, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
1682 OB_DEF_VAR (s390_vec_max_s32_b, s390_vmxf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
1683 OB_DEF_VAR (s390_vec_max_s32_c, s390_vmxf, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
1684 OB_DEF_VAR (s390_vec_max_u32_a, s390_vmxlf, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
1685 OB_DEF_VAR (s390_vec_max_u32_b, s390_vmxlf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1686 OB_DEF_VAR (s390_vec_max_u32_c, s390_vmxlf, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
1687 OB_DEF_VAR (s390_vec_max_s64_a, s390_vmxg, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
1688 OB_DEF_VAR (s390_vec_max_s64_b, s390_vmxg, 0, 0, BT_OV_V2DI_V2DI_V2DI)
1689 OB_DEF_VAR (s390_vec_max_s64_c, s390_vmxg, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
1690 OB_DEF_VAR (s390_vec_max_u64_a, s390_vmxlg, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
1691 OB_DEF_VAR (s390_vec_max_u64_b, s390_vmxlg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
1692 OB_DEF_VAR (s390_vec_max_u64_c, s390_vmxlg, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
1693 OB_DEF_VAR (s390_vec_max_flt, s390_vfmaxsb_4, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
1694 OB_DEF_VAR (s390_vec_max_dbl, s390_vfmaxdb_4, 0, 0, BT_OV_V2DF_V2DF_V2DF)
1695
1696 B_DEF (s390_vmxb, smaxv16qi3, 0, B_VX, 0, BT_FN_V16QI_BV16QI_V16QI)
1697 B_DEF (s390_vmxlb, umaxv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1698 B_DEF (s390_vmxh, smaxv8hi3, 0, B_VX, 0, BT_FN_V8HI_BV8HI_V8HI)
1699 B_DEF (s390_vmxlh, umaxv8hi3, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
1700 B_DEF (s390_vmxf, smaxv4si3, 0, B_VX, 0, BT_FN_V4SI_BV4SI_V4SI)
1701 B_DEF (s390_vmxlf, umaxv4si3, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
1702 B_DEF (s390_vmxg, smaxv2di3, 0, B_VX, 0, BT_FN_V2DI_BV2DI_V2DI)
1703 B_DEF (s390_vmxlg, umaxv2di3, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
1704 B_DEF (s390_vfmaxsb, vfmaxv4sf, 0, B_VXE, O3_U4, BT_FN_V4SF_V4SF_V4SF_INT)
1705 B_DEF (s390_vfmaxdb, vfmaxv2df, 0, B_VXE, O3_U4, BT_FN_V2DF_V2DF_V2DF_INT)
1706 B_DEF (s390_vfmaxsb_4, smaxv4sf3, 0, B_INT | B_VXE, 0, BT_FN_V4SF_V4SF_V4SF)
1707 B_DEF (s390_vfmaxdb_4, smaxv2df3, 0, B_INT | B_VX, 0, BT_FN_V2DF_V2DF_V2DF)
1708
1709 OB_DEF (s390_vec_min, s390_vec_min_s8_a, s390_vec_min_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1710 OB_DEF_VAR (s390_vec_min_s8_a, s390_vmnb, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
1711 OB_DEF_VAR (s390_vec_min_s8_b, s390_vmnb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
1712 OB_DEF_VAR (s390_vec_min_s8_c, s390_vmnb, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
1713 OB_DEF_VAR (s390_vec_min_u8_a, s390_vmnlb, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
1714 OB_DEF_VAR (s390_vec_min_u8_b, s390_vmnlb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1715 OB_DEF_VAR (s390_vec_min_u8_c, s390_vmnlb, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
1716 OB_DEF_VAR (s390_vec_min_s16_a, s390_vmnh, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
1717 OB_DEF_VAR (s390_vec_min_s16_b, s390_vmnh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
1718 OB_DEF_VAR (s390_vec_min_s16_c, s390_vmnh, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
1719 OB_DEF_VAR (s390_vec_min_u16_a, s390_vmnlh, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
1720 OB_DEF_VAR (s390_vec_min_u16_b, s390_vmnlh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1721 OB_DEF_VAR (s390_vec_min_u16_c, s390_vmnlh, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
1722 OB_DEF_VAR (s390_vec_min_s32_a, s390_vmnf, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
1723 OB_DEF_VAR (s390_vec_min_s32_b, s390_vmnf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
1724 OB_DEF_VAR (s390_vec_min_s32_c, s390_vmnf, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
1725 OB_DEF_VAR (s390_vec_min_u32_a, s390_vmnlf, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
1726 OB_DEF_VAR (s390_vec_min_u32_b, s390_vmnlf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1727 OB_DEF_VAR (s390_vec_min_u32_c, s390_vmnlf, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
1728 OB_DEF_VAR (s390_vec_min_s64_a, s390_vmng, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
1729 OB_DEF_VAR (s390_vec_min_s64_b, s390_vmng, 0, 0, BT_OV_V2DI_V2DI_V2DI)
1730 OB_DEF_VAR (s390_vec_min_s64_c, s390_vmng, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
1731 OB_DEF_VAR (s390_vec_min_u64_a, s390_vmnlg, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
1732 OB_DEF_VAR (s390_vec_min_u64_b, s390_vmnlg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
1733 OB_DEF_VAR (s390_vec_min_u64_c, s390_vmnlg, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
1734 OB_DEF_VAR (s390_vec_min_flt, s390_vfminsb_4, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
1735 OB_DEF_VAR (s390_vec_min_dbl, s390_vfmindb_4, 0, 0, BT_OV_V2DF_V2DF_V2DF)
1736
1737 B_DEF (s390_vmnb, sminv16qi3, 0, B_VX, 0, BT_FN_V16QI_BV16QI_V16QI)
1738 B_DEF (s390_vmnlb, uminv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1739 B_DEF (s390_vmnh, sminv8hi3, 0, B_VX, 0, BT_FN_V8HI_BV8HI_V8HI)
1740 B_DEF (s390_vmnlh, uminv8hi3, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
1741 B_DEF (s390_vmnf, sminv4si3, 0, B_VX, 0, BT_FN_V4SI_BV4SI_V4SI)
1742 B_DEF (s390_vmnlf, uminv4si3, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
1743 B_DEF (s390_vmng, sminv2di3, 0, B_VX, 0, BT_FN_V2DI_BV2DI_V2DI)
1744 B_DEF (s390_vmnlg, uminv2di3, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
1745 B_DEF (s390_vfminsb, vfminv4sf, 0, B_VXE, O3_U4, BT_FN_V4SF_V4SF_V4SF_INT)
1746 B_DEF (s390_vfmindb, vfminv2df, 0, B_VXE, O3_U4, BT_FN_V2DF_V2DF_V2DF_INT)
1747 B_DEF (s390_vfminsb_4, sminv4sf3, 0, B_INT | B_VXE, 0, BT_FN_V4SF_V4SF_V4SF) /* vfminsb */
1748 B_DEF (s390_vfmindb_4, sminv2df3, 0, B_INT | B_VX, 0, BT_FN_V2DF_V2DF_V2DF) /* vfmindb */
1749
1750 OB_DEF (s390_vec_mladd, s390_vec_mladd_u8, s390_vec_mladd_s32_c,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
1751 OB_DEF_VAR (s390_vec_mladd_u8, s390_vmalb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
1752 OB_DEF_VAR (s390_vec_mladd_s8_a, s390_vmalb, 0, 0, BT_OV_V16QI_UV16QI_V16QI_V16QI)
1753 OB_DEF_VAR (s390_vec_mladd_s8_b, s390_vmalb, 0, 0, BT_OV_V16QI_V16QI_UV16QI_UV16QI)
1754 OB_DEF_VAR (s390_vec_mladd_s8_c, s390_vmalb, 0, 0, BT_OV_V16QI_V16QI_V16QI_V16QI)
1755 OB_DEF_VAR (s390_vec_mladd_u16, s390_vmalhw, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
1756 OB_DEF_VAR (s390_vec_mladd_s16_a, s390_vmalhw, 0, 0, BT_OV_V8HI_UV8HI_V8HI_V8HI)
1757 OB_DEF_VAR (s390_vec_mladd_s16_b, s390_vmalhw, 0, 0, BT_OV_V8HI_V8HI_UV8HI_UV8HI)
1758 OB_DEF_VAR (s390_vec_mladd_s16_c, s390_vmalhw, 0, 0, BT_OV_V8HI_V8HI_V8HI_V8HI)
1759 OB_DEF_VAR (s390_vec_mladd_u32, s390_vmalf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
1760 OB_DEF_VAR (s390_vec_mladd_s32_a, s390_vmalf, 0, 0, BT_OV_V4SI_UV4SI_V4SI_V4SI)
1761 OB_DEF_VAR (s390_vec_mladd_s32_b, s390_vmalf, 0, 0, BT_OV_V4SI_V4SI_UV4SI_UV4SI)
1762 OB_DEF_VAR (s390_vec_mladd_s32_c, s390_vmalf, 0, 0, BT_OV_V4SI_V4SI_V4SI_V4SI)
1763
1764 B_DEF (s390_vmalb, vec_vmalv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
1765 B_DEF (s390_vmalhw, vec_vmalv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI)
1766 B_DEF (s390_vmalf, vec_vmalv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI)
1767
1768 OB_DEF (s390_vec_mhadd, s390_vec_mhadd_u8, s390_vec_mhadd_s32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
1769 OB_DEF_VAR (s390_vec_mhadd_u8, s390_vmalhb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
1770 OB_DEF_VAR (s390_vec_mhadd_s8, s390_vmahb, 0, 0, BT_OV_V16QI_V16QI_V16QI_V16QI)
1771 OB_DEF_VAR (s390_vec_mhadd_u16, s390_vmalhh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
1772 OB_DEF_VAR (s390_vec_mhadd_s16, s390_vmahh, 0, 0, BT_OV_V8HI_V8HI_V8HI_V8HI)
1773 OB_DEF_VAR (s390_vec_mhadd_u32, s390_vmalhf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
1774 OB_DEF_VAR (s390_vec_mhadd_s32, s390_vmahf, 0, 0, BT_OV_V4SI_V4SI_V4SI_V4SI)
1775
1776 B_DEF (s390_vmalhb, vec_vmalhv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
1777 B_DEF (s390_vmahb, vec_vmahv16qi, 0, B_VX, 0, BT_FN_V16QI_V16QI_V16QI_V16QI)
1778 B_DEF (s390_vmalhh, vec_vmalhv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI)
1779 B_DEF (s390_vmahh, vec_vmahv8hi, 0, B_VX, 0, BT_FN_V8HI_V8HI_V8HI_V8HI)
1780 B_DEF (s390_vmalhf, vec_vmalhv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI)
1781 B_DEF (s390_vmahf, vec_vmahv4si, 0, B_VX, 0, BT_FN_V4SI_V4SI_V4SI_V4SI)
1782
1783 OB_DEF (s390_vec_meadd, s390_vec_meadd_u8, s390_vec_meadd_s32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
1784 OB_DEF_VAR (s390_vec_meadd_u8, s390_vmaleb, 0, 0, BT_OV_UV8HI_UV16QI_UV16QI_UV8HI)
1785 OB_DEF_VAR (s390_vec_meadd_s8, s390_vmaeb, 0, 0, BT_OV_V8HI_V16QI_V16QI_V8HI)
1786 OB_DEF_VAR (s390_vec_meadd_u16, s390_vmaleh, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI_UV4SI)
1787 OB_DEF_VAR (s390_vec_meadd_s16, s390_vmaeh, 0, 0, BT_OV_V4SI_V8HI_V8HI_V4SI)
1788 OB_DEF_VAR (s390_vec_meadd_u32, s390_vmalef, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI_UV2DI)
1789 OB_DEF_VAR (s390_vec_meadd_s32, s390_vmaef, 0, 0, BT_OV_V2DI_V4SI_V4SI_V2DI)
1790
1791 B_DEF (s390_vmaleb, vec_vmalev16qi, 0, B_VX, 0, BT_FN_UV8HI_UV16QI_UV16QI_UV8HI)
1792 B_DEF (s390_vmaeb, vec_vmaev16qi, 0, B_VX, 0, BT_FN_V8HI_V16QI_V16QI_V8HI)
1793 B_DEF (s390_vmaleh, vec_vmalev8hi, 0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI_UV4SI)
1794 B_DEF (s390_vmaeh, vec_vmaev8hi, 0, B_VX, 0, BT_FN_V4SI_V8HI_V8HI_V4SI)
1795 B_DEF (s390_vmalef, vec_vmalev4si, 0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI_UV2DI)
1796 B_DEF (s390_vmaef, vec_vmaev4si, 0, B_VX, 0, BT_FN_V2DI_V4SI_V4SI_V2DI)
1797
1798 OB_DEF (s390_vec_moadd, s390_vec_moadd_u8, s390_vec_moadd_s32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
1799 OB_DEF_VAR (s390_vec_moadd_u8, s390_vmalob, 0, 0, BT_OV_UV8HI_UV16QI_UV16QI_UV8HI)
1800 OB_DEF_VAR (s390_vec_moadd_s8, s390_vmaob, 0, 0, BT_OV_V8HI_V16QI_V16QI_V8HI)
1801 OB_DEF_VAR (s390_vec_moadd_u16, s390_vmaloh, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI_UV4SI)
1802 OB_DEF_VAR (s390_vec_moadd_s16, s390_vmaoh, 0, 0, BT_OV_V4SI_V8HI_V8HI_V4SI)
1803 OB_DEF_VAR (s390_vec_moadd_u32, s390_vmalof, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI_UV2DI)
1804 OB_DEF_VAR (s390_vec_moadd_s32, s390_vmaof, 0, 0, BT_OV_V2DI_V4SI_V4SI_V2DI)
1805
1806 B_DEF (s390_vmalob, vec_vmalov16qi, 0, B_VX, 0, BT_FN_UV8HI_UV16QI_UV16QI_UV8HI)
1807 B_DEF (s390_vmaob, vec_vmaov16qi, 0, B_VX, 0, BT_FN_V8HI_V16QI_V16QI_V8HI)
1808 B_DEF (s390_vmaloh, vec_vmalov8hi, 0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI_UV4SI)
1809 B_DEF (s390_vmaoh, vec_vmaov8hi, 0, B_VX, 0, BT_FN_V4SI_V8HI_V8HI_V4SI)
1810 B_DEF (s390_vmalof, vec_vmalov4si, 0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI_UV2DI)
1811 B_DEF (s390_vmaof, vec_vmaov4si, 0, B_VX, 0, BT_FN_V2DI_V4SI_V4SI_V2DI)
1812
1813 OB_DEF (s390_vec_mulh, s390_vec_mulh_u8, s390_vec_mulh_s32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1814 OB_DEF_VAR (s390_vec_mulh_u8, s390_vmlhb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1815 OB_DEF_VAR (s390_vec_mulh_s8, s390_vmhb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
1816 OB_DEF_VAR (s390_vec_mulh_u16, s390_vmlhh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1817 OB_DEF_VAR (s390_vec_mulh_s16, s390_vmhh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
1818 OB_DEF_VAR (s390_vec_mulh_u32, s390_vmlhf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1819 OB_DEF_VAR (s390_vec_mulh_s32, s390_vmhf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
1820
1821 B_DEF (s390_vmlhb, vec_umulhv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1822 B_DEF (s390_vmhb, vec_smulhv16qi, 0, B_VX, 0, BT_FN_V16QI_V16QI_V16QI)
1823 B_DEF (s390_vmlhh, vec_umulhv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
1824 B_DEF (s390_vmhh, vec_smulhv8hi, 0, B_VX, 0, BT_FN_V8HI_V8HI_V8HI)
1825 B_DEF (s390_vmlhf, vec_umulhv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
1826 B_DEF (s390_vmhf, vec_smulhv4si, 0, B_VX, 0, BT_FN_V4SI_V4SI_V4SI)
1827
1828 OB_DEF (s390_vec_mule, s390_vec_mule_u8, s390_vec_mule_s32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1829 OB_DEF_VAR (s390_vec_mule_u8, s390_vmleb, 0, 0, BT_OV_UV8HI_UV16QI_UV16QI)
1830 OB_DEF_VAR (s390_vec_mule_s8, s390_vmeb, 0, 0, BT_OV_V8HI_V16QI_V16QI)
1831 OB_DEF_VAR (s390_vec_mule_u16, s390_vmleh, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI)
1832 OB_DEF_VAR (s390_vec_mule_s15, s390_vmeh, 0, 0, BT_OV_V4SI_V8HI_V8HI)
1833 OB_DEF_VAR (s390_vec_mule_u32, s390_vmlef, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI)
1834 OB_DEF_VAR (s390_vec_mule_s32, s390_vmef, 0, 0, BT_OV_V2DI_V4SI_V4SI)
1835
1836 B_DEF (s390_vmleb, vec_widen_umult_even_v16qi,0, B_VX, 0, BT_FN_UV8HI_UV16QI_UV16QI)
1837 B_DEF (s390_vmeb, vec_widen_smult_even_v16qi,0, B_VX, 0, BT_FN_V8HI_V16QI_V16QI)
1838 B_DEF (s390_vmleh, vec_widen_umult_even_v8hi,0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI)
1839 B_DEF (s390_vmeh, vec_widen_smult_even_v8hi,0, B_VX, 0, BT_FN_V4SI_V8HI_V8HI)
1840 B_DEF (s390_vmlef, vec_widen_umult_even_v4si,0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI)
1841 B_DEF (s390_vmef, vec_widen_smult_even_v4si,0, B_VX, 0, BT_FN_V2DI_V4SI_V4SI)
1842
1843 OB_DEF (s390_vec_mulo, s390_vec_mulo_u8, s390_vec_mulo_s32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1844 OB_DEF_VAR (s390_vec_mulo_u8, s390_vmlob, 0, 0, BT_OV_UV8HI_UV16QI_UV16QI)
1845 OB_DEF_VAR (s390_vec_mulo_s8, s390_vmob, 0, 0, BT_OV_V8HI_V16QI_V16QI)
1846 OB_DEF_VAR (s390_vec_mulo_u16, s390_vmloh, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI)
1847 OB_DEF_VAR (s390_vec_mulo_s16, s390_vmoh, 0, 0, BT_OV_V4SI_V8HI_V8HI)
1848 OB_DEF_VAR (s390_vec_mulo_u32, s390_vmlof, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI)
1849 OB_DEF_VAR (s390_vec_mulo_s32, s390_vmof, 0, 0, BT_OV_V2DI_V4SI_V4SI)
1850
1851 B_DEF (s390_vmlob, vec_widen_umult_odd_v16qi,0, B_VX, 0, BT_FN_UV8HI_UV16QI_UV16QI)
1852 B_DEF (s390_vmob, vec_widen_smult_odd_v16qi,0, B_VX, 0, BT_FN_V8HI_V16QI_V16QI)
1853 B_DEF (s390_vmloh, vec_widen_umult_odd_v8hi,0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI)
1854 B_DEF (s390_vmoh, vec_widen_smult_odd_v8hi,0, B_VX, 0, BT_FN_V4SI_V8HI_V8HI)
1855 B_DEF (s390_vmlof, vec_widen_umult_odd_v4si,0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI)
1856 B_DEF (s390_vmof, vec_widen_smult_odd_v4si,0, B_VX, 0, BT_FN_V2DI_V4SI_V4SI)
1857
1858 OB_DEF (s390_vec_nor, s390_vec_nor_b8, s390_vec_nor_dbl_c, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1859 OB_DEF_VAR (s390_vec_nor_b8, s390_vno, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
1860 OB_DEF_VAR (s390_vec_nor_s8_a, s390_vno, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
1861 OB_DEF_VAR (s390_vec_nor_s8_b, s390_vno, 0, 0, BT_OV_V16QI_V16QI_V16QI)
1862 OB_DEF_VAR (s390_vec_nor_s8_c, s390_vno, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
1863 OB_DEF_VAR (s390_vec_nor_u8_a, s390_vno, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
1864 OB_DEF_VAR (s390_vec_nor_u8_b, s390_vno, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1865 OB_DEF_VAR (s390_vec_nor_u8_c, s390_vno, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
1866 OB_DEF_VAR (s390_vec_nor_b16, s390_vno, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
1867 OB_DEF_VAR (s390_vec_nor_s16_a, s390_vno, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
1868 OB_DEF_VAR (s390_vec_nor_s16_b, s390_vno, 0, 0, BT_OV_V8HI_V8HI_V8HI)
1869 OB_DEF_VAR (s390_vec_nor_s16_c, s390_vno, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
1870 OB_DEF_VAR (s390_vec_nor_u16_a, s390_vno, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
1871 OB_DEF_VAR (s390_vec_nor_u16_b, s390_vno, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1872 OB_DEF_VAR (s390_vec_nor_u16_c, s390_vno, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
1873 OB_DEF_VAR (s390_vec_nor_b32, s390_vno, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
1874 OB_DEF_VAR (s390_vec_nor_s32_a, s390_vno, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
1875 OB_DEF_VAR (s390_vec_nor_s32_b, s390_vno, 0, 0, BT_OV_V4SI_V4SI_V4SI)
1876 OB_DEF_VAR (s390_vec_nor_s32_c, s390_vno, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
1877 OB_DEF_VAR (s390_vec_nor_u32_a, s390_vno, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
1878 OB_DEF_VAR (s390_vec_nor_u32_b, s390_vno, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1879 OB_DEF_VAR (s390_vec_nor_u32_c, s390_vno, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
1880 OB_DEF_VAR (s390_vec_nor_b64, s390_vno, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
1881 OB_DEF_VAR (s390_vec_nor_s64_a, s390_vno, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
1882 OB_DEF_VAR (s390_vec_nor_s64_b, s390_vno, 0, 0, BT_OV_V2DI_V2DI_V2DI)
1883 OB_DEF_VAR (s390_vec_nor_s64_c, s390_vno, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
1884 OB_DEF_VAR (s390_vec_nor_u64_a, s390_vno, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
1885 OB_DEF_VAR (s390_vec_nor_u64_b, s390_vno, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
1886 OB_DEF_VAR (s390_vec_nor_u64_c, s390_vno, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
1887 OB_DEF_VAR (s390_vec_nor_flt_a, s390_vno, B_VXE | B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
1888 OB_DEF_VAR (s390_vec_nor_flt_b, s390_vno, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
1889 OB_DEF_VAR (s390_vec_nor_flt_c, s390_vno, B_VXE | B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
1890 OB_DEF_VAR (s390_vec_nor_dbl_a, s390_vno, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
1891 OB_DEF_VAR (s390_vec_nor_dbl_b, s390_vno, 0, 0, BT_OV_V2DF_V2DF_V2DF)
1892 OB_DEF_VAR (s390_vec_nor_dbl_c, s390_vno, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
1893
1894 B_DEF (s390_vno, vec_norv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1895
1896 OB_DEF (s390_vec_or, s390_vec_or_b8, s390_vec_or_dbl_c, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1897 OB_DEF_VAR (s390_vec_or_b8, s390_vo, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
1898 OB_DEF_VAR (s390_vec_or_s8_a, s390_vo, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
1899 OB_DEF_VAR (s390_vec_or_s8_b, s390_vo, 0, 0, BT_OV_V16QI_V16QI_V16QI)
1900 OB_DEF_VAR (s390_vec_or_s8_c, s390_vo, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
1901 OB_DEF_VAR (s390_vec_or_u8_a, s390_vo, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
1902 OB_DEF_VAR (s390_vec_or_u8_b, s390_vo, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1903 OB_DEF_VAR (s390_vec_or_u8_c, s390_vo, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
1904 OB_DEF_VAR (s390_vec_or_b16, s390_vo, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
1905 OB_DEF_VAR (s390_vec_or_s16_a, s390_vo, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
1906 OB_DEF_VAR (s390_vec_or_s16_b, s390_vo, 0, 0, BT_OV_V8HI_V8HI_V8HI)
1907 OB_DEF_VAR (s390_vec_or_s16_c, s390_vo, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
1908 OB_DEF_VAR (s390_vec_or_u16_a, s390_vo, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
1909 OB_DEF_VAR (s390_vec_or_u16_b, s390_vo, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1910 OB_DEF_VAR (s390_vec_or_u16_c, s390_vo, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
1911 OB_DEF_VAR (s390_vec_or_b32, s390_vo, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
1912 OB_DEF_VAR (s390_vec_or_s32_a, s390_vo, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
1913 OB_DEF_VAR (s390_vec_or_s32_b, s390_vo, 0, 0, BT_OV_V4SI_V4SI_V4SI)
1914 OB_DEF_VAR (s390_vec_or_s32_c, s390_vo, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
1915 OB_DEF_VAR (s390_vec_or_u32_a, s390_vo, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
1916 OB_DEF_VAR (s390_vec_or_u32_b, s390_vo, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1917 OB_DEF_VAR (s390_vec_or_u32_c, s390_vo, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
1918 OB_DEF_VAR (s390_vec_or_b64, s390_vo, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
1919 OB_DEF_VAR (s390_vec_or_s64_a, s390_vo, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
1920 OB_DEF_VAR (s390_vec_or_s64_b, s390_vo, 0, 0, BT_OV_V2DI_V2DI_V2DI)
1921 OB_DEF_VAR (s390_vec_or_s64_c, s390_vo, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
1922 OB_DEF_VAR (s390_vec_or_u64_a, s390_vo, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
1923 OB_DEF_VAR (s390_vec_or_u64_b, s390_vo, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
1924 OB_DEF_VAR (s390_vec_or_u64_c, s390_vo, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
1925 OB_DEF_VAR (s390_vec_or_flt_a, s390_vo, B_VXE | B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
1926 OB_DEF_VAR (s390_vec_or_flt_b, s390_vo, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
1927 OB_DEF_VAR (s390_vec_or_flt_c, s390_vo, B_VXE | B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
1928 OB_DEF_VAR (s390_vec_or_dbl_a, s390_vo, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
1929 OB_DEF_VAR (s390_vec_or_dbl_b, s390_vo, 0, 0, BT_OV_V2DF_V2DF_V2DF)
1930 OB_DEF_VAR (s390_vec_or_dbl_c, s390_vo, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
1931
1932 B_DEF (s390_vo, iorv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1933
1934 OB_DEF (s390_vec_popcnt, s390_vec_popcnt_s8, s390_vec_popcnt_u64,B_VX, BT_FN_OV4SI_OV4SI)
1935 OB_DEF_VAR (s390_vec_popcnt_s8, s390_vpopctb, 0, 0, BT_OV_UV16QI_V16QI)
1936 OB_DEF_VAR (s390_vec_popcnt_u8, s390_vpopctb, 0, 0, BT_OV_UV16QI_UV16QI)
1937 OB_DEF_VAR (s390_vec_popcnt_s16, s390_vpopcth, 0, 0, BT_OV_UV8HI_V8HI)
1938 OB_DEF_VAR (s390_vec_popcnt_u16, s390_vpopcth, 0, 0, BT_OV_UV8HI_UV8HI)
1939 OB_DEF_VAR (s390_vec_popcnt_s32, s390_vpopctf, 0, 0, BT_OV_UV4SI_V4SI)
1940 OB_DEF_VAR (s390_vec_popcnt_u32, s390_vpopctf, 0, 0, BT_OV_UV4SI_UV4SI)
1941 OB_DEF_VAR (s390_vec_popcnt_s64, s390_vpopctg, 0, 0, BT_OV_UV2DI_V2DI)
1942 OB_DEF_VAR (s390_vec_popcnt_u64, s390_vpopctg, 0, 0, BT_OV_UV2DI_UV2DI)
1943
1944 B_DEF (s390_vpopctb, popcountv16qi2, 0, B_VX, 0, BT_FN_UV16QI_UV16QI)
1945 B_DEF (s390_vpopcth, popcountv8hi2, 0, B_VX, 0, BT_FN_UV8HI_UV8HI)
1946 B_DEF (s390_vpopctf, popcountv4si2, 0, B_VX, 0, BT_FN_UV4SI_UV4SI)
1947 B_DEF (s390_vpopctg, popcountv2di2, 0, B_VX, 0, BT_FN_UV2DI_UV2DI)
1948
1949 OB_DEF (s390_vec_rl, s390_vec_rl_u8, s390_vec_rl_s64, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1950 OB_DEF_VAR (s390_vec_rl_u8, s390_verllvb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1951 OB_DEF_VAR (s390_vec_rl_s8, s390_verllvb, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
1952 OB_DEF_VAR (s390_vec_rl_u16, s390_verllvh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
1953 OB_DEF_VAR (s390_vec_rl_s16, s390_verllvh, 0, 0, BT_OV_V8HI_V8HI_UV8HI)
1954 OB_DEF_VAR (s390_vec_rl_u32, s390_verllvf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
1955 OB_DEF_VAR (s390_vec_rl_s32, s390_verllvf, 0, 0, BT_OV_V4SI_V4SI_UV4SI)
1956 OB_DEF_VAR (s390_vec_rl_u64, s390_verllvg, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
1957 OB_DEF_VAR (s390_vec_rl_s64, s390_verllvg, 0, 0, BT_OV_V2DI_V2DI_UV2DI)
1958
1959 B_DEF (s390_verllvb, vrotlv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
1960 B_DEF (s390_verllvh, vrotlv8hi3, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
1961 B_DEF (s390_verllvf, vrotlv4si3, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
1962 B_DEF (s390_verllvg, vrotlv2di3, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
1963
1964 OB_DEF (s390_vec_rli, s390_vec_rli_u8, s390_vec_rli_s64, B_VX, BT_FN_OV4SI_OV4SI_ULONG)
1965 OB_DEF_VAR (s390_vec_rli_u8, s390_verllb, 0, 0, BT_OV_UV16QI_UV16QI_ULONG)
1966 OB_DEF_VAR (s390_vec_rli_s8, s390_verllb, 0, 0, BT_OV_V16QI_V16QI_ULONG)
1967 OB_DEF_VAR (s390_vec_rli_u16, s390_verllh, 0, 0, BT_OV_UV8HI_UV8HI_ULONG)
1968 OB_DEF_VAR (s390_vec_rli_s16, s390_verllh, 0, 0, BT_OV_V8HI_V8HI_ULONG)
1969 OB_DEF_VAR (s390_vec_rli_u32, s390_verllf, 0, 0, BT_OV_UV4SI_UV4SI_ULONG)
1970 OB_DEF_VAR (s390_vec_rli_s32, s390_verllf, 0, 0, BT_OV_V4SI_V4SI_ULONG)
1971 OB_DEF_VAR (s390_vec_rli_u64, s390_verllg, 0, 0, BT_OV_UV2DI_UV2DI_ULONG)
1972 OB_DEF_VAR (s390_vec_rli_s64, s390_verllg, 0, 0, BT_OV_V2DI_V2DI_ULONG)
1973
1974 B_DEF (s390_verllb, rotlv16qi3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UINT)
1975 B_DEF (s390_verllh, rotlv8hi3, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UINT)
1976 B_DEF (s390_verllf, rotlv4si3, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UINT)
1977 B_DEF (s390_verllg, rotlv2di3, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UINT)
1978
1979 OB_DEF (s390_vec_rl_mask, s390_vec_rl_mask_s8,s390_vec_rl_mask_u64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_UCHAR)
1980 OB_DEF_VAR (s390_vec_rl_mask_s8, s390_verimb, 0, O3_U8, BT_OV_V16QI_V16QI_UV16QI_UCHAR)
1981 OB_DEF_VAR (s390_vec_rl_mask_u8, s390_verimb, 0, O3_U8, BT_OV_UV16QI_UV16QI_UV16QI_UCHAR)
1982 OB_DEF_VAR (s390_vec_rl_mask_s16, s390_verimh, 0, O3_U8, BT_OV_V8HI_V8HI_UV8HI_UCHAR)
1983 OB_DEF_VAR (s390_vec_rl_mask_u16, s390_verimh, 0, O3_U8, BT_OV_UV8HI_UV8HI_UV8HI_UCHAR)
1984 OB_DEF_VAR (s390_vec_rl_mask_s32, s390_verimf, 0, O3_U8, BT_OV_V4SI_V4SI_UV4SI_UCHAR)
1985 OB_DEF_VAR (s390_vec_rl_mask_u32, s390_verimf, 0, O3_U8, BT_OV_UV4SI_UV4SI_UV4SI_UCHAR)
1986 OB_DEF_VAR (s390_vec_rl_mask_s64, s390_verimg, 0, O3_U8, BT_OV_V2DI_V2DI_UV2DI_UCHAR)
1987 OB_DEF_VAR (s390_vec_rl_mask_u64, s390_verimg, 0, O3_U8, BT_OV_UV2DI_UV2DI_UV2DI_UCHAR)
1988
1989 B_DEF (s390_verimb, verimv16qi, 0, B_VX, O4_U8, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT)
1990 B_DEF (s390_verimh, verimv8hi, 0, B_VX, O4_U8, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT)
1991 B_DEF (s390_verimf, verimv4si, 0, B_VX, O4_U8, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT)
1992 B_DEF (s390_verimg, verimv2di, 0, B_VX, O4_U8, BT_FN_UV2DI_UV2DI_UV2DI_UV2DI_INT)
1993
1994 OB_DEF (s390_vec_sll, s390_vec_sll_u8q, s390_vec_sll_b64s, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
1995 OB_DEF_VAR (s390_vec_sll_u8q, s390_vsl, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
1996 OB_DEF_VAR (s390_vec_sll_u8h, s390_vsl, B_DEP, 0, BT_OV_UV16QI_UV16QI_UV8HI)
1997 OB_DEF_VAR (s390_vec_sll_u8s, s390_vsl, B_DEP, 0, BT_OV_UV16QI_UV16QI_UV4SI)
1998 OB_DEF_VAR (s390_vec_sll_s8q, s390_vsl, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
1999 OB_DEF_VAR (s390_vec_sll_s8h, s390_vsl, B_DEP, 0, BT_OV_V16QI_V16QI_UV8HI)
2000 OB_DEF_VAR (s390_vec_sll_s8s, s390_vsl, B_DEP, 0, BT_OV_V16QI_V16QI_UV4SI)
2001 OB_DEF_VAR (s390_vec_sll_b8q, s390_vsl, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV16QI)
2002 OB_DEF_VAR (s390_vec_sll_b8h, s390_vsl, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV8HI)
2003 OB_DEF_VAR (s390_vec_sll_b8s, s390_vsl, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV4SI)
2004 OB_DEF_VAR (s390_vec_sll_u16q, s390_vsl, 0, 0, BT_OV_UV8HI_UV8HI_UV16QI)
2005 OB_DEF_VAR (s390_vec_sll_u16h, s390_vsl, B_DEP, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2006 OB_DEF_VAR (s390_vec_sll_u16s, s390_vsl, B_DEP, 0, BT_OV_UV8HI_UV8HI_UV4SI)
2007 OB_DEF_VAR (s390_vec_sll_s16q, s390_vsl, 0, 0, BT_OV_V8HI_V8HI_UV16QI)
2008 OB_DEF_VAR (s390_vec_sll_s16h, s390_vsl, B_DEP, 0, BT_OV_V8HI_V8HI_UV8HI)
2009 OB_DEF_VAR (s390_vec_sll_s16s, s390_vsl, B_DEP, 0, BT_OV_V8HI_V8HI_UV4SI)
2010 OB_DEF_VAR (s390_vec_sll_b16q, s390_vsl, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV16QI)
2011 OB_DEF_VAR (s390_vec_sll_b16h, s390_vsl, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV8HI)
2012 OB_DEF_VAR (s390_vec_sll_b16s, s390_vsl, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV4SI)
2013 OB_DEF_VAR (s390_vec_sll_u32q, s390_vsl, 0, 0, BT_OV_UV4SI_UV4SI_UV16QI)
2014 OB_DEF_VAR (s390_vec_sll_u32h, s390_vsl, B_DEP, 0, BT_OV_UV4SI_UV4SI_UV8HI)
2015 OB_DEF_VAR (s390_vec_sll_u32s, s390_vsl, B_DEP, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2016 OB_DEF_VAR (s390_vec_sll_s32q, s390_vsl, 0, 0, BT_OV_V4SI_V4SI_UV16QI)
2017 OB_DEF_VAR (s390_vec_sll_s32h, s390_vsl, B_DEP, 0, BT_OV_V4SI_V4SI_UV8HI)
2018 OB_DEF_VAR (s390_vec_sll_s32s, s390_vsl, B_DEP, 0, BT_OV_V4SI_V4SI_UV4SI)
2019 OB_DEF_VAR (s390_vec_sll_b32q, s390_vsl, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV16QI)
2020 OB_DEF_VAR (s390_vec_sll_b32h, s390_vsl, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV8HI)
2021 OB_DEF_VAR (s390_vec_sll_b32s, s390_vsl, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV4SI)
2022 OB_DEF_VAR (s390_vec_sll_u64q, s390_vsl, 0, 0, BT_OV_UV2DI_UV2DI_UV16QI)
2023 OB_DEF_VAR (s390_vec_sll_u64h, s390_vsl, B_DEP, 0, BT_OV_UV2DI_UV2DI_UV8HI)
2024 OB_DEF_VAR (s390_vec_sll_u64s, s390_vsl, B_DEP, 0, BT_OV_UV2DI_UV2DI_UV4SI)
2025 OB_DEF_VAR (s390_vec_sll_s64q, s390_vsl, 0, 0, BT_OV_V2DI_V2DI_UV16QI)
2026 OB_DEF_VAR (s390_vec_sll_s64h, s390_vsl, B_DEP, 0, BT_OV_V2DI_V2DI_UV8HI)
2027 OB_DEF_VAR (s390_vec_sll_s64s, s390_vsl, B_DEP, 0, BT_OV_V2DI_V2DI_UV4SI)
2028 OB_DEF_VAR (s390_vec_sll_b64q, s390_vsl, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV16QI)
2029 OB_DEF_VAR (s390_vec_sll_b64h, s390_vsl, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV8HI)
2030 OB_DEF_VAR (s390_vec_sll_b64s, s390_vsl, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV4SI)
2031
2032 B_DEF (s390_vsl, vec_sllv16qiv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2033
2034 OB_DEF (s390_vec_slb, s390_vec_slb_u8_u8, s390_vec_slb_dbl_s64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2035 OB_DEF_VAR (s390_vec_slb_u8_u8, s390_vslb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2036 OB_DEF_VAR (s390_vec_slb_u8_s8, s390_vslb, 0, 0, BT_OV_UV16QI_UV16QI_V16QI)
2037 OB_DEF_VAR (s390_vec_slb_s8_u8, s390_vslb, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
2038 OB_DEF_VAR (s390_vec_slb_s8_s8, s390_vslb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2039 OB_DEF_VAR (s390_vec_slb_u16_u16, s390_vslb, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2040 OB_DEF_VAR (s390_vec_slb_u16_s16, s390_vslb, 0, 0, BT_OV_UV8HI_UV8HI_V8HI)
2041 OB_DEF_VAR (s390_vec_slb_s16_u16, s390_vslb, 0, 0, BT_OV_V8HI_V8HI_UV8HI)
2042 OB_DEF_VAR (s390_vec_slb_s16_s16, s390_vslb, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2043 OB_DEF_VAR (s390_vec_slb_u32_u32, s390_vslb, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2044 OB_DEF_VAR (s390_vec_slb_u32_s32, s390_vslb, 0, 0, BT_OV_UV4SI_UV4SI_V4SI)
2045 OB_DEF_VAR (s390_vec_slb_s32_u32, s390_vslb, 0, 0, BT_OV_V4SI_V4SI_UV4SI)
2046 OB_DEF_VAR (s390_vec_slb_s32_s32, s390_vslb, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2047 OB_DEF_VAR (s390_vec_slb_u64_u64, s390_vslb, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2048 OB_DEF_VAR (s390_vec_slb_u64_s64, s390_vslb, 0, 0, BT_OV_UV2DI_UV2DI_V2DI)
2049 OB_DEF_VAR (s390_vec_slb_s64_u64, s390_vslb, 0, 0, BT_OV_V2DI_V2DI_UV2DI)
2050 OB_DEF_VAR (s390_vec_slb_s64_s64, s390_vslb, 0, 0, BT_OV_V2DI_V2DI_V2DI)
2051 OB_DEF_VAR (s390_vec_slb_flt_u64, s390_vslb, B_VXE, 0, BT_OV_V4SF_V4SF_UV4SI)
2052 OB_DEF_VAR (s390_vec_slb_dbl_u64, s390_vslb, 0, 0, BT_OV_V2DF_V2DF_UV2DI)
2053 OB_DEF_VAR (s390_vec_slb_flt_s64, s390_vslb, B_VXE, 0, BT_OV_V4SF_V4SF_V4SI)
2054 OB_DEF_VAR (s390_vec_slb_dbl_s64, s390_vslb, 0, 0, BT_OV_V2DF_V2DF_V2DI)
2055
2056 B_DEF (s390_vslb, vec_slbv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2057
2058 OB_DEF (s390_vec_sld, s390_vec_sld_b8, s390_vec_sld_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_ULONGLONG)
2059 OB_DEF_VAR (s390_vec_sld_b8, s390_vsldb, 0, O3_U4, BT_OV_BV16QI_BV16QI_BV16QI_ULONGLONG)
2060 OB_DEF_VAR (s390_vec_sld_s8, s390_vsldb, 0, O3_U4, BT_OV_V16QI_V16QI_V16QI_ULONGLONG)
2061 OB_DEF_VAR (s390_vec_sld_u8, s390_vsldb, 0, O3_U4, BT_OV_UV16QI_UV16QI_UV16QI_ULONGLONG)
2062 OB_DEF_VAR (s390_vec_sld_b16, s390_vsldb, 0, O3_U4, BT_OV_BV8HI_BV8HI_BV8HI_ULONGLONG)
2063 OB_DEF_VAR (s390_vec_sld_s16, s390_vsldb, 0, O3_U4, BT_OV_V8HI_V8HI_V8HI_ULONGLONG)
2064 OB_DEF_VAR (s390_vec_sld_u16, s390_vsldb, 0, O3_U4, BT_OV_UV8HI_UV8HI_UV8HI_ULONGLONG)
2065 OB_DEF_VAR (s390_vec_sld_b32, s390_vsldb, 0, O3_U4, BT_OV_BV4SI_BV4SI_BV4SI_ULONGLONG)
2066 OB_DEF_VAR (s390_vec_sld_s32, s390_vsldb, 0, O3_U4, BT_OV_V4SI_V4SI_V4SI_ULONGLONG)
2067 OB_DEF_VAR (s390_vec_sld_u32, s390_vsldb, 0, O3_U4, BT_OV_UV4SI_UV4SI_UV4SI_ULONGLONG)
2068 OB_DEF_VAR (s390_vec_sld_b64, s390_vsldb, 0, O3_U4, BT_OV_BV2DI_BV2DI_BV2DI_ULONGLONG)
2069 OB_DEF_VAR (s390_vec_sld_s64, s390_vsldb, 0, O3_U4, BT_OV_V2DI_V2DI_V2DI_ULONGLONG)
2070 OB_DEF_VAR (s390_vec_sld_u64, s390_vsldb, 0, O3_U4, BT_OV_UV2DI_UV2DI_UV2DI_ULONGLONG)
2071 OB_DEF_VAR (s390_vec_sld_flt, s390_vsldb, B_VXE, O3_U4, BT_OV_V4SF_V4SF_V4SF_ULONGLONG)
2072 OB_DEF_VAR (s390_vec_sld_dbl, s390_vsldb, 0, O3_U4, BT_OV_V2DF_V2DF_V2DF_ULONGLONG)
2073
2074 B_DEF (s390_vsldb, vec_sldv16qi, 0, B_VX, O3_U4, BT_FN_UV16QI_UV16QI_UV16QI_INT)
2075
2076 OB_DEF (s390_vec_sldw, s390_vec_sldw_s8, s390_vec_sldw_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_INT)
2077 OB_DEF_VAR (s390_vec_sldw_s8, s390_vsldb, 0, O3_U4, BT_OV_V16QI_V16QI_V16QI_INT)
2078 OB_DEF_VAR (s390_vec_sldw_u8, s390_vsldb, 0, O3_U4, BT_OV_UV16QI_UV16QI_UV16QI_INT)
2079 OB_DEF_VAR (s390_vec_sldw_s16, s390_vsldb, 0, O3_U4, BT_OV_V8HI_V8HI_V8HI_INT)
2080 OB_DEF_VAR (s390_vec_sldw_u16, s390_vsldb, 0, O3_U4, BT_OV_UV8HI_UV8HI_UV8HI_INT)
2081 OB_DEF_VAR (s390_vec_sldw_s32, s390_vsldb, 0, O3_U4, BT_OV_V4SI_V4SI_V4SI_INT)
2082 OB_DEF_VAR (s390_vec_sldw_u32, s390_vsldb, 0, O3_U4, BT_OV_UV4SI_UV4SI_UV4SI_INT)
2083 OB_DEF_VAR (s390_vec_sldw_s64, s390_vsldb, 0, O3_U4, BT_OV_V2DI_V2DI_V2DI_INT)
2084 OB_DEF_VAR (s390_vec_sldw_u64, s390_vsldb, 0, O3_U4, BT_OV_UV2DI_UV2DI_UV2DI_INT)
2085 OB_DEF_VAR (s390_vec_sldw_dbl, s390_vsldb, B_DEP, O3_U4, BT_OV_V2DF_V2DF_V2DF_INT)
2086
2087 OB_DEF (s390_vec_sral, s390_vec_sral_u8q, s390_vec_sral_b64s, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2088 OB_DEF_VAR (s390_vec_sral_u8q, s390_vsra, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2089 OB_DEF_VAR (s390_vec_sral_u8h, s390_vsra, B_DEP, 0, BT_OV_UV16QI_UV16QI_UV8HI)
2090 OB_DEF_VAR (s390_vec_sral_u8s, s390_vsra, B_DEP, 0, BT_OV_UV16QI_UV16QI_UV4SI)
2091 OB_DEF_VAR (s390_vec_sral_s8q, s390_vsra, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
2092 OB_DEF_VAR (s390_vec_sral_s8h, s390_vsra, B_DEP, 0, BT_OV_V16QI_V16QI_UV8HI)
2093 OB_DEF_VAR (s390_vec_sral_s8s, s390_vsra, B_DEP, 0, BT_OV_V16QI_V16QI_UV4SI)
2094 OB_DEF_VAR (s390_vec_sral_b8q, s390_vsra, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV16QI)
2095 OB_DEF_VAR (s390_vec_sral_b8h, s390_vsra, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV8HI)
2096 OB_DEF_VAR (s390_vec_sral_b8s, s390_vsra, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV4SI)
2097 OB_DEF_VAR (s390_vec_sral_u16q, s390_vsra, 0, 0, BT_OV_UV8HI_UV8HI_UV16QI)
2098 OB_DEF_VAR (s390_vec_sral_u16h, s390_vsra, B_DEP, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2099 OB_DEF_VAR (s390_vec_sral_u16s, s390_vsra, B_DEP, 0, BT_OV_UV8HI_UV8HI_UV4SI)
2100 OB_DEF_VAR (s390_vec_sral_s16q, s390_vsra, 0, 0, BT_OV_V8HI_V8HI_UV16QI)
2101 OB_DEF_VAR (s390_vec_sral_s16h, s390_vsra, B_DEP, 0, BT_OV_V8HI_V8HI_UV8HI)
2102 OB_DEF_VAR (s390_vec_sral_s16s, s390_vsra, B_DEP, 0, BT_OV_V8HI_V8HI_UV4SI)
2103 OB_DEF_VAR (s390_vec_sral_b16q, s390_vsra, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV16QI)
2104 OB_DEF_VAR (s390_vec_sral_b16h, s390_vsra, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV8HI)
2105 OB_DEF_VAR (s390_vec_sral_b16s, s390_vsra, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV4SI)
2106 OB_DEF_VAR (s390_vec_sral_u32q, s390_vsra, 0, 0, BT_OV_UV4SI_UV4SI_UV16QI)
2107 OB_DEF_VAR (s390_vec_sral_u32h, s390_vsra, B_DEP, 0, BT_OV_UV4SI_UV4SI_UV8HI)
2108 OB_DEF_VAR (s390_vec_sral_u32s, s390_vsra, B_DEP, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2109 OB_DEF_VAR (s390_vec_sral_s32q, s390_vsra, 0, 0, BT_OV_V4SI_V4SI_UV16QI)
2110 OB_DEF_VAR (s390_vec_sral_s32h, s390_vsra, B_DEP, 0, BT_OV_V4SI_V4SI_UV8HI)
2111 OB_DEF_VAR (s390_vec_sral_s32s, s390_vsra, B_DEP, 0, BT_OV_V4SI_V4SI_UV4SI)
2112 OB_DEF_VAR (s390_vec_sral_b32q, s390_vsra, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV16QI)
2113 OB_DEF_VAR (s390_vec_sral_b32h, s390_vsra, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV8HI)
2114 OB_DEF_VAR (s390_vec_sral_b32s, s390_vsra, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV4SI)
2115 OB_DEF_VAR (s390_vec_sral_u64q, s390_vsra, 0, 0, BT_OV_UV2DI_UV2DI_UV16QI)
2116 OB_DEF_VAR (s390_vec_sral_u64h, s390_vsra, B_DEP, 0, BT_OV_UV2DI_UV2DI_UV8HI)
2117 OB_DEF_VAR (s390_vec_sral_u64s, s390_vsra, B_DEP, 0, BT_OV_UV2DI_UV2DI_UV4SI)
2118 OB_DEF_VAR (s390_vec_sral_s64q, s390_vsra, 0, 0, BT_OV_V2DI_V2DI_UV16QI)
2119 OB_DEF_VAR (s390_vec_sral_s64h, s390_vsra, B_DEP, 0, BT_OV_V2DI_V2DI_UV8HI)
2120 OB_DEF_VAR (s390_vec_sral_s64s, s390_vsra, B_DEP, 0, BT_OV_V2DI_V2DI_UV4SI)
2121 OB_DEF_VAR (s390_vec_sral_b64q, s390_vsra, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV16QI)
2122 OB_DEF_VAR (s390_vec_sral_b64h, s390_vsra, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV8HI)
2123 OB_DEF_VAR (s390_vec_sral_b64s, s390_vsra, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV4SI)
2124
2125 B_DEF (s390_vsra, vec_sralv16qiv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2126
2127 OB_DEF (s390_vec_srab, s390_vec_srab_u8_u8,s390_vec_srab_dbl_s64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2128 OB_DEF_VAR (s390_vec_srab_u8_u8, s390_vsrab, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2129 OB_DEF_VAR (s390_vec_srab_u8_s8, s390_vsrab, 0, 0, BT_OV_UV16QI_UV16QI_V16QI)
2130 OB_DEF_VAR (s390_vec_srab_s8_u8, s390_vsrab, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
2131 OB_DEF_VAR (s390_vec_srab_s8_s8, s390_vsrab, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2132 OB_DEF_VAR (s390_vec_srab_u16_u16, s390_vsrab, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2133 OB_DEF_VAR (s390_vec_srab_u16_s16, s390_vsrab, 0, 0, BT_OV_UV8HI_UV8HI_V8HI)
2134 OB_DEF_VAR (s390_vec_srab_s16_u16, s390_vsrab, 0, 0, BT_OV_V8HI_V8HI_UV8HI)
2135 OB_DEF_VAR (s390_vec_srab_s16_s16, s390_vsrab, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2136 OB_DEF_VAR (s390_vec_srab_u32_u32, s390_vsrab, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2137 OB_DEF_VAR (s390_vec_srab_u32_s32, s390_vsrab, 0, 0, BT_OV_UV4SI_UV4SI_V4SI)
2138 OB_DEF_VAR (s390_vec_srab_s32_u32, s390_vsrab, 0, 0, BT_OV_V4SI_V4SI_UV4SI)
2139 OB_DEF_VAR (s390_vec_srab_s32_s32, s390_vsrab, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2140 OB_DEF_VAR (s390_vec_srab_u64_u64, s390_vsrab, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2141 OB_DEF_VAR (s390_vec_srab_u64_s64, s390_vsrab, 0, 0, BT_OV_UV2DI_UV2DI_V2DI)
2142 OB_DEF_VAR (s390_vec_srab_s64_u64, s390_vsrab, 0, 0, BT_OV_V2DI_V2DI_UV2DI)
2143 OB_DEF_VAR (s390_vec_srab_s64_s64, s390_vsrab, 0, 0, BT_OV_V2DI_V2DI_V2DI)
2144 OB_DEF_VAR (s390_vec_srab_flt_u64, s390_vsrab, B_VXE, 0, BT_OV_V4SF_V4SF_UV4SI)
2145 OB_DEF_VAR (s390_vec_srab_dbl_u64, s390_vsrab, 0, 0, BT_OV_V2DF_V2DF_UV2DI)
2146 OB_DEF_VAR (s390_vec_srab_flt_s64, s390_vsrab, B_VXE, 0, BT_OV_V4SF_V4SF_V4SI)
2147 OB_DEF_VAR (s390_vec_srab_dbl_s64, s390_vsrab, 0, 0, BT_OV_V2DF_V2DF_V2DI)
2148
2149 B_DEF (s390_vsrab, vec_srabv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2150
2151 OB_DEF (s390_vec_srl, s390_vec_srl_u8q, s390_vec_srl_b64s, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2152 OB_DEF_VAR (s390_vec_srl_u8q, s390_vsrl, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2153 OB_DEF_VAR (s390_vec_srl_u8h, s390_vsrl, B_DEP, 0, BT_OV_UV16QI_UV16QI_UV8HI)
2154 OB_DEF_VAR (s390_vec_srl_u8s, s390_vsrl, B_DEP, 0, BT_OV_UV16QI_UV16QI_UV4SI)
2155 OB_DEF_VAR (s390_vec_srl_s8q, s390_vsrl, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
2156 OB_DEF_VAR (s390_vec_srl_s8h, s390_vsrl, B_DEP, 0, BT_OV_V16QI_V16QI_UV8HI)
2157 OB_DEF_VAR (s390_vec_srl_s8s, s390_vsrl, B_DEP, 0, BT_OV_V16QI_V16QI_UV4SI)
2158 OB_DEF_VAR (s390_vec_srl_b8q, s390_vsrl, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV16QI)
2159 OB_DEF_VAR (s390_vec_srl_b8h, s390_vsrl, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV8HI)
2160 OB_DEF_VAR (s390_vec_srl_b8s, s390_vsrl, B_DEP, 0, BT_OV_BV16QI_BV16QI_UV4SI)
2161 OB_DEF_VAR (s390_vec_srl_u16q, s390_vsrl, 0, 0, BT_OV_UV8HI_UV8HI_UV16QI)
2162 OB_DEF_VAR (s390_vec_srl_u16h, s390_vsrl, B_DEP, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2163 OB_DEF_VAR (s390_vec_srl_u16s, s390_vsrl, B_DEP, 0, BT_OV_UV8HI_UV8HI_UV4SI)
2164 OB_DEF_VAR (s390_vec_srl_s16q, s390_vsrl, 0, 0, BT_OV_V8HI_V8HI_UV16QI)
2165 OB_DEF_VAR (s390_vec_srl_s16h, s390_vsrl, B_DEP, 0, BT_OV_V8HI_V8HI_UV8HI)
2166 OB_DEF_VAR (s390_vec_srl_s16s, s390_vsrl, B_DEP, 0, BT_OV_V8HI_V8HI_UV4SI)
2167 OB_DEF_VAR (s390_vec_srl_b16q, s390_vsrl, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV16QI)
2168 OB_DEF_VAR (s390_vec_srl_b16h, s390_vsrl, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV8HI)
2169 OB_DEF_VAR (s390_vec_srl_b16s, s390_vsrl, B_DEP, 0, BT_OV_BV8HI_BV8HI_UV4SI)
2170 OB_DEF_VAR (s390_vec_srl_u32q, s390_vsrl, 0, 0, BT_OV_UV4SI_UV4SI_UV16QI)
2171 OB_DEF_VAR (s390_vec_srl_u32h, s390_vsrl, B_DEP, 0, BT_OV_UV4SI_UV4SI_UV8HI)
2172 OB_DEF_VAR (s390_vec_srl_u32s, s390_vsrl, B_DEP, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2173 OB_DEF_VAR (s390_vec_srl_s32q, s390_vsrl, 0, 0, BT_OV_V4SI_V4SI_UV16QI)
2174 OB_DEF_VAR (s390_vec_srl_s32h, s390_vsrl, B_DEP, 0, BT_OV_V4SI_V4SI_UV8HI)
2175 OB_DEF_VAR (s390_vec_srl_s32s, s390_vsrl, B_DEP, 0, BT_OV_V4SI_V4SI_UV4SI)
2176 OB_DEF_VAR (s390_vec_srl_b32q, s390_vsrl, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV16QI)
2177 OB_DEF_VAR (s390_vec_srl_b32h, s390_vsrl, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV8HI)
2178 OB_DEF_VAR (s390_vec_srl_b32s, s390_vsrl, B_DEP, 0, BT_OV_BV4SI_BV4SI_UV4SI)
2179 OB_DEF_VAR (s390_vec_srl_u64q, s390_vsrl, 0, 0, BT_OV_UV2DI_UV2DI_UV16QI)
2180 OB_DEF_VAR (s390_vec_srl_u64h, s390_vsrl, B_DEP, 0, BT_OV_UV2DI_UV2DI_UV8HI)
2181 OB_DEF_VAR (s390_vec_srl_u64s, s390_vsrl, B_DEP, 0, BT_OV_UV2DI_UV2DI_UV4SI)
2182 OB_DEF_VAR (s390_vec_srl_s64q, s390_vsrl, 0, 0, BT_OV_V2DI_V2DI_UV16QI)
2183 OB_DEF_VAR (s390_vec_srl_s64h, s390_vsrl, B_DEP, 0, BT_OV_V2DI_V2DI_UV8HI)
2184 OB_DEF_VAR (s390_vec_srl_s64s, s390_vsrl, B_DEP, 0, BT_OV_V2DI_V2DI_UV4SI)
2185 OB_DEF_VAR (s390_vec_srl_b64q, s390_vsrl, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV16QI)
2186 OB_DEF_VAR (s390_vec_srl_b64h, s390_vsrl, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV8HI)
2187 OB_DEF_VAR (s390_vec_srl_b64s, s390_vsrl, B_DEP, 0, BT_OV_BV2DI_BV2DI_UV4SI)
2188
2189 B_DEF (s390_vsrl, vec_srlv16qiv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2190
2191 OB_DEF (s390_vec_srb, s390_vec_srb_u8_u8, s390_vec_srb_dbl_s64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2192 OB_DEF_VAR (s390_vec_srb_u8_u8, s390_vsrlb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2193 OB_DEF_VAR (s390_vec_srb_u8_s8, s390_vsrlb, 0, 0, BT_OV_UV16QI_UV16QI_V16QI)
2194 OB_DEF_VAR (s390_vec_srb_s8_u8, s390_vsrlb, 0, 0, BT_OV_V16QI_V16QI_UV16QI)
2195 OB_DEF_VAR (s390_vec_srb_s8_s8, s390_vsrlb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2196 OB_DEF_VAR (s390_vec_srb_u16_u16, s390_vsrlb, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2197 OB_DEF_VAR (s390_vec_srb_u16_s16, s390_vsrlb, 0, 0, BT_OV_UV8HI_UV8HI_V8HI)
2198 OB_DEF_VAR (s390_vec_srb_s16_u16, s390_vsrlb, 0, 0, BT_OV_V8HI_V8HI_UV8HI)
2199 OB_DEF_VAR (s390_vec_srb_s16_s16, s390_vsrlb, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2200 OB_DEF_VAR (s390_vec_srb_u32_u32, s390_vsrlb, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2201 OB_DEF_VAR (s390_vec_srb_u32_s32, s390_vsrlb, 0, 0, BT_OV_UV4SI_UV4SI_V4SI)
2202 OB_DEF_VAR (s390_vec_srb_s32_u32, s390_vsrlb, 0, 0, BT_OV_V4SI_V4SI_UV4SI)
2203 OB_DEF_VAR (s390_vec_srb_s32_s32, s390_vsrlb, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2204 OB_DEF_VAR (s390_vec_srb_u64_u64, s390_vsrlb, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2205 OB_DEF_VAR (s390_vec_srb_u64_s64, s390_vsrlb, 0, 0, BT_OV_UV2DI_UV2DI_V2DI)
2206 OB_DEF_VAR (s390_vec_srb_s64_u64, s390_vsrlb, 0, 0, BT_OV_V2DI_V2DI_UV2DI)
2207 OB_DEF_VAR (s390_vec_srb_s64_s64, s390_vsrlb, 0, 0, BT_OV_V2DI_V2DI_V2DI)
2208 OB_DEF_VAR (s390_vec_srb_flt_u64, s390_vsrlb, B_VXE, 0, BT_OV_V4SF_V4SF_UV4SI)
2209 OB_DEF_VAR (s390_vec_srb_dbl_u64, s390_vsrlb, 0, 0, BT_OV_V2DF_V2DF_UV2DI)
2210 OB_DEF_VAR (s390_vec_srb_flt_s64, s390_vsrlb, B_VXE, 0, BT_OV_V4SF_V4SF_V4SI)
2211 OB_DEF_VAR (s390_vec_srb_dbl_s64, s390_vsrlb, 0, 0, BT_OV_V2DF_V2DF_V2DI)
2212
2213 B_DEF (s390_vsrlb, vec_srbv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2214
2215 OB_DEF (s390_vec_subc, s390_vec_subc_u8, s390_vec_subc_u64, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2216 OB_DEF_VAR (s390_vec_subc_u8, s390_vscbib, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2217 OB_DEF_VAR (s390_vec_subc_u16, s390_vscbih, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2218 OB_DEF_VAR (s390_vec_subc_u32, s390_vscbif, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2219 OB_DEF_VAR (s390_vec_subc_u64, s390_vscbig, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2220
2221 B_DEF (s390_vscbib, vscbib_v16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2222 B_DEF (s390_vscbih, vscbih_v8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
2223 B_DEF (s390_vscbif, vscbif_v4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
2224 B_DEF (s390_vscbig, vscbig_v2di, 0, B_VX, 0, BT_FN_UV2DI_UV2DI_UV2DI)
2225
2226 /* The builtin definitions requires these to use vector unsigned char.
2227 But we want the GCC low-level builtins and the insn patterns to
2228 allow int128_t and TImode. So we rely on s390_expand_builtin to
2229 switch modes. */
2230
2231 B_DEF (s390_vec_sub_u128, subti3, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2232 B_DEF (s390_vec_subc_u128, vscbiq_ti, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2233 B_DEF (s390_vec_sube_u128, vsbiq, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
2234 B_DEF (s390_vec_subec_u128, vsbcbiq, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
2235
2236 B_DEF (s390_vsq, subti3, 0, B_VX, 0, BT_FN_INT128_INT128_INT128)
2237 B_DEF (s390_vscbiq, vscbiq_ti, 0, B_VX, 0, BT_FN_INT128_INT128_INT128)
2238 B_DEF (s390_vsbiq, vsbiq, 0, B_VX, 0, BT_FN_INT128_INT128_INT128_INT128)
2239 B_DEF (s390_vsbcbiq, vsbcbiq, 0, B_VX, 0, BT_FN_INT128_INT128_INT128_INT128)
2240
2241 OB_DEF (s390_vec_sum2, s390_vec_sum2_u16, s390_vec_sum2_u32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2242 OB_DEF_VAR (s390_vec_sum2_u16, s390_vsumgh, 0, 0, BT_OV_UV2DI_UV8HI_UV8HI)
2243 OB_DEF_VAR (s390_vec_sum2_u32, s390_vsumgf, 0, 0, BT_OV_UV2DI_UV4SI_UV4SI)
2244
2245 B_DEF (s390_vsumgh, vec_sum2v8hi, 0, B_VX, 0, BT_FN_UV2DI_UV8HI_UV8HI)
2246 B_DEF (s390_vsumgf, vec_sum2v4si, 0, B_VX, 0, BT_FN_UV2DI_UV4SI_UV4SI)
2247
2248 OB_DEF (s390_vec_sum_u128, s390_vec_sum_u128_u32,s390_vec_sum_u128_u64,B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2249 OB_DEF_VAR (s390_vec_sum_u128_u32, s390_vsumqf, 0, 0, BT_OV_UV16QI_UV4SI_UV4SI)
2250 OB_DEF_VAR (s390_vec_sum_u128_u64, s390_vsumqg, 0, 0, BT_OV_UV16QI_UV2DI_UV2DI)
2251
2252 B_DEF (s390_vsumqf, vec_sum_u128v4si, 0, B_VX, 0, BT_FN_UV16QI_UV4SI_UV4SI)
2253 B_DEF (s390_vsumqg, vec_sum_u128v2di, 0, B_VX, 0, BT_FN_UV16QI_UV2DI_UV2DI)
2254
2255 OB_DEF (s390_vec_sum4, s390_vec_sum4_u8, s390_vec_sum4_u16, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2256 OB_DEF_VAR (s390_vec_sum4_u8, s390_vsumb, 0, 0, BT_OV_UV4SI_UV16QI_UV16QI)
2257 OB_DEF_VAR (s390_vec_sum4_u16, s390_vsumh, 0, 0, BT_OV_UV4SI_UV8HI_UV8HI)
2258
2259 B_DEF (s390_vsumb, vec_sum4v16qi, 0, B_VX, 0, BT_FN_UV4SI_UV16QI_UV16QI)
2260 B_DEF (s390_vsumh, vec_sum4v8hi, 0, B_VX, 0, BT_FN_UV4SI_UV8HI_UV8HI)
2261
2262 OB_DEF (s390_vec_test_mask, s390_vec_test_mask_s8,s390_vec_test_mask_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
2263 OB_DEF_VAR (s390_vec_test_mask_s8, s390_vtm, 0, 0, BT_OV_INT_V16QI_UV16QI)
2264 OB_DEF_VAR (s390_vec_test_mask_u8, s390_vtm, 0, 0, BT_OV_INT_UV16QI_UV16QI)
2265 OB_DEF_VAR (s390_vec_test_mask_s16, s390_vtm, 0, 0, BT_OV_INT_V8HI_UV8HI)
2266 OB_DEF_VAR (s390_vec_test_mask_u16, s390_vtm, 0, 0, BT_OV_INT_UV8HI_UV8HI)
2267 OB_DEF_VAR (s390_vec_test_mask_s32, s390_vtm, 0, 0, BT_OV_INT_V4SI_UV4SI)
2268 OB_DEF_VAR (s390_vec_test_mask_u32, s390_vtm, 0, 0, BT_OV_INT_UV4SI_UV4SI)
2269 OB_DEF_VAR (s390_vec_test_mask_s64, s390_vtm, 0, 0, BT_OV_INT_V2DI_UV2DI)
2270 OB_DEF_VAR (s390_vec_test_mask_u64, s390_vtm, 0, 0, BT_OV_INT_UV2DI_UV2DI)
2271 OB_DEF_VAR (s390_vec_test_mask_flt, s390_vtm, B_VXE, 0, BT_OV_INT_V4SF_UV4SI)
2272 OB_DEF_VAR (s390_vec_test_mask_dbl, s390_vtm, 0, 0, BT_OV_INT_V2DF_UV2DI)
2273
2274 B_DEF (s390_vtm, vec_test_mask_intv16qi,0, B_VX, 0, BT_FN_INT_UV16QI_UV16QI)
2275
2276 B_DEF (s390_vec_msum_u128, vec_msumv2di, 0, B_VXE, O4_U2, BT_FN_UV16QI_UV2DI_UV2DI_UV16QI_INT)
2277 B_DEF (s390_vmslg, vmslg, 0, B_VXE, O4_U4, BT_FN_INT128_UV2DI_UV2DI_INT128_INT)
2278
2279 OB_DEF (s390_vec_eqv, s390_vec_eqv_b8, s390_vec_eqv_dbl_c, B_VXE, BT_FN_OV4SI_OV4SI_OV4SI)
2280 OB_DEF_VAR (s390_vec_eqv_b8, s390_vnx, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
2281 OB_DEF_VAR (s390_vec_eqv_s8_a, s390_vnx, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
2282 OB_DEF_VAR (s390_vec_eqv_s8_b, s390_vnx, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2283 OB_DEF_VAR (s390_vec_eqv_s8_c, s390_vnx, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
2284 OB_DEF_VAR (s390_vec_eqv_u8_a, s390_vnx, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
2285 OB_DEF_VAR (s390_vec_eqv_u8_b, s390_vnx, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2286 OB_DEF_VAR (s390_vec_eqv_u8_c, s390_vnx, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
2287 OB_DEF_VAR (s390_vec_eqv_b16, s390_vnx, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
2288 OB_DEF_VAR (s390_vec_eqv_s16_a, s390_vnx, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
2289 OB_DEF_VAR (s390_vec_eqv_s16_b, s390_vnx, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2290 OB_DEF_VAR (s390_vec_eqv_s16_c, s390_vnx, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
2291 OB_DEF_VAR (s390_vec_eqv_u16_a, s390_vnx, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
2292 OB_DEF_VAR (s390_vec_eqv_u16_b, s390_vnx, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2293 OB_DEF_VAR (s390_vec_eqv_u16_c, s390_vnx, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
2294 OB_DEF_VAR (s390_vec_eqv_b32, s390_vnx, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
2295 OB_DEF_VAR (s390_vec_eqv_s32_a, s390_vnx, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
2296 OB_DEF_VAR (s390_vec_eqv_s32_b, s390_vnx, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2297 OB_DEF_VAR (s390_vec_eqv_s32_c, s390_vnx, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
2298 OB_DEF_VAR (s390_vec_eqv_u32_a, s390_vnx, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
2299 OB_DEF_VAR (s390_vec_eqv_u32_b, s390_vnx, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2300 OB_DEF_VAR (s390_vec_eqv_u32_c, s390_vnx, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
2301 OB_DEF_VAR (s390_vec_eqv_b64, s390_vnx, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
2302 OB_DEF_VAR (s390_vec_eqv_s64_a, s390_vnx, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
2303 OB_DEF_VAR (s390_vec_eqv_s64_b, s390_vnx, 0, 0, BT_OV_V2DI_V2DI_V2DI)
2304 OB_DEF_VAR (s390_vec_eqv_s64_c, s390_vnx, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
2305 OB_DEF_VAR (s390_vec_eqv_u64_a, s390_vnx, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
2306 OB_DEF_VAR (s390_vec_eqv_u64_b, s390_vnx, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2307 OB_DEF_VAR (s390_vec_eqv_u64_c, s390_vnx, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
2308 OB_DEF_VAR (s390_vec_eqv_flt_a, s390_vnx, B_VXE | B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
2309 OB_DEF_VAR (s390_vec_eqv_flt_b, s390_vnx, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF)
2310 OB_DEF_VAR (s390_vec_eqv_flt_c, s390_vnx, B_VXE | B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
2311 OB_DEF_VAR (s390_vec_eqv_dbl_a, s390_vnx, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
2312 OB_DEF_VAR (s390_vec_eqv_dbl_b, s390_vnx, 0, 0, BT_OV_V2DF_V2DF_V2DF)
2313 OB_DEF_VAR (s390_vec_eqv_dbl_c, s390_vnx, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
2314
2315 B_DEF (s390_vnx, notxorv16qi3, 0, B_VXE, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2316
2317 OB_DEF (s390_vec_nand, s390_vec_nand_b8, s390_vec_nand_dbl_c,B_VXE, BT_FN_OV4SI_OV4SI_OV4SI)
2318 OB_DEF_VAR (s390_vec_nand_b8, s390_vnn, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
2319 OB_DEF_VAR (s390_vec_nand_s8_a, s390_vnn, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
2320 OB_DEF_VAR (s390_vec_nand_s8_b, s390_vnn, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2321 OB_DEF_VAR (s390_vec_nand_s8_c, s390_vnn, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
2322 OB_DEF_VAR (s390_vec_nand_u8_a, s390_vnn, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
2323 OB_DEF_VAR (s390_vec_nand_u8_b, s390_vnn, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2324 OB_DEF_VAR (s390_vec_nand_u8_c, s390_vnn, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
2325 OB_DEF_VAR (s390_vec_nand_b16, s390_vnn, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
2326 OB_DEF_VAR (s390_vec_nand_s16_a, s390_vnn, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
2327 OB_DEF_VAR (s390_vec_nand_s16_b, s390_vnn, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2328 OB_DEF_VAR (s390_vec_nand_s16_c, s390_vnn, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
2329 OB_DEF_VAR (s390_vec_nand_u16_a, s390_vnn, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
2330 OB_DEF_VAR (s390_vec_nand_u16_b, s390_vnn, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2331 OB_DEF_VAR (s390_vec_nand_u16_c, s390_vnn, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
2332 OB_DEF_VAR (s390_vec_nand_b32, s390_vnn, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
2333 OB_DEF_VAR (s390_vec_nand_s32_a, s390_vnn, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
2334 OB_DEF_VAR (s390_vec_nand_s32_b, s390_vnn, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2335 OB_DEF_VAR (s390_vec_nand_s32_c, s390_vnn, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
2336 OB_DEF_VAR (s390_vec_nand_u32_a, s390_vnn, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
2337 OB_DEF_VAR (s390_vec_nand_u32_b, s390_vnn, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2338 OB_DEF_VAR (s390_vec_nand_u32_c, s390_vnn, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
2339 OB_DEF_VAR (s390_vec_nand_b64, s390_vnn, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
2340 OB_DEF_VAR (s390_vec_nand_s64_a, s390_vnn, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
2341 OB_DEF_VAR (s390_vec_nand_s64_b, s390_vnn, 0, 0, BT_OV_V2DI_V2DI_V2DI)
2342 OB_DEF_VAR (s390_vec_nand_s64_c, s390_vnn, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
2343 OB_DEF_VAR (s390_vec_nand_u64_a, s390_vnn, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
2344 OB_DEF_VAR (s390_vec_nand_u64_b, s390_vnn, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2345 OB_DEF_VAR (s390_vec_nand_u64_c, s390_vnn, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
2346 OB_DEF_VAR (s390_vec_nand_flt_a, s390_vnn, B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
2347 OB_DEF_VAR (s390_vec_nand_flt_b, s390_vnn, 0, 0, BT_OV_V4SF_V4SF_V4SF)
2348 OB_DEF_VAR (s390_vec_nand_flt_c, s390_vnn, B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
2349 OB_DEF_VAR (s390_vec_nand_dbl_a, s390_vnn, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
2350 OB_DEF_VAR (s390_vec_nand_dbl_b, s390_vnn, 0, 0, BT_OV_V2DF_V2DF_V2DF)
2351 OB_DEF_VAR (s390_vec_nand_dbl_c, s390_vnn, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
2352
2353 B_DEF (s390_vnn, notandv16qi3, 0, B_VXE, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2354
2355 OB_DEF (s390_vec_orc, s390_vec_orc_b8, s390_vec_orc_dbl_c, B_VXE, BT_FN_OV4SI_OV4SI_OV4SI)
2356 OB_DEF_VAR (s390_vec_orc_b8, s390_voc, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
2357 OB_DEF_VAR (s390_vec_orc_s8_a, s390_voc, B_DEP, 0, BT_OV_V16QI_BV16QI_V16QI)
2358 OB_DEF_VAR (s390_vec_orc_s8_b, s390_voc, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2359 OB_DEF_VAR (s390_vec_orc_s8_c, s390_voc, B_DEP, 0, BT_OV_V16QI_V16QI_BV16QI)
2360 OB_DEF_VAR (s390_vec_orc_u8_a, s390_voc, B_DEP, 0, BT_OV_UV16QI_BV16QI_UV16QI)
2361 OB_DEF_VAR (s390_vec_orc_u8_b, s390_voc, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2362 OB_DEF_VAR (s390_vec_orc_u8_c, s390_voc, B_DEP, 0, BT_OV_UV16QI_UV16QI_BV16QI)
2363 OB_DEF_VAR (s390_vec_orc_b16, s390_voc, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
2364 OB_DEF_VAR (s390_vec_orc_s16_a, s390_voc, B_DEP, 0, BT_OV_V8HI_BV8HI_V8HI)
2365 OB_DEF_VAR (s390_vec_orc_s16_b, s390_voc, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2366 OB_DEF_VAR (s390_vec_orc_s16_c, s390_voc, B_DEP, 0, BT_OV_V8HI_V8HI_BV8HI)
2367 OB_DEF_VAR (s390_vec_orc_u16_a, s390_voc, B_DEP, 0, BT_OV_UV8HI_BV8HI_UV8HI)
2368 OB_DEF_VAR (s390_vec_orc_u16_b, s390_voc, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2369 OB_DEF_VAR (s390_vec_orc_u16_c, s390_voc, B_DEP, 0, BT_OV_UV8HI_UV8HI_BV8HI)
2370 OB_DEF_VAR (s390_vec_orc_b32, s390_voc, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
2371 OB_DEF_VAR (s390_vec_orc_s32_a, s390_voc, B_DEP, 0, BT_OV_V4SI_BV4SI_V4SI)
2372 OB_DEF_VAR (s390_vec_orc_s32_b, s390_voc, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2373 OB_DEF_VAR (s390_vec_orc_s32_c, s390_voc, B_DEP, 0, BT_OV_V4SI_V4SI_BV4SI)
2374 OB_DEF_VAR (s390_vec_orc_u32_a, s390_voc, B_DEP, 0, BT_OV_UV4SI_BV4SI_UV4SI)
2375 OB_DEF_VAR (s390_vec_orc_u32_b, s390_voc, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2376 OB_DEF_VAR (s390_vec_orc_u32_c, s390_voc, B_DEP, 0, BT_OV_UV4SI_UV4SI_BV4SI)
2377 OB_DEF_VAR (s390_vec_orc_b64, s390_voc, 0, 0, BT_OV_BV2DI_BV2DI_BV2DI)
2378 OB_DEF_VAR (s390_vec_orc_s64_a, s390_voc, B_DEP, 0, BT_OV_V2DI_BV2DI_V2DI)
2379 OB_DEF_VAR (s390_vec_orc_s64_b, s390_voc, 0, 0, BT_OV_V2DI_V2DI_V2DI)
2380 OB_DEF_VAR (s390_vec_orc_s64_c, s390_voc, B_DEP, 0, BT_OV_V2DI_V2DI_BV2DI)
2381 OB_DEF_VAR (s390_vec_orc_u64_a, s390_voc, B_DEP, 0, BT_OV_UV2DI_BV2DI_UV2DI)
2382 OB_DEF_VAR (s390_vec_orc_u64_b, s390_voc, 0, 0, BT_OV_UV2DI_UV2DI_UV2DI)
2383 OB_DEF_VAR (s390_vec_orc_u64_c, s390_voc, B_DEP, 0, BT_OV_UV2DI_UV2DI_BV2DI)
2384 OB_DEF_VAR (s390_vec_orc_flt_a, s390_voc, B_DEP, 0, BT_OV_V4SF_BV4SI_V4SF)
2385 OB_DEF_VAR (s390_vec_orc_flt_b, s390_voc, 0, 0, BT_OV_V4SF_V4SF_V4SF)
2386 OB_DEF_VAR (s390_vec_orc_flt_c, s390_voc, B_DEP, 0, BT_OV_V4SF_V4SF_BV4SI)
2387 OB_DEF_VAR (s390_vec_orc_dbl_a, s390_voc, B_DEP, 0, BT_OV_V2DF_BV2DI_V2DF)
2388 OB_DEF_VAR (s390_vec_orc_dbl_b, s390_voc, 0, 0, BT_OV_V2DF_V2DF_V2DF)
2389 OB_DEF_VAR (s390_vec_orc_dbl_c, s390_voc, B_DEP, 0, BT_OV_V2DF_V2DF_BV2DI)
2390
2391 B_DEF (s390_voc, ior_notv16qi3, 0, B_VXE, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2392
2393 B_DEF (s390_vfaeb, vfaev16qi, 0, B_VX, O3_U4, BT_FN_UV16QI_UV16QI_UV16QI_INT)
2394 B_DEF (s390_vfaeh, vfaev8hi, 0, B_VX, O3_U4, BT_FN_UV8HI_UV8HI_UV8HI_INT)
2395 B_DEF (s390_vfaef, vfaev4si, 0, B_VX, O3_U4, BT_FN_UV4SI_UV4SI_UV4SI_INT)
2396 B_DEF (s390_vfaezb, vfaezv16qi, 0, B_VX, O3_U4, BT_FN_UV16QI_UV16QI_UV16QI_INT)
2397 B_DEF (s390_vfaezh, vfaezv8hi, 0, B_VX, O3_U4, BT_FN_UV8HI_UV8HI_UV8HI_INT)
2398 B_DEF (s390_vfaezf, vfaezv4si, 0, B_VX, O3_U4, BT_FN_UV4SI_UV4SI_UV4SI_INT)
2399 B_DEF (s390_vfaebs, vfaesv16qi, 0, B_VX, O3_U4, BT_FN_UV16QI_UV16QI_UV16QI_INT_INTPTR)
2400 B_DEF (s390_vfaehs, vfaesv8hi, 0, B_VX, O3_U4, BT_FN_UV8HI_UV8HI_UV8HI_INT_INTPTR)
2401 B_DEF (s390_vfaefs, vfaesv4si, 0, B_VX, O3_U4, BT_FN_UV4SI_UV4SI_UV4SI_INT_INTPTR)
2402 B_DEF (s390_vfaezbs, vfaezsv16qi, 0, B_VX, O3_U4, BT_FN_UV16QI_UV16QI_UV16QI_INT_INTPTR)
2403 B_DEF (s390_vfaezhs, vfaezsv8hi, 0, B_VX, O3_U4, BT_FN_UV8HI_UV8HI_UV8HI_INT_INTPTR)
2404 B_DEF (s390_vfaezfs, vfaezsv4si, 0, B_VX, O3_U4, BT_FN_UV4SI_UV4SI_UV4SI_INT_INTPTR)
2405
2406 OB_DEF (s390_vec_find_any_eq_idx, s390_vfaeb_idx_s8, s390_vfaef_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI)
2407 OB_DEF_VAR (s390_vfaeb_idx_s8, s390_vfaeb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2408 OB_DEF_VAR (s390_vfaeb_idx_u8a, s390_vfaeb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2409 OB_DEF_VAR (s390_vfaeb_idx_u8b, s390_vfaeb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2410 OB_DEF_VAR (s390_vfaeh_idx_s16, s390_vfaeh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2411 OB_DEF_VAR (s390_vfaeh_idx_u16a, s390_vfaeh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2412 OB_DEF_VAR (s390_vfaeh_idx_u16b, s390_vfaeh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2413 OB_DEF_VAR (s390_vfaef_idx_s32, s390_vfaef, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2414 OB_DEF_VAR (s390_vfaef_idx_u32a, s390_vfaef, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2415 OB_DEF_VAR (s390_vfaef_idx_u32b, s390_vfaef, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2416
2417 OB_DEF (s390_vec_find_any_ne_idx, s390_vfaeb_inv_idx_s8,s390_vfaef_inv_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI)
2418 OB_DEF_VAR (s390_vfaeb_inv_idx_s8, s390_vfaeb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2419 OB_DEF_VAR (s390_vfaeb_inv_idx_u8a, s390_vfaeb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2420 OB_DEF_VAR (s390_vfaeb_inv_idx_u8b, s390_vfaeb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2421 OB_DEF_VAR (s390_vfaeh_inv_idx_s16, s390_vfaeh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2422 OB_DEF_VAR (s390_vfaeh_inv_idx_u16a, s390_vfaeh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2423 OB_DEF_VAR (s390_vfaeh_inv_idx_u16b, s390_vfaeh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2424 OB_DEF_VAR (s390_vfaef_inv_idx_s32, s390_vfaef, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2425 OB_DEF_VAR (s390_vfaef_inv_idx_u32a, s390_vfaef, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2426 OB_DEF_VAR (s390_vfaef_inv_idx_u32b, s390_vfaef, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2427
2428 OB_DEF (s390_vec_find_any_eq_or_0_idx,s390_vfaezb_idx_s8,s390_vfaezf_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI)
2429 OB_DEF_VAR (s390_vfaezb_idx_s8, s390_vfaezb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2430 OB_DEF_VAR (s390_vfaezb_idx_u8a, s390_vfaezb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2431 OB_DEF_VAR (s390_vfaezb_idx_u8b, s390_vfaezb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2432 OB_DEF_VAR (s390_vfaezh_idx_s16, s390_vfaezh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2433 OB_DEF_VAR (s390_vfaezh_idx_u16a, s390_vfaezh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2434 OB_DEF_VAR (s390_vfaezh_idx_u16b, s390_vfaezh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2435 OB_DEF_VAR (s390_vfaezf_idx_s32, s390_vfaezf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2436 OB_DEF_VAR (s390_vfaezf_idx_u32a, s390_vfaezf, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2437 OB_DEF_VAR (s390_vfaezf_idx_u32b, s390_vfaezf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2438
2439 OB_DEF (s390_vec_find_any_ne_or_0_idx,s390_vfaezb_inv_idx_s8,s390_vfaezf_inv_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI)
2440 OB_DEF_VAR (s390_vfaezb_inv_idx_s8, s390_vfaezb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2441 OB_DEF_VAR (s390_vfaezb_inv_idx_u8a, s390_vfaezb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2442 OB_DEF_VAR (s390_vfaezb_inv_idx_u8b, s390_vfaezb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2443 OB_DEF_VAR (s390_vfaezh_inv_idx_s16, s390_vfaezh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2444 OB_DEF_VAR (s390_vfaezh_inv_idx_u16a, s390_vfaezh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2445 OB_DEF_VAR (s390_vfaezh_inv_idx_u16b, s390_vfaezh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2446 OB_DEF_VAR (s390_vfaezf_inv_idx_s32, s390_vfaezf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2447 OB_DEF_VAR (s390_vfaezf_inv_idx_u32a, s390_vfaezf, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2448 OB_DEF_VAR (s390_vfaezf_inv_idx_u32b, s390_vfaezf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2449
2450 OB_DEF (s390_vec_find_any_eq, s390_vfaeb_s8, s390_vfaef_b32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2451 OB_DEF_VAR (s390_vfaeb_s8, s390_vfaeb, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
2452 OB_DEF_VAR (s390_vfaeb_u8, s390_vfaeb, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
2453 OB_DEF_VAR (s390_vfaeb_b8, s390_vfaeb, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
2454 OB_DEF_VAR (s390_vfaeh_s16, s390_vfaeh, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
2455 OB_DEF_VAR (s390_vfaeh_u16, s390_vfaeh, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
2456 OB_DEF_VAR (s390_vfaeh_b16, s390_vfaeh, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
2457 OB_DEF_VAR (s390_vfaef_s32, s390_vfaef, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
2458 OB_DEF_VAR (s390_vfaef_u32, s390_vfaef, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
2459 OB_DEF_VAR (s390_vfaef_b32, s390_vfaef, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
2460
2461 OB_DEF (s390_vec_find_any_ne, s390_vfaeb_inv_s8, s390_vfaef_inv_b32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI)
2462 OB_DEF_VAR (s390_vfaeb_inv_s8, s390_vfaeb, 0, 0, BT_OV_BV16QI_V16QI_V16QI)
2463 OB_DEF_VAR (s390_vfaeb_inv_u8, s390_vfaeb, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI)
2464 OB_DEF_VAR (s390_vfaeb_inv_b8, s390_vfaeb, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI)
2465 OB_DEF_VAR (s390_vfaeh_inv_s16, s390_vfaeh, 0, 0, BT_OV_BV8HI_V8HI_V8HI)
2466 OB_DEF_VAR (s390_vfaeh_inv_u16, s390_vfaeh, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI)
2467 OB_DEF_VAR (s390_vfaeh_inv_b16, s390_vfaeh, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI)
2468 OB_DEF_VAR (s390_vfaef_inv_s32, s390_vfaef, 0, 0, BT_OV_BV4SI_V4SI_V4SI)
2469 OB_DEF_VAR (s390_vfaef_inv_u32, s390_vfaef, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI)
2470 OB_DEF_VAR (s390_vfaef_inv_b32, s390_vfaef, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI)
2471
2472 OB_DEF (s390_vec_find_any_eq_idx_cc,s390_vfaebs_idx_s8, s390_vfaefs_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2473 OB_DEF_VAR (s390_vfaebs_idx_s8, s390_vfaebs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2474 OB_DEF_VAR (s390_vfaebs_idx_u8a, s390_vfaebs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2475 OB_DEF_VAR (s390_vfaebs_idx_u8b, s390_vfaebs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2476 OB_DEF_VAR (s390_vfaehs_idx_s16, s390_vfaehs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2477 OB_DEF_VAR (s390_vfaehs_idx_u16a, s390_vfaehs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2478 OB_DEF_VAR (s390_vfaehs_idx_u16b, s390_vfaehs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2479 OB_DEF_VAR (s390_vfaefs_idx_s32, s390_vfaefs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2480 OB_DEF_VAR (s390_vfaefs_idx_u32a, s390_vfaefs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2481 OB_DEF_VAR (s390_vfaefs_idx_u32b, s390_vfaefs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2482
2483 OB_DEF (s390_vec_find_any_ne_idx_cc,s390_vfaebs_inv_idx_s8,s390_vfaefs_inv_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2484 OB_DEF_VAR (s390_vfaebs_inv_idx_s8, s390_vfaebs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2485 OB_DEF_VAR (s390_vfaebs_inv_idx_u8a, s390_vfaebs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2486 OB_DEF_VAR (s390_vfaebs_inv_idx_u8b, s390_vfaebs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2487 OB_DEF_VAR (s390_vfaehs_inv_idx_s16, s390_vfaehs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2488 OB_DEF_VAR (s390_vfaehs_inv_idx_u16a, s390_vfaehs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2489 OB_DEF_VAR (s390_vfaehs_inv_idx_u16b, s390_vfaehs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2490 OB_DEF_VAR (s390_vfaefs_inv_idx_s32, s390_vfaefs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2491 OB_DEF_VAR (s390_vfaefs_inv_idx_u32a, s390_vfaefs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2492 OB_DEF_VAR (s390_vfaefs_inv_idx_u32b, s390_vfaefs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2493
2494 OB_DEF (s390_vec_find_any_eq_or_0_idx_cc,s390_vfaezbs_idx_s8,s390_vfaezfs_idx_u32b,B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2495 OB_DEF_VAR (s390_vfaezbs_idx_s8, s390_vfaezbs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2496 OB_DEF_VAR (s390_vfaezbs_idx_u8a, s390_vfaezbs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2497 OB_DEF_VAR (s390_vfaezbs_idx_u8b, s390_vfaezbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2498 OB_DEF_VAR (s390_vfaezhs_idx_s16, s390_vfaezhs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2499 OB_DEF_VAR (s390_vfaezhs_idx_u16a, s390_vfaezhs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2500 OB_DEF_VAR (s390_vfaezhs_idx_u16b, s390_vfaezhs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2501 OB_DEF_VAR (s390_vfaezfs_idx_s32, s390_vfaezfs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2502 OB_DEF_VAR (s390_vfaezfs_idx_u32a, s390_vfaezfs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2503 OB_DEF_VAR (s390_vfaezfs_idx_u32b, s390_vfaezfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2504
2505 OB_DEF (s390_vec_find_any_ne_or_0_idx_cc,s390_vfaezbs_inv_idx_s8,s390_vfaezfs_inv_idx_u32b,B_VX,BT_FN_INT_OV4SI_OV4SI_INTPTR)
2506 OB_DEF_VAR (s390_vfaezbs_inv_idx_s8, s390_vfaezbs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2507 OB_DEF_VAR (s390_vfaezbs_inv_idx_u8a, s390_vfaezbs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2508 OB_DEF_VAR (s390_vfaezbs_inv_idx_u8b, s390_vfaezbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2509 OB_DEF_VAR (s390_vfaezhs_inv_idx_s16, s390_vfaezhs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2510 OB_DEF_VAR (s390_vfaezhs_inv_idx_u16a, s390_vfaezhs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2511 OB_DEF_VAR (s390_vfaezhs_inv_idx_u16b, s390_vfaezhs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2512 OB_DEF_VAR (s390_vfaezfs_inv_idx_s32, s390_vfaezfs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2513 OB_DEF_VAR (s390_vfaezfs_inv_idx_u32a, s390_vfaezfs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2514 OB_DEF_VAR (s390_vfaezfs_inv_idx_u32b, s390_vfaezfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2515
2516 OB_DEF (s390_vec_find_any_eq_cc, s390_vfaebs_s8, s390_vfaefs_b32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
2517 OB_DEF_VAR (s390_vfaebs_s8, s390_vfaebs, 0, 0, BT_OV_BV16QI_V16QI_V16QI_INTPTR)
2518 OB_DEF_VAR (s390_vfaebs_u8, s390_vfaebs, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI_INTPTR)
2519 OB_DEF_VAR (s390_vfaebs_b8, s390_vfaebs, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI_INTPTR)
2520 OB_DEF_VAR (s390_vfaehs_s16, s390_vfaehs, 0, 0, BT_OV_BV8HI_V8HI_V8HI_INTPTR)
2521 OB_DEF_VAR (s390_vfaehs_u16, s390_vfaehs, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI_INTPTR)
2522 OB_DEF_VAR (s390_vfaehs_b16, s390_vfaehs, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI_INTPTR)
2523 OB_DEF_VAR (s390_vfaefs_s32, s390_vfaefs, 0, 0, BT_OV_BV4SI_V4SI_V4SI_INTPTR)
2524 OB_DEF_VAR (s390_vfaefs_u32, s390_vfaefs, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI_INTPTR)
2525 OB_DEF_VAR (s390_vfaefs_b32, s390_vfaefs, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI_INTPTR)
2526
2527 OB_DEF (s390_vec_find_any_ne_cc, s390_vfaebs_inv_s8, s390_vfaefs_inv_b32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
2528 OB_DEF_VAR (s390_vfaebs_inv_s8, s390_vfaebs, 0, 0, BT_OV_BV16QI_V16QI_V16QI_INTPTR)
2529 OB_DEF_VAR (s390_vfaebs_inv_u8, s390_vfaebs, 0, 0, BT_OV_BV16QI_BV16QI_BV16QI_INTPTR)
2530 OB_DEF_VAR (s390_vfaebs_inv_b8, s390_vfaebs, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI_INTPTR)
2531 OB_DEF_VAR (s390_vfaehs_inv_s16, s390_vfaehs, 0, 0, BT_OV_BV8HI_V8HI_V8HI_INTPTR)
2532 OB_DEF_VAR (s390_vfaehs_inv_u16, s390_vfaehs, 0, 0, BT_OV_BV8HI_BV8HI_BV8HI_INTPTR)
2533 OB_DEF_VAR (s390_vfaehs_inv_b16, s390_vfaehs, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI_INTPTR)
2534 OB_DEF_VAR (s390_vfaefs_inv_s32, s390_vfaefs, 0, 0, BT_OV_BV4SI_V4SI_V4SI_INTPTR)
2535 OB_DEF_VAR (s390_vfaefs_inv_u32, s390_vfaefs, 0, 0, BT_OV_BV4SI_BV4SI_BV4SI_INTPTR)
2536 OB_DEF_VAR (s390_vfaefs_inv_b32, s390_vfaefs, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI_INTPTR)
2537
2538 B_DEF (s390_vfeeb, vfeev16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2539 B_DEF (s390_vfeeh, vfeev8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
2540 B_DEF (s390_vfeef, vfeev4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
2541 B_DEF (s390_vfeezb, vfeezv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2542 B_DEF (s390_vfeezh, vfeezv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
2543 B_DEF (s390_vfeezf, vfeezv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
2544 B_DEF (s390_vfeebs, vfeesv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
2545 B_DEF (s390_vfeehs, vfeesv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
2546 B_DEF (s390_vfeefs, vfeesv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)
2547 B_DEF (s390_vfeezbs, vfeezsv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
2548 B_DEF (s390_vfeezhs, vfeezsv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
2549 B_DEF (s390_vfeezfs, vfeezsv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)
2550
2551 OB_DEF (s390_vec_cmpeq_idx, s390_vfeeb_s8, s390_vfeef_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI)
2552 OB_DEF_VAR (s390_vfeeb_s8, s390_vfeeb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2553 OB_DEF_VAR (s390_vfeeb_u8a, s390_vfeeb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2554 OB_DEF_VAR (s390_vfeeb_u8b, s390_vfeeb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2555 OB_DEF_VAR (s390_vfeeh_s16, s390_vfeeh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2556 OB_DEF_VAR (s390_vfeeh_u16a, s390_vfeeh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2557 OB_DEF_VAR (s390_vfeeh_u16b, s390_vfeeh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2558 OB_DEF_VAR (s390_vfeef_s32, s390_vfeef, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2559 OB_DEF_VAR (s390_vfeef_u32a, s390_vfeef, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2560 OB_DEF_VAR (s390_vfeef_u32b, s390_vfeef, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2561
2562 OB_DEF (s390_vec_cmpeq_or_0_idx, s390_vfeezb_s8, s390_vfeezf_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI)
2563 OB_DEF_VAR (s390_vfeezb_s8, s390_vfeezb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2564 OB_DEF_VAR (s390_vfeezb_u8a, s390_vfeezb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2565 OB_DEF_VAR (s390_vfeezb_u8b, s390_vfeezb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2566 OB_DEF_VAR (s390_vfeezh_s16, s390_vfeezh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2567 OB_DEF_VAR (s390_vfeezh_u16a, s390_vfeezh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2568 OB_DEF_VAR (s390_vfeezh_u16b, s390_vfeezh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2569 OB_DEF_VAR (s390_vfeezf_s32, s390_vfeezf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2570 OB_DEF_VAR (s390_vfeezf_u32a, s390_vfeezf, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2571 OB_DEF_VAR (s390_vfeezf_u32b, s390_vfeezf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2572
2573 OB_DEF (s390_vec_cmpeq_idx_cc, s390_vfeebs_s8, s390_vfeefs_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2574 OB_DEF_VAR (s390_vfeebs_s8, s390_vfeebs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2575 OB_DEF_VAR (s390_vfeebs_u8a, s390_vfeebs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2576 OB_DEF_VAR (s390_vfeebs_u8b, s390_vfeebs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2577 OB_DEF_VAR (s390_vfeehs_s16, s390_vfeehs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2578 OB_DEF_VAR (s390_vfeehs_u16a, s390_vfeehs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2579 OB_DEF_VAR (s390_vfeehs_u16b, s390_vfeehs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2580 OB_DEF_VAR (s390_vfeefs_s32, s390_vfeefs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2581 OB_DEF_VAR (s390_vfeefs_u32a, s390_vfeefs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2582 OB_DEF_VAR (s390_vfeefs_u32b, s390_vfeefs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2583
2584 OB_DEF (s390_vec_cmpeq_or_0_idx_cc, s390_vfeezbs_s8, s390_vfeezfs_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2585 OB_DEF_VAR (s390_vfeezbs_s8, s390_vfeezbs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2586 OB_DEF_VAR (s390_vfeezbs_u8a, s390_vfeezbs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2587 OB_DEF_VAR (s390_vfeezbs_u8b, s390_vfeezbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2588 OB_DEF_VAR (s390_vfeezhs_s16, s390_vfeezhs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2589 OB_DEF_VAR (s390_vfeezhs_u16a, s390_vfeezhs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2590 OB_DEF_VAR (s390_vfeezhs_u16b, s390_vfeezhs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2591 OB_DEF_VAR (s390_vfeezfs_s32, s390_vfeezfs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2592 OB_DEF_VAR (s390_vfeezfs_u32a, s390_vfeezfs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2593 OB_DEF_VAR (s390_vfeezfs_u32b, s390_vfeezfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2594
2595 B_DEF (s390_vfeneb, vfenev16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2596 B_DEF (s390_vfeneh, vfenev8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
2597 B_DEF (s390_vfenef, vfenev4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
2598 B_DEF (s390_vfenezb, vfenezv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI)
2599 B_DEF (s390_vfenezh, vfenezv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI)
2600 B_DEF (s390_vfenezf, vfenezv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI)
2601 B_DEF (s390_vfenebs, vfenesv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
2602 B_DEF (s390_vfenehs, vfenesv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
2603 B_DEF (s390_vfenefs, vfenesv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)
2604 B_DEF (s390_vfenezbs, vfenezsv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
2605 B_DEF (s390_vfenezhs, vfenezsv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
2606 B_DEF (s390_vfenezfs, vfenezsv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)
2607
2608 OB_DEF (s390_vec_cmpne_idx, s390_vfeneb_s8, s390_vfenef_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI)
2609 OB_DEF_VAR (s390_vfeneb_s8, s390_vfeneb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2610 OB_DEF_VAR (s390_vfeneb_u8a, s390_vfeneb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2611 OB_DEF_VAR (s390_vfeneb_u8b, s390_vfeneb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2612 OB_DEF_VAR (s390_vfeneh_s16, s390_vfeneh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2613 OB_DEF_VAR (s390_vfeneh_u16a, s390_vfeneh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2614 OB_DEF_VAR (s390_vfeneh_u16b, s390_vfeneh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2615 OB_DEF_VAR (s390_vfenef_s32, s390_vfenef, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2616 OB_DEF_VAR (s390_vfenef_u32a, s390_vfenef, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2617 OB_DEF_VAR (s390_vfenef_u32b, s390_vfenef, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2618
2619 OB_DEF (s390_vec_cmpne_or_0_idx, s390_vfenezb_s8, s390_vfenezf_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI)
2620 OB_DEF_VAR (s390_vfenezb_s8, s390_vfenezb, 0, 0, BT_OV_V16QI_V16QI_V16QI)
2621 OB_DEF_VAR (s390_vfenezb_u8a, s390_vfenezb, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI)
2622 OB_DEF_VAR (s390_vfenezb_u8b, s390_vfenezb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI)
2623 OB_DEF_VAR (s390_vfenezh_s16, s390_vfenezh, 0, 0, BT_OV_V8HI_V8HI_V8HI)
2624 OB_DEF_VAR (s390_vfenezh_u16a, s390_vfenezh, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI)
2625 OB_DEF_VAR (s390_vfenezh_u16b, s390_vfenezh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI)
2626 OB_DEF_VAR (s390_vfenezf_s32, s390_vfenezf, 0, 0, BT_OV_V4SI_V4SI_V4SI)
2627 OB_DEF_VAR (s390_vfenezf_u32a, s390_vfenezf, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI)
2628 OB_DEF_VAR (s390_vfenezf_u32b, s390_vfenezf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI)
2629
2630 OB_DEF (s390_vec_cmpne_idx_cc, s390_vfenebs_s8, s390_vfenefs_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2631 OB_DEF_VAR (s390_vfenebs_s8, s390_vfenebs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2632 OB_DEF_VAR (s390_vfenebs_u8a, s390_vfenebs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2633 OB_DEF_VAR (s390_vfenebs_u8b, s390_vfenebs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2634 OB_DEF_VAR (s390_vfenehs_s16, s390_vfenehs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2635 OB_DEF_VAR (s390_vfenehs_u16a, s390_vfenehs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2636 OB_DEF_VAR (s390_vfenehs_u16b, s390_vfenehs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2637 OB_DEF_VAR (s390_vfenefs_s32, s390_vfenefs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2638 OB_DEF_VAR (s390_vfenefs_u32a, s390_vfenefs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2639 OB_DEF_VAR (s390_vfenefs_u32b, s390_vfenefs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2640
2641 OB_DEF (s390_vec_cmpne_or_0_idx_cc, s390_vfenezbs_s8, s390_vfenezfs_u32b, B_VX, BT_FN_INT_OV4SI_OV4SI_INTPTR)
2642 OB_DEF_VAR (s390_vfenezbs_s8, s390_vfenezbs, 0, 0, BT_OV_V16QI_V16QI_V16QI_INTPTR)
2643 OB_DEF_VAR (s390_vfenezbs_u8a, s390_vfenezbs, 0, 0, BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
2644 OB_DEF_VAR (s390_vfenezbs_u8b, s390_vfenezbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
2645 OB_DEF_VAR (s390_vfenezhs_s16, s390_vfenezhs, 0, 0, BT_OV_V8HI_V8HI_V8HI_INTPTR)
2646 OB_DEF_VAR (s390_vfenezhs_u16a, s390_vfenezhs, 0, 0, BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
2647 OB_DEF_VAR (s390_vfenezhs_u16b, s390_vfenezhs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
2648 OB_DEF_VAR (s390_vfenezfs_s32, s390_vfenezfs, 0, 0, BT_OV_V4SI_V4SI_V4SI_INTPTR)
2649 OB_DEF_VAR (s390_vfenezfs_u32a, s390_vfenezfs, 0, 0, BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
2650 OB_DEF_VAR (s390_vfenezfs_u32b, s390_vfenezfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)
2651
2652 B_DEF (s390_vistrb, vistrv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI)
2653 B_DEF (s390_vistrh, vistrv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI)
2654 B_DEF (s390_vistrf, vistrv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI)
2655 B_DEF (s390_vistrbs, vistrsv16qi, 0, B_VX, 0, BT_FN_UV16QI_UV16QI_INTPTR)
2656 B_DEF (s390_vistrhs, vistrsv8hi, 0, B_VX, 0, BT_FN_UV8HI_UV8HI_INTPTR)
2657 B_DEF (s390_vistrfs, vistrsv4si, 0, B_VX, 0, BT_FN_UV4SI_UV4SI_INTPTR)
2658
2659 OB_DEF (s390_vec_cp_until_zero, s390_vistrb_s8, s390_vistrf_u32, B_VX, BT_FN_OV4SI_OV4SI)
2660 OB_DEF_VAR (s390_vistrb_s8, s390_vistrb, 0, 0, BT_OV_V16QI_V16QI)
2661 OB_DEF_VAR (s390_vistrb_b8, s390_vistrb, 0, 0, BT_OV_BV16QI_BV16QI)
2662 OB_DEF_VAR (s390_vistrb_u8, s390_vistrb, 0, 0, BT_OV_UV16QI_UV16QI)
2663 OB_DEF_VAR (s390_vistrh_s16, s390_vistrh, 0, 0, BT_OV_V8HI_V8HI)
2664 OB_DEF_VAR (s390_vistrh_b16, s390_vistrh, 0, 0, BT_OV_BV8HI_BV8HI)
2665 OB_DEF_VAR (s390_vistrh_u16, s390_vistrh, 0, 0, BT_OV_UV8HI_UV8HI)
2666 OB_DEF_VAR (s390_vistrf_s32, s390_vistrf, 0, 0, BT_OV_V4SI_V4SI)
2667 OB_DEF_VAR (s390_vistrf_b32, s390_vistrf, 0, 0, BT_OV_BV4SI_BV4SI)
2668 OB_DEF_VAR (s390_vistrf_u32, s390_vistrf, 0, 0, BT_OV_UV4SI_UV4SI)
2669
2670 OB_DEF (s390_vec_cp_until_zero_cc, s390_vistrbs_s8, s390_vistrfs_u32, B_VX, BT_FN_OV4SI_OV4SI_INTPTR)
2671 OB_DEF_VAR (s390_vistrbs_s8, s390_vistrbs, 0, 0, BT_OV_V16QI_V16QI_INTPTR)
2672 OB_DEF_VAR (s390_vistrbs_b8, s390_vistrbs, 0, 0, BT_OV_BV16QI_BV16QI_INTPTR)
2673 OB_DEF_VAR (s390_vistrbs_u8, s390_vistrbs, 0, 0, BT_OV_UV16QI_UV16QI_INTPTR)
2674 OB_DEF_VAR (s390_vistrhs_s16, s390_vistrhs, 0, 0, BT_OV_V8HI_V8HI_INTPTR)
2675 OB_DEF_VAR (s390_vistrhs_b16, s390_vistrhs, 0, 0, BT_OV_BV8HI_BV8HI_INTPTR)
2676 OB_DEF_VAR (s390_vistrhs_u16, s390_vistrhs, 0, 0, BT_OV_UV8HI_UV8HI_INTPTR)
2677 OB_DEF_VAR (s390_vistrfs_s32, s390_vistrfs, 0, 0, BT_OV_V4SI_V4SI_INTPTR)
2678 OB_DEF_VAR (s390_vistrfs_b32, s390_vistrfs, 0, 0, BT_OV_BV4SI_BV4SI_INTPTR)
2679 OB_DEF_VAR (s390_vistrfs_u32, s390_vistrfs, 0, 0, BT_OV_UV4SI_UV4SI_INTPTR)
2680
2681 B_DEF (s390_vstrcb, vstrcv16qi, 0, B_VX, O4_U4, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT)
2682 B_DEF (s390_vstrch, vstrcv8hi, 0, B_VX, O4_U4, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT)
2683 B_DEF (s390_vstrcf, vstrcv4si, 0, B_VX, O4_U4, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT)
2684 B_DEF (s390_vstrczb, vstrczv16qi, 0, B_VX, O4_U4, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT)
2685 B_DEF (s390_vstrczh, vstrczv8hi, 0, B_VX, O4_U4, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT)
2686 B_DEF (s390_vstrczf, vstrczv4si, 0, B_VX, O4_U4, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT)
2687 B_DEF (s390_vstrcbs, vstrcsv16qi, 0, B_VX, O4_U4, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT_INTPTR)
2688 B_DEF (s390_vstrchs, vstrcsv8hi, 0, B_VX, O4_U4, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT_INTPTR)
2689 B_DEF (s390_vstrcfs, vstrcsv4si, 0, B_VX, O4_U4, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT_INTPTR)
2690 B_DEF (s390_vstrczbs, vstrczsv16qi, 0, B_VX, O4_U4, BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT_INTPTR)
2691 B_DEF (s390_vstrczhs, vstrczsv8hi, 0, B_VX, O4_U4, BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT_INTPTR)
2692 B_DEF (s390_vstrczfs, vstrczsv4si, 0, B_VX, O4_U4, BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT_INTPTR)
2693
2694 OB_DEF (s390_vec_cmprg_idx, s390_vstrcb_idx_u8, s390_vstrcf_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2695 OB_DEF_VAR (s390_vstrcb_idx_u8, s390_vstrcb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
2696 OB_DEF_VAR (s390_vstrch_idx_u16, s390_vstrch, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
2697 OB_DEF_VAR (s390_vstrcf_idx_u32, s390_vstrcf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
2698
2699 OB_DEF (s390_vec_cmpnrg_idx, s390_vstrcb_inv_idx_u8,s390_vstrcf_inv_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2700 OB_DEF_VAR (s390_vstrcb_inv_idx_u8, s390_vstrcb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
2701 OB_DEF_VAR (s390_vstrch_inv_idx_u16, s390_vstrch, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
2702 OB_DEF_VAR (s390_vstrcf_inv_idx_u32, s390_vstrcf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
2703
2704 OB_DEF (s390_vec_cmprg_or_0_idx, s390_vstrczb_idx_u8,s390_vstrczf_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2705 OB_DEF_VAR (s390_vstrczb_idx_u8, s390_vstrczb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
2706 OB_DEF_VAR (s390_vstrczh_idx_u16, s390_vstrczh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
2707 OB_DEF_VAR (s390_vstrczf_idx_u32, s390_vstrczf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
2708
2709 OB_DEF (s390_vec_cmpnrg_or_0_idx, s390_vstrczb_inv_idx_u8,s390_vstrczf_inv_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2710 OB_DEF_VAR (s390_vstrczb_inv_idx_u8, s390_vstrczb, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
2711 OB_DEF_VAR (s390_vstrczh_inv_idx_u16, s390_vstrczh, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
2712 OB_DEF_VAR (s390_vstrczf_inv_idx_u32, s390_vstrczf, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
2713
2714 OB_DEF (s390_vec_cmprg, s390_vstrcb_u8, s390_vstrcf_u32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2715 OB_DEF_VAR (s390_vstrcb_u8, s390_vstrcb, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI_UV16QI)
2716 OB_DEF_VAR (s390_vstrch_u16, s390_vstrch, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI_UV8HI)
2717 OB_DEF_VAR (s390_vstrcf_u32, s390_vstrcf, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI_UV4SI)
2718
2719 OB_DEF (s390_vec_cmpnrg, s390_vstrcb_inv_u8, s390_vstrcf_inv_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2720 OB_DEF_VAR (s390_vstrcb_inv_u8, s390_vstrcb, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI_UV16QI)
2721 OB_DEF_VAR (s390_vstrch_inv_u16, s390_vstrch, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI_UV8HI)
2722 OB_DEF_VAR (s390_vstrcf_inv_u32, s390_vstrcf, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI_UV4SI)
2723
2724 OB_DEF (s390_vec_cmprg_idx_cc, s390_vstrcbs_idx_u8,s390_vstrcfs_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
2725 OB_DEF_VAR (s390_vstrcbs_idx_u8, s390_vstrcbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
2726 OB_DEF_VAR (s390_vstrchs_idx_u16, s390_vstrchs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
2727 OB_DEF_VAR (s390_vstrcfs_idx_u32, s390_vstrcfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)
2728
2729 OB_DEF (s390_vec_cmpnrg_idx_cc, s390_vstrcbs_inv_idx_u8,s390_vstrcfs_inv_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
2730 OB_DEF_VAR (s390_vstrcbs_inv_idx_u8, s390_vstrcbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR) /* vstrcb */
2731 OB_DEF_VAR (s390_vstrchs_inv_idx_u16, s390_vstrchs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR) /* vstrch */
2732 OB_DEF_VAR (s390_vstrcfs_inv_idx_u32, s390_vstrcfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR) /* vstrcf */
2733
2734 OB_DEF (s390_vec_cmprg_or_0_idx_cc, s390_vstrczbs_idx_u8,s390_vstrczfs_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
2735 OB_DEF_VAR (s390_vstrczbs_idx_u8, s390_vstrczbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
2736 OB_DEF_VAR (s390_vstrczhs_idx_u16, s390_vstrczhs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
2737 OB_DEF_VAR (s390_vstrczfs_idx_u32, s390_vstrczfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)
2738
2739 OB_DEF (s390_vec_cmpnrg_or_0_idx_cc,s390_vstrczbs_inv_idx_u8,s390_vstrczfs_inv_idx_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
2740 OB_DEF_VAR (s390_vstrczbs_inv_idx_u8, s390_vstrczbs, 0, 0, BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
2741 OB_DEF_VAR (s390_vstrczhs_inv_idx_u16, s390_vstrczhs, 0, 0, BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
2742 OB_DEF_VAR (s390_vstrczfs_inv_idx_u32, s390_vstrczfs, 0, 0, BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)
2743
2744 OB_DEF (s390_vec_cmprg_cc, s390_vstrcbs_u8, s390_vstrcfs_u32, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
2745 OB_DEF_VAR (s390_vstrcbs_u8, s390_vstrcbs, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
2746 OB_DEF_VAR (s390_vstrchs_u16, s390_vstrchs, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
2747 OB_DEF_VAR (s390_vstrcfs_u32, s390_vstrcfs, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI_UV4SI_INTPTR)
2748
2749 OB_DEF (s390_vec_cmpnrg_cc, s390_vstrcbs_inv_u8,s390_vstrcfs_inv_u32,B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
2750 OB_DEF_VAR (s390_vstrcbs_inv_u8, s390_vstrcbs, 0, 0, BT_OV_BV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
2751 OB_DEF_VAR (s390_vstrchs_inv_u16, s390_vstrchs, 0, 0, BT_OV_BV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
2752 OB_DEF_VAR (s390_vstrcfs_inv_u32, s390_vstrcfs, 0, 0, BT_OV_BV4SI_UV4SI_UV4SI_UV4SI_INTPTR)
2753
2754 B_DEF (vec_all_unltv4sf, vec_all_unltv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
2755 B_DEF (vec_all_unltv2df, vec_all_unltv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
2756 B_DEF (vec_all_unlev4sf, vec_all_unlev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
2757 B_DEF (vec_all_unlev2df, vec_all_unlev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
2758
2759 B_DEF (vec_any_unltv4sf, vec_any_unltv4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
2760 B_DEF (vec_any_unltv2df, vec_any_unltv2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
2761 B_DEF (vec_any_unlev4sf, vec_any_unlev4sf, 0, B_INT | B_VXE, 0, BT_FN_INT_V4SF_V4SF)
2762 B_DEF (vec_any_unlev2df, vec_any_unlev2df, 0, B_INT | B_VX, 0, BT_FN_INT_V2DF_V2DF)
2763
2764 OB_DEF (s390_vec_all_nge, s390_vec_all_nge_flt,s390_vec_all_nge_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
2765 OB_DEF_VAR (s390_vec_all_nge_flt, vec_all_unltv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF) /* vfchesbs */
2766 OB_DEF_VAR (s390_vec_all_nge_dbl, vec_all_unltv2df, 0, 0, BT_OV_INT_V2DF_V2DF) /* vfchedbs */
2767
2768 OB_DEF (s390_vec_all_ngt, s390_vec_all_ngt_flt,s390_vec_all_ngt_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
2769 OB_DEF_VAR (s390_vec_all_ngt_flt, vec_all_unlev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF) /* vfchsbs */
2770 OB_DEF_VAR (s390_vec_all_ngt_dbl, vec_all_unlev2df, 0, 0, BT_OV_INT_V2DF_V2DF) /* vfchdbs */
2771
2772 OB_DEF (s390_vec_any_nge, s390_vec_any_nge_flt,s390_vec_any_nge_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
2773 OB_DEF_VAR (s390_vec_any_nge_flt, vec_any_unltv4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
2774 OB_DEF_VAR (s390_vec_any_nge_dbl, vec_any_unltv2df, 0, 0, BT_OV_INT_V2DF_V2DF)
2775
2776 OB_DEF (s390_vec_any_ngt, s390_vec_any_ngt_flt,s390_vec_any_ngt_dbl,B_VX, BT_FN_INT_OV4SI_OV4SI)
2777 OB_DEF_VAR (s390_vec_any_ngt_flt, vec_any_unlev4sf, B_VXE, 0, BT_OV_INT_V4SF_V4SF)
2778 OB_DEF_VAR (s390_vec_any_ngt_dbl, vec_any_unlev2df, 0, 0, BT_OV_INT_V2DF_V2DF)
2779
2780 OB_DEF (s390_vec_ctd, s390_vec_ctd_s64, s390_vec_ctd_u64, B_VX, BT_FN_V2DF_UV4SI_INT)
2781 OB_DEF_VAR (s390_vec_ctd_s64, s390_vec_ctd_s64, 0, O2_U5, BT_OV_V2DF_V2DI_INT) /* vcdgb */
2782 OB_DEF_VAR (s390_vec_ctd_u64, s390_vec_ctd_u64, 0, O2_U5, BT_OV_V2DF_UV2DI_INT) /* vcdlgb */
2783
2784 OB_DEF (s390_vfi, s390_vfi_flt, s390_vfi_dbl, B_VX, BT_FN_V2DF_V2DF_UINT_UINT)
2785 OB_DEF_VAR (s390_vfi_flt, s390_vfisb, B_VXE, O2_U4 | O3_U3, BT_OV_V4SF_V4SF_UCHAR_UCHAR) /* vfisb */
2786 OB_DEF_VAR (s390_vfi_dbl, s390_vfidb, 0, O2_U4 | O3_U3, BT_OV_V2DF_V2DF_UCHAR_UCHAR) /* vfidb */
2787
2788 B_DEF (s390_vec_ctd_s64, vec_ctd_s64, 0, B_VX, O2_U3, BT_FN_V2DF_V2DI_INT) /* vcdgb */
2789 B_DEF (s390_vec_ctd_u64, vec_ctd_u64, 0, B_VX, O2_U3, BT_FN_V2DF_UV2DI_INT) /* vcdlgb */
2790 B_DEF (s390_vcdgb, vcdgb, 0, B_VX, O2_U4 | O3_U3, BT_FN_V2DF_V2DI_INT_INT)
2791 B_DEF (s390_vcdlgb, vcdlgb, 0, B_VX, O2_U4 | O3_U3, BT_FN_V2DF_UV2DI_INT_INT)
2792 B_DEF (s390_vec_ctsl, vec_ctsl, 0, B_VX, O2_U3, BT_FN_V2DI_V2DF_INT) /* vcgdb */
2793 B_DEF (s390_vec_ctul, vec_ctul, 0, B_VX, O2_U3, BT_FN_UV2DI_V2DF_INT) /* vclgdb */
2794 B_DEF (s390_vcgdb, vcgdb, 0, B_VX, O2_U4 | O3_U3, BT_FN_V2DI_V2DF_INT_INT)
2795 B_DEF (s390_vclgdb, vclgdb, 0, B_VX, O2_U4 | O3_U3, BT_FN_UV2DI_V2DF_INT_INT)
2796 B_DEF (s390_vfisb, vec_fpintv4sf, 0, B_VXE, O2_U4 | O3_U3, BT_FN_V4SF_V4SF_UCHAR_UCHAR)
2797 B_DEF (s390_vfidb, vec_fpintv2df, 0, B_VX, O2_U4 | O3_U3, BT_FN_V2DF_V2DF_UCHAR_UCHAR)
2798 B_DEF (s390_vec_ld2f, vec_ld2f, 0, B_VX, 0, BT_FN_V2DF_FLTCONSTPTR) /* vldeb */
2799 B_DEF (s390_vec_st2f, vec_st2f, 0, B_VX, 0, BT_FN_VOID_V2DF_FLTPTR) /* vledb */
2800
2801 B_DEF (s390_vfmasb, fmav4sf4, 0, B_VXE, 0, BT_FN_V4SF_V4SF_V4SF_V4SF)
2802 B_DEF (s390_vfmadb, fmav2df4, 0, B_VX, 0, BT_FN_V2DF_V2DF_V2DF_V2DF)
2803 B_DEF (s390_vfmssb, fmsv4sf4, 0, B_VXE, 0, BT_FN_V4SF_V4SF_V4SF_V4SF)
2804 B_DEF (s390_vfmsdb, fmsv2df4, 0, B_VX, 0, BT_FN_V2DF_V2DF_V2DF_V2DF)
2805 B_DEF (s390_vfnmasb, neg_fmav4sf4, 0, B_VXE, 0, BT_FN_V4SF_V4SF_V4SF_V4SF)
2806 B_DEF (s390_vfnmadb, neg_fmav2df4, 0, B_VXE, 0, BT_FN_V2DF_V2DF_V2DF_V2DF)
2807 B_DEF (s390_vfnmssb, neg_fmsv4sf4, 0, B_VXE, 0, BT_FN_V4SF_V4SF_V4SF_V4SF)
2808 B_DEF (s390_vfnmsdb, neg_fmsv2df4, 0, B_VXE, 0, BT_FN_V2DF_V2DF_V2DF_V2DF)
2809
2810 B_DEF (s390_vfsqsb, sqrtv4sf2, 0, B_VXE, 0, BT_FN_V4SF_V4SF)
2811 B_DEF (s390_vfsqdb, sqrtv2df2, 0, B_VX, 0, BT_FN_V2DF_V2DF)
2812
2813 OB_DEF (s390_vec_double, s390_vec_double_s64,s390_vec_double_u64,B_VX, BT_FN_OV4SI_OV4SI)
2814 OB_DEF_VAR (s390_vec_double_s64, s390_vcdgb, 0, 0, BT_OV_V2DF_V2DI)
2815 OB_DEF_VAR (s390_vec_double_u64, s390_vcdlgb, 0, 0, BT_OV_V2DF_UV2DI)
2816
2817 B_DEF (s390_vec_double_s64, vec_double_s64, 0, B_INT | B_VX, 0, BT_FN_V2DF_V2DI) /* vcdgb */
2818 B_DEF (s390_vec_double_u64, vec_double_u64, 0, B_INT | B_VX, 0, BT_FN_V2DF_UV2DI) /* vcdlgb */
2819
2820 B_DEF (s390_vflls, vflls, 0, B_VX, 0, BT_FN_V2DF_V4SF) /* vldeb */
2821 B_DEF (s390_vflrd, vflrd, 0, B_VX, O2_U4 | O3_U4, BT_FN_V4SF_V2DF_INT_INT) /* vledb */
2822
2823 OB_DEF (s390_vec_madd, s390_vec_madd_flt, s390_vec_madd_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2824 OB_DEF_VAR (s390_vec_madd_flt, s390_vfmasb, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF_V4SF)
2825 OB_DEF_VAR (s390_vec_madd_dbl, s390_vfmadb, 0, 0, BT_OV_V2DF_V2DF_V2DF_V2DF)
2826
2827 OB_DEF (s390_vec_msub, s390_vec_msub_flt, s390_vec_msub_dbl, B_VX, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2828 OB_DEF_VAR (s390_vec_msub_flt, s390_vfmssb, B_VXE, 0, BT_OV_V4SF_V4SF_V4SF_V4SF)
2829 OB_DEF_VAR (s390_vec_msub_dbl, s390_vfmsdb, 0, 0, BT_OV_V2DF_V2DF_V2DF_V2DF)
2830
2831 OB_DEF (s390_vec_nmadd, s390_vec_nmadd_flt, s390_vec_nmadd_dbl, B_VXE, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2832 OB_DEF_VAR (s390_vec_nmadd_flt, s390_vfnmasb, 0, 0, BT_OV_V4SF_V4SF_V4SF_V4SF)
2833 OB_DEF_VAR (s390_vec_nmadd_dbl, s390_vfnmadb, 0, 0, BT_OV_V2DF_V2DF_V2DF_V2DF)
2834
2835 OB_DEF (s390_vec_nmsub, s390_vec_nmsub_flt, s390_vec_nmsub_dbl, B_VXE, BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
2836 OB_DEF_VAR (s390_vec_nmsub_flt, s390_vfnmssb, 0, 0, BT_OV_V4SF_V4SF_V4SF_V4SF)
2837 OB_DEF_VAR (s390_vec_nmsub_dbl, s390_vfnmsdb, 0, 0, BT_OV_V2DF_V2DF_V2DF_V2DF)
2838
2839 B_DEF (s390_vflnsb, negabsv4sf2, 0, B_VXE, 0, BT_FN_V4SF_V4SF)
2840 B_DEF (s390_vflndb, negabsv2df2, 0, B_VX, 0, BT_FN_V2DF_V2DF)
2841
2842 OB_DEF (s390_vec_nabs, s390_vec_nabs_flt, s390_vec_nabs_dbl, B_VX, BT_FN_OV4SI_OV4SI)
2843 OB_DEF_VAR (s390_vec_nabs_flt, s390_vflnsb, B_VXE, 0, BT_OV_V4SF_V4SF)
2844 OB_DEF_VAR (s390_vec_nabs_dbl, s390_vflndb, 0, 0, BT_OV_V2DF_V2DF)
2845
2846 OB_DEF (s390_vec_sqrt, s390_vec_sqrt_flt, s390_vec_sqrt_dbl, B_VX, BT_FN_OV4SI_OV4SI)
2847 OB_DEF_VAR (s390_vec_sqrt_flt, s390_vfsqsb, B_VXE, 0, BT_OV_V4SF_V4SF)
2848 OB_DEF_VAR (s390_vec_sqrt_dbl, s390_vfsqdb, 0, 0, BT_OV_V2DF_V2DF)
2849
2850 /* Test data class with boolean result *AND* cc mode. */
2851
2852 B_DEF (s390_vftcisb, vftciv4sf_intcc, 0, B_VXE, O2_U12, BT_FN_V4SI_V4SF_INT_INTPTR)
2853 B_DEF (s390_vftcidb, vftciv2df_intcc, 0, B_VX, O2_U12, BT_FN_V2DI_V2DF_INT_INTPTR)
2854
2855 /* Test data class with boolean result *AND* cc mode. */
2856
2857 B_DEF (s390_vftcisbcc, vftciv4sf_intcc, 0, B_INT | B_VXE, O2_U12, BT_FN_BV4SI_V4SF_USHORT_INTPTR) /* vftcisb */
2858 B_DEF (s390_vftcidbcc, vftciv2df_intcc, 0, B_INT | B_VX, O2_U12, BT_FN_BV2DI_V2DF_USHORT_INTPTR) /* vftcidb */
2859
2860 OB_DEF (s390_vec_fp_test_data_class,s390_vec_fp_test_data_class_flt,s390_vec_fp_test_data_class_dbl,B_VX,BT_FN_OV4SI_OV4SI_INT_INTPTR)
2861 OB_DEF_VAR (s390_vec_fp_test_data_class_flt,s390_vftcisbcc, B_VXE, O2_U12, BT_OV_BV4SI_V4SF_USHORT_INTPTR) /* vftcisb */
2862 OB_DEF_VAR (s390_vec_fp_test_data_class_dbl,s390_vftcidbcc, 0, O2_U12, BT_OV_BV2DI_V2DF_USHORT_INTPTR) /* vftcidb */