Lines Matching +full:2 +full:- +full:bit

1 /*===----------- avxvnniint16intrin.h - AVXVNNIINT16 intrinsics-------------===
5 * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 *===-----------------------------------------------------------------------===
26 /// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
27 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
28 /// signed 16-bit results. Sum these 2 results with the corresponding
29 /// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst.
40 /// A 128-bit vector of [4 x int].
42 /// A 128-bit vector of [8 x short].
44 /// A 128-bit vector of [8 x unsigned short].
46 /// A 128-bit vector of [4 x int].
50 /// tmp1.dword := SignExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
51 /// tmp2.dword := SignExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
63 /// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
64 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
65 /// signed 16-bit results. Sum these 2 results with the corresponding
66 /// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst.
77 /// A 256-bit vector of [8 x int].
79 /// A 256-bit vector of [16 x short].
81 /// A 256-bit vector of [16 x unsigned short].
83 /// A 256-bit vector of [8 x int].
87 /// tmp1.dword := SignExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
88 /// tmp2.dword := SignExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
99 /// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
100 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
101 /// signed 16-bit results. Sum these 2 results with the corresponding
102 /// 32-bit integer in \a __W with signed saturation, and store the packed
103 /// 32-bit results in \a dst.
114 /// A 128-bit vector of [4 x int].
116 /// A 128-bit vector of [8 x short].
118 /// A 128-bit vector of [8 x unsigned short].
120 /// A 128-bit vector of [4 x int].
124 /// tmp1.dword := SignExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
125 /// tmp2.dword := SignExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
137 /// Multiply groups of 2 adjacent pairs of signed 16-bit integers in \a __A with
138 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
139 /// signed 16-bit results. Sum these 2 results with the corresponding
140 /// 32-bit integer in \a __W with signed saturation, and store the packed
141 /// 32-bit results in \a dst.
152 /// A 256-bit vector of [8 x int].
154 /// A 256-bit vector of [16 x short].
156 /// A 256-bit vector of [16 x unsigned short].
158 /// A 256-bit vector of [8 x int].
162 /// tmp1.dword := SignExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
163 /// tmp2.dword := SignExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
174 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
175 /// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
176 /// signed 16-bit results. Sum these 2 results with the corresponding
177 /// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst.
188 /// A 128-bit vector of [4 x int].
190 /// A 128-bit vector of [8 x unsigned short].
192 /// A 128-bit vector of [8 x short].
194 /// A 128-bit vector of [4 x int].
198 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j])
199 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1])
211 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
212 /// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
213 /// signed 16-bit results. Sum these 2 results with the corresponding
214 /// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst.
225 /// A 256-bit vector of [8 x int].
227 /// A 256-bit vector of [16 x unsigned short].
229 /// A 256-bit vector of [16 x short].
231 /// A 256-bit vector of [8 x int].
235 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j])
236 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1])
247 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
248 /// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
249 /// signed 16-bit results. Sum these 2 results with the corresponding
250 /// 32-bit integer in \a __W with signed saturation, and store the packed
251 /// 32-bit results in \a dst.
262 /// A 128-bit vector of [4 x int].
264 /// A 128-bit vector of [8 x unsigned short].
266 /// A 128-bit vector of [8 x short].
268 /// A 128-bit vector of [4 x int].
272 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j])
273 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1])
285 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
286 /// corresponding signed 16-bit integers in \a __B, producing 2 intermediate
287 /// signed 16-bit results. Sum these 2 results with the corresponding
288 /// 32-bit integer in \a __W with signed saturation, and store the packed
289 /// 32-bit results in \a dst.
300 /// A 256-bit vector of [8 x int].
302 /// A 256-bit vector of [16 x unsigned short].
304 /// A 256-bit vector of [16 x short].
306 /// A 256-bit vector of [8 x int].
310 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * SignExtend32(__B.word[2*j])
311 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * SignExtend32(__B.word[2*j+1])
322 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
323 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
324 /// signed 16-bit results. Sum these 2 results with the corresponding
325 /// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst.
336 /// A 128-bit vector of [4 x unsigned int].
338 /// A 128-bit vector of [8 x unsigned short].
340 /// A 128-bit vector of [8 x unsigned short].
342 /// A 128-bit vector of [4 x unsigned int].
346 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
347 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
359 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
360 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
361 /// signed 16-bit results. Sum these 2 results with the corresponding
362 /// 32-bit integer in \a __W, and store the packed 32-bit results in \a dst.
373 /// A 256-bit vector of [8 x unsigned int].
375 /// A 256-bit vector of [16 x unsigned short].
377 /// A 256-bit vector of [16 x unsigned short].
379 /// A 256-bit vector of [8 x unsigned int].
383 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
384 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
395 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
396 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
397 /// signed 16-bit results. Sum these 2 results with the corresponding
398 /// 32-bit integer in \a __W with signed saturation, and store the packed
399 /// 32-bit results in \a dst.
410 /// A 128-bit vector of [4 x unsigned int].
412 /// A 128-bit vector of [8 x unsigned short].
414 /// A 128-bit vector of [8 x unsigned short].
416 /// A 128-bit vector of [4 x unsigned int].
420 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
421 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])
433 /// Multiply groups of 2 adjacent pairs of unsigned 16-bit integers in \a __A with
434 /// corresponding unsigned 16-bit integers in \a __B, producing 2 intermediate
435 /// signed 16-bit results. Sum these 2 results with the corresponding
436 /// 32-bit integer in \a __W with signed saturation, and store the packed
437 /// 32-bit results in \a dst.
448 /// A 256-bit vector of [8 x unsigned int].
450 /// A 256-bit vector of [16 x unsigned short].
452 /// A 256-bit vector of [16 x unsigned short].
454 /// A 256-bit vector of [8 x unsigned int].
458 /// tmp1.dword := ZeroExtend32(__A.word[2*j]) * ZeroExtend32(__B.word[2*j])
459 /// tmp2.dword := ZeroExtend32(__A.word[2*j+1]) * ZeroExtend32(__B.word[2*j+1])