xref: /freebsd/contrib/llvm-project/clang/lib/Headers/hexagon_protos.h (revision 5ca8e32633c4ffbbcd6762e5888b6a4ba0708c6c)
1 //===----------------------------------------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 // Automatically generated file, do not edit!
9 //===----------------------------------------------------------------------===//
10 
11 
12 
13 #ifndef __HEXAGON_PROTOS_H_
14 #define __HEXAGON_PROTOS_H_ 1
15 
16 /* ==========================================================================
17    Assembly Syntax:       Rd32=abs(Rs32)
18    C Intrinsic Prototype: Word32 Q6_R_abs_R(Word32 Rs)
19    Instruction Type:      S_2op
20    Execution Slots:       SLOT23
21    ========================================================================== */
22 
23 #define Q6_R_abs_R __builtin_HEXAGON_A2_abs
24 
25 /* ==========================================================================
26    Assembly Syntax:       Rdd32=abs(Rss32)
27    C Intrinsic Prototype: Word64 Q6_P_abs_P(Word64 Rss)
28    Instruction Type:      S_2op
29    Execution Slots:       SLOT23
30    ========================================================================== */
31 
32 #define Q6_P_abs_P __builtin_HEXAGON_A2_absp
33 
34 /* ==========================================================================
35    Assembly Syntax:       Rd32=abs(Rs32):sat
36    C Intrinsic Prototype: Word32 Q6_R_abs_R_sat(Word32 Rs)
37    Instruction Type:      S_2op
38    Execution Slots:       SLOT23
39    ========================================================================== */
40 
41 #define Q6_R_abs_R_sat __builtin_HEXAGON_A2_abssat
42 
43 /* ==========================================================================
44    Assembly Syntax:       Rd32=add(Rs32,Rt32)
45    C Intrinsic Prototype: Word32 Q6_R_add_RR(Word32 Rs, Word32 Rt)
46    Instruction Type:      ALU32_3op
47    Execution Slots:       SLOT0123
48    ========================================================================== */
49 
50 #define Q6_R_add_RR __builtin_HEXAGON_A2_add
51 
52 /* ==========================================================================
53    Assembly Syntax:       Rd32=add(Rt32.h,Rs32.h):<<16
54    C Intrinsic Prototype: Word32 Q6_R_add_RhRh_s16(Word32 Rt, Word32 Rs)
55    Instruction Type:      ALU64
56    Execution Slots:       SLOT23
57    ========================================================================== */
58 
59 #define Q6_R_add_RhRh_s16 __builtin_HEXAGON_A2_addh_h16_hh
60 
61 /* ==========================================================================
62    Assembly Syntax:       Rd32=add(Rt32.h,Rs32.l):<<16
63    C Intrinsic Prototype: Word32 Q6_R_add_RhRl_s16(Word32 Rt, Word32 Rs)
64    Instruction Type:      ALU64
65    Execution Slots:       SLOT23
66    ========================================================================== */
67 
68 #define Q6_R_add_RhRl_s16 __builtin_HEXAGON_A2_addh_h16_hl
69 
70 /* ==========================================================================
71    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.h):<<16
72    C Intrinsic Prototype: Word32 Q6_R_add_RlRh_s16(Word32 Rt, Word32 Rs)
73    Instruction Type:      ALU64
74    Execution Slots:       SLOT23
75    ========================================================================== */
76 
77 #define Q6_R_add_RlRh_s16 __builtin_HEXAGON_A2_addh_h16_lh
78 
79 /* ==========================================================================
80    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.l):<<16
81    C Intrinsic Prototype: Word32 Q6_R_add_RlRl_s16(Word32 Rt, Word32 Rs)
82    Instruction Type:      ALU64
83    Execution Slots:       SLOT23
84    ========================================================================== */
85 
86 #define Q6_R_add_RlRl_s16 __builtin_HEXAGON_A2_addh_h16_ll
87 
88 /* ==========================================================================
89    Assembly Syntax:       Rd32=add(Rt32.h,Rs32.h):sat:<<16
90    C Intrinsic Prototype: Word32 Q6_R_add_RhRh_sat_s16(Word32 Rt, Word32 Rs)
91    Instruction Type:      ALU64
92    Execution Slots:       SLOT23
93    ========================================================================== */
94 
95 #define Q6_R_add_RhRh_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_hh
96 
97 /* ==========================================================================
98    Assembly Syntax:       Rd32=add(Rt32.h,Rs32.l):sat:<<16
99    C Intrinsic Prototype: Word32 Q6_R_add_RhRl_sat_s16(Word32 Rt, Word32 Rs)
100    Instruction Type:      ALU64
101    Execution Slots:       SLOT23
102    ========================================================================== */
103 
104 #define Q6_R_add_RhRl_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_hl
105 
106 /* ==========================================================================
107    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.h):sat:<<16
108    C Intrinsic Prototype: Word32 Q6_R_add_RlRh_sat_s16(Word32 Rt, Word32 Rs)
109    Instruction Type:      ALU64
110    Execution Slots:       SLOT23
111    ========================================================================== */
112 
113 #define Q6_R_add_RlRh_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_lh
114 
115 /* ==========================================================================
116    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.l):sat:<<16
117    C Intrinsic Prototype: Word32 Q6_R_add_RlRl_sat_s16(Word32 Rt, Word32 Rs)
118    Instruction Type:      ALU64
119    Execution Slots:       SLOT23
120    ========================================================================== */
121 
122 #define Q6_R_add_RlRl_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_ll
123 
124 /* ==========================================================================
125    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.h)
126    C Intrinsic Prototype: Word32 Q6_R_add_RlRh(Word32 Rt, Word32 Rs)
127    Instruction Type:      ALU64
128    Execution Slots:       SLOT23
129    ========================================================================== */
130 
131 #define Q6_R_add_RlRh __builtin_HEXAGON_A2_addh_l16_hl
132 
133 /* ==========================================================================
134    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.l)
135    C Intrinsic Prototype: Word32 Q6_R_add_RlRl(Word32 Rt, Word32 Rs)
136    Instruction Type:      ALU64
137    Execution Slots:       SLOT23
138    ========================================================================== */
139 
140 #define Q6_R_add_RlRl __builtin_HEXAGON_A2_addh_l16_ll
141 
142 /* ==========================================================================
143    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.h):sat
144    C Intrinsic Prototype: Word32 Q6_R_add_RlRh_sat(Word32 Rt, Word32 Rs)
145    Instruction Type:      ALU64
146    Execution Slots:       SLOT23
147    ========================================================================== */
148 
149 #define Q6_R_add_RlRh_sat __builtin_HEXAGON_A2_addh_l16_sat_hl
150 
151 /* ==========================================================================
152    Assembly Syntax:       Rd32=add(Rt32.l,Rs32.l):sat
153    C Intrinsic Prototype: Word32 Q6_R_add_RlRl_sat(Word32 Rt, Word32 Rs)
154    Instruction Type:      ALU64
155    Execution Slots:       SLOT23
156    ========================================================================== */
157 
158 #define Q6_R_add_RlRl_sat __builtin_HEXAGON_A2_addh_l16_sat_ll
159 
160 /* ==========================================================================
161    Assembly Syntax:       Rd32=add(Rs32,#s16)
162    C Intrinsic Prototype: Word32 Q6_R_add_RI(Word32 Rs, Word32 Is16)
163    Instruction Type:      ALU32_ADDI
164    Execution Slots:       SLOT0123
165    ========================================================================== */
166 
167 #define Q6_R_add_RI __builtin_HEXAGON_A2_addi
168 
169 /* ==========================================================================
170    Assembly Syntax:       Rdd32=add(Rss32,Rtt32)
171    C Intrinsic Prototype: Word64 Q6_P_add_PP(Word64 Rss, Word64 Rtt)
172    Instruction Type:      ALU64
173    Execution Slots:       SLOT23
174    ========================================================================== */
175 
176 #define Q6_P_add_PP __builtin_HEXAGON_A2_addp
177 
178 /* ==========================================================================
179    Assembly Syntax:       Rdd32=add(Rss32,Rtt32):sat
180    C Intrinsic Prototype: Word64 Q6_P_add_PP_sat(Word64 Rss, Word64 Rtt)
181    Instruction Type:      ALU64
182    Execution Slots:       SLOT23
183    ========================================================================== */
184 
185 #define Q6_P_add_PP_sat __builtin_HEXAGON_A2_addpsat
186 
187 /* ==========================================================================
188    Assembly Syntax:       Rd32=add(Rs32,Rt32):sat
189    C Intrinsic Prototype: Word32 Q6_R_add_RR_sat(Word32 Rs, Word32 Rt)
190    Instruction Type:      ALU32_3op
191    Execution Slots:       SLOT0123
192    ========================================================================== */
193 
194 #define Q6_R_add_RR_sat __builtin_HEXAGON_A2_addsat
195 
196 /* ==========================================================================
197    Assembly Syntax:       Rdd32=add(Rs32,Rtt32)
198    C Intrinsic Prototype: Word64 Q6_P_add_RP(Word32 Rs, Word64 Rtt)
199    Instruction Type:      ALU64
200    Execution Slots:       SLOT0123
201    ========================================================================== */
202 
203 #define Q6_P_add_RP __builtin_HEXAGON_A2_addsp
204 
205 /* ==========================================================================
206    Assembly Syntax:       Rd32=and(Rs32,Rt32)
207    C Intrinsic Prototype: Word32 Q6_R_and_RR(Word32 Rs, Word32 Rt)
208    Instruction Type:      ALU32_3op
209    Execution Slots:       SLOT0123
210    ========================================================================== */
211 
212 #define Q6_R_and_RR __builtin_HEXAGON_A2_and
213 
214 /* ==========================================================================
215    Assembly Syntax:       Rd32=and(Rs32,#s10)
216    C Intrinsic Prototype: Word32 Q6_R_and_RI(Word32 Rs, Word32 Is10)
217    Instruction Type:      ALU32_2op
218    Execution Slots:       SLOT0123
219    ========================================================================== */
220 
221 #define Q6_R_and_RI __builtin_HEXAGON_A2_andir
222 
223 /* ==========================================================================
224    Assembly Syntax:       Rdd32=and(Rss32,Rtt32)
225    C Intrinsic Prototype: Word64 Q6_P_and_PP(Word64 Rss, Word64 Rtt)
226    Instruction Type:      ALU64
227    Execution Slots:       SLOT23
228    ========================================================================== */
229 
230 #define Q6_P_and_PP __builtin_HEXAGON_A2_andp
231 
232 /* ==========================================================================
233    Assembly Syntax:       Rd32=aslh(Rs32)
234    C Intrinsic Prototype: Word32 Q6_R_aslh_R(Word32 Rs)
235    Instruction Type:      ALU32_2op
236    Execution Slots:       SLOT0123
237    ========================================================================== */
238 
239 #define Q6_R_aslh_R __builtin_HEXAGON_A2_aslh
240 
241 /* ==========================================================================
242    Assembly Syntax:       Rd32=asrh(Rs32)
243    C Intrinsic Prototype: Word32 Q6_R_asrh_R(Word32 Rs)
244    Instruction Type:      ALU32_2op
245    Execution Slots:       SLOT0123
246    ========================================================================== */
247 
248 #define Q6_R_asrh_R __builtin_HEXAGON_A2_asrh
249 
250 /* ==========================================================================
251    Assembly Syntax:       Rd32=combine(Rt32.h,Rs32.h)
252    C Intrinsic Prototype: Word32 Q6_R_combine_RhRh(Word32 Rt, Word32 Rs)
253    Instruction Type:      ALU32_3op
254    Execution Slots:       SLOT0123
255    ========================================================================== */
256 
257 #define Q6_R_combine_RhRh __builtin_HEXAGON_A2_combine_hh
258 
259 /* ==========================================================================
260    Assembly Syntax:       Rd32=combine(Rt32.h,Rs32.l)
261    C Intrinsic Prototype: Word32 Q6_R_combine_RhRl(Word32 Rt, Word32 Rs)
262    Instruction Type:      ALU32_3op
263    Execution Slots:       SLOT0123
264    ========================================================================== */
265 
266 #define Q6_R_combine_RhRl __builtin_HEXAGON_A2_combine_hl
267 
268 /* ==========================================================================
269    Assembly Syntax:       Rd32=combine(Rt32.l,Rs32.h)
270    C Intrinsic Prototype: Word32 Q6_R_combine_RlRh(Word32 Rt, Word32 Rs)
271    Instruction Type:      ALU32_3op
272    Execution Slots:       SLOT0123
273    ========================================================================== */
274 
275 #define Q6_R_combine_RlRh __builtin_HEXAGON_A2_combine_lh
276 
277 /* ==========================================================================
278    Assembly Syntax:       Rd32=combine(Rt32.l,Rs32.l)
279    C Intrinsic Prototype: Word32 Q6_R_combine_RlRl(Word32 Rt, Word32 Rs)
280    Instruction Type:      ALU32_3op
281    Execution Slots:       SLOT0123
282    ========================================================================== */
283 
284 #define Q6_R_combine_RlRl __builtin_HEXAGON_A2_combine_ll
285 
286 /* ==========================================================================
287    Assembly Syntax:       Rdd32=combine(#s8,#S8)
288    C Intrinsic Prototype: Word64 Q6_P_combine_II(Word32 Is8, Word32 IS8)
289    Instruction Type:      ALU32_2op
290    Execution Slots:       SLOT0123
291    ========================================================================== */
292 
293 #define Q6_P_combine_II __builtin_HEXAGON_A2_combineii
294 
295 /* ==========================================================================
296    Assembly Syntax:       Rdd32=combine(Rs32,Rt32)
297    C Intrinsic Prototype: Word64 Q6_P_combine_RR(Word32 Rs, Word32 Rt)
298    Instruction Type:      ALU32_3op
299    Execution Slots:       SLOT0123
300    ========================================================================== */
301 
302 #define Q6_P_combine_RR __builtin_HEXAGON_A2_combinew
303 
304 /* ==========================================================================
305    Assembly Syntax:       Rd32=max(Rs32,Rt32)
306    C Intrinsic Prototype: Word32 Q6_R_max_RR(Word32 Rs, Word32 Rt)
307    Instruction Type:      ALU64
308    Execution Slots:       SLOT23
309    ========================================================================== */
310 
311 #define Q6_R_max_RR __builtin_HEXAGON_A2_max
312 
313 /* ==========================================================================
314    Assembly Syntax:       Rdd32=max(Rss32,Rtt32)
315    C Intrinsic Prototype: Word64 Q6_P_max_PP(Word64 Rss, Word64 Rtt)
316    Instruction Type:      ALU64
317    Execution Slots:       SLOT23
318    ========================================================================== */
319 
320 #define Q6_P_max_PP __builtin_HEXAGON_A2_maxp
321 
322 /* ==========================================================================
323    Assembly Syntax:       Rd32=maxu(Rs32,Rt32)
324    C Intrinsic Prototype: UWord32 Q6_R_maxu_RR(Word32 Rs, Word32 Rt)
325    Instruction Type:      ALU64
326    Execution Slots:       SLOT23
327    ========================================================================== */
328 
329 #define Q6_R_maxu_RR __builtin_HEXAGON_A2_maxu
330 
331 /* ==========================================================================
332    Assembly Syntax:       Rdd32=maxu(Rss32,Rtt32)
333    C Intrinsic Prototype: UWord64 Q6_P_maxu_PP(Word64 Rss, Word64 Rtt)
334    Instruction Type:      ALU64
335    Execution Slots:       SLOT23
336    ========================================================================== */
337 
338 #define Q6_P_maxu_PP __builtin_HEXAGON_A2_maxup
339 
340 /* ==========================================================================
341    Assembly Syntax:       Rd32=min(Rt32,Rs32)
342    C Intrinsic Prototype: Word32 Q6_R_min_RR(Word32 Rt, Word32 Rs)
343    Instruction Type:      ALU64
344    Execution Slots:       SLOT23
345    ========================================================================== */
346 
347 #define Q6_R_min_RR __builtin_HEXAGON_A2_min
348 
349 /* ==========================================================================
350    Assembly Syntax:       Rdd32=min(Rtt32,Rss32)
351    C Intrinsic Prototype: Word64 Q6_P_min_PP(Word64 Rtt, Word64 Rss)
352    Instruction Type:      ALU64
353    Execution Slots:       SLOT23
354    ========================================================================== */
355 
356 #define Q6_P_min_PP __builtin_HEXAGON_A2_minp
357 
358 /* ==========================================================================
359    Assembly Syntax:       Rd32=minu(Rt32,Rs32)
360    C Intrinsic Prototype: UWord32 Q6_R_minu_RR(Word32 Rt, Word32 Rs)
361    Instruction Type:      ALU64
362    Execution Slots:       SLOT23
363    ========================================================================== */
364 
365 #define Q6_R_minu_RR __builtin_HEXAGON_A2_minu
366 
367 /* ==========================================================================
368    Assembly Syntax:       Rdd32=minu(Rtt32,Rss32)
369    C Intrinsic Prototype: UWord64 Q6_P_minu_PP(Word64 Rtt, Word64 Rss)
370    Instruction Type:      ALU64
371    Execution Slots:       SLOT23
372    ========================================================================== */
373 
374 #define Q6_P_minu_PP __builtin_HEXAGON_A2_minup
375 
376 /* ==========================================================================
377    Assembly Syntax:       Rd32=neg(Rs32)
378    C Intrinsic Prototype: Word32 Q6_R_neg_R(Word32 Rs)
379    Instruction Type:      ALU32_2op
380    Execution Slots:       SLOT0123
381    ========================================================================== */
382 
383 #define Q6_R_neg_R __builtin_HEXAGON_A2_neg
384 
385 /* ==========================================================================
386    Assembly Syntax:       Rdd32=neg(Rss32)
387    C Intrinsic Prototype: Word64 Q6_P_neg_P(Word64 Rss)
388    Instruction Type:      S_2op
389    Execution Slots:       SLOT23
390    ========================================================================== */
391 
392 #define Q6_P_neg_P __builtin_HEXAGON_A2_negp
393 
394 /* ==========================================================================
395    Assembly Syntax:       Rd32=neg(Rs32):sat
396    C Intrinsic Prototype: Word32 Q6_R_neg_R_sat(Word32 Rs)
397    Instruction Type:      S_2op
398    Execution Slots:       SLOT23
399    ========================================================================== */
400 
401 #define Q6_R_neg_R_sat __builtin_HEXAGON_A2_negsat
402 
403 /* ==========================================================================
404    Assembly Syntax:       Rd32=not(Rs32)
405    C Intrinsic Prototype: Word32 Q6_R_not_R(Word32 Rs)
406    Instruction Type:      ALU32_2op
407    Execution Slots:       SLOT0123
408    ========================================================================== */
409 
410 #define Q6_R_not_R __builtin_HEXAGON_A2_not
411 
412 /* ==========================================================================
413    Assembly Syntax:       Rdd32=not(Rss32)
414    C Intrinsic Prototype: Word64 Q6_P_not_P(Word64 Rss)
415    Instruction Type:      S_2op
416    Execution Slots:       SLOT23
417    ========================================================================== */
418 
419 #define Q6_P_not_P __builtin_HEXAGON_A2_notp
420 
421 /* ==========================================================================
422    Assembly Syntax:       Rd32=or(Rs32,Rt32)
423    C Intrinsic Prototype: Word32 Q6_R_or_RR(Word32 Rs, Word32 Rt)
424    Instruction Type:      ALU32_3op
425    Execution Slots:       SLOT0123
426    ========================================================================== */
427 
428 #define Q6_R_or_RR __builtin_HEXAGON_A2_or
429 
430 /* ==========================================================================
431    Assembly Syntax:       Rd32=or(Rs32,#s10)
432    C Intrinsic Prototype: Word32 Q6_R_or_RI(Word32 Rs, Word32 Is10)
433    Instruction Type:      ALU32_2op
434    Execution Slots:       SLOT0123
435    ========================================================================== */
436 
437 #define Q6_R_or_RI __builtin_HEXAGON_A2_orir
438 
439 /* ==========================================================================
440    Assembly Syntax:       Rdd32=or(Rss32,Rtt32)
441    C Intrinsic Prototype: Word64 Q6_P_or_PP(Word64 Rss, Word64 Rtt)
442    Instruction Type:      ALU64
443    Execution Slots:       SLOT23
444    ========================================================================== */
445 
446 #define Q6_P_or_PP __builtin_HEXAGON_A2_orp
447 
448 /* ==========================================================================
449    Assembly Syntax:       Rd32=round(Rss32):sat
450    C Intrinsic Prototype: Word32 Q6_R_round_P_sat(Word64 Rss)
451    Instruction Type:      S_2op
452    Execution Slots:       SLOT23
453    ========================================================================== */
454 
455 #define Q6_R_round_P_sat __builtin_HEXAGON_A2_roundsat
456 
457 /* ==========================================================================
458    Assembly Syntax:       Rd32=sat(Rss32)
459    C Intrinsic Prototype: Word32 Q6_R_sat_P(Word64 Rss)
460    Instruction Type:      S_2op
461    Execution Slots:       SLOT23
462    ========================================================================== */
463 
464 #define Q6_R_sat_P __builtin_HEXAGON_A2_sat
465 
466 /* ==========================================================================
467    Assembly Syntax:       Rd32=satb(Rs32)
468    C Intrinsic Prototype: Word32 Q6_R_satb_R(Word32 Rs)
469    Instruction Type:      S_2op
470    Execution Slots:       SLOT23
471    ========================================================================== */
472 
473 #define Q6_R_satb_R __builtin_HEXAGON_A2_satb
474 
475 /* ==========================================================================
476    Assembly Syntax:       Rd32=sath(Rs32)
477    C Intrinsic Prototype: Word32 Q6_R_sath_R(Word32 Rs)
478    Instruction Type:      S_2op
479    Execution Slots:       SLOT23
480    ========================================================================== */
481 
482 #define Q6_R_sath_R __builtin_HEXAGON_A2_sath
483 
484 /* ==========================================================================
485    Assembly Syntax:       Rd32=satub(Rs32)
486    C Intrinsic Prototype: Word32 Q6_R_satub_R(Word32 Rs)
487    Instruction Type:      S_2op
488    Execution Slots:       SLOT23
489    ========================================================================== */
490 
491 #define Q6_R_satub_R __builtin_HEXAGON_A2_satub
492 
493 /* ==========================================================================
494    Assembly Syntax:       Rd32=satuh(Rs32)
495    C Intrinsic Prototype: Word32 Q6_R_satuh_R(Word32 Rs)
496    Instruction Type:      S_2op
497    Execution Slots:       SLOT23
498    ========================================================================== */
499 
500 #define Q6_R_satuh_R __builtin_HEXAGON_A2_satuh
501 
502 /* ==========================================================================
503    Assembly Syntax:       Rd32=sub(Rt32,Rs32)
504    C Intrinsic Prototype: Word32 Q6_R_sub_RR(Word32 Rt, Word32 Rs)
505    Instruction Type:      ALU32_3op
506    Execution Slots:       SLOT0123
507    ========================================================================== */
508 
509 #define Q6_R_sub_RR __builtin_HEXAGON_A2_sub
510 
511 /* ==========================================================================
512    Assembly Syntax:       Rd32=sub(Rt32.h,Rs32.h):<<16
513    C Intrinsic Prototype: Word32 Q6_R_sub_RhRh_s16(Word32 Rt, Word32 Rs)
514    Instruction Type:      ALU64
515    Execution Slots:       SLOT23
516    ========================================================================== */
517 
518 #define Q6_R_sub_RhRh_s16 __builtin_HEXAGON_A2_subh_h16_hh
519 
520 /* ==========================================================================
521    Assembly Syntax:       Rd32=sub(Rt32.h,Rs32.l):<<16
522    C Intrinsic Prototype: Word32 Q6_R_sub_RhRl_s16(Word32 Rt, Word32 Rs)
523    Instruction Type:      ALU64
524    Execution Slots:       SLOT23
525    ========================================================================== */
526 
527 #define Q6_R_sub_RhRl_s16 __builtin_HEXAGON_A2_subh_h16_hl
528 
529 /* ==========================================================================
530    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.h):<<16
531    C Intrinsic Prototype: Word32 Q6_R_sub_RlRh_s16(Word32 Rt, Word32 Rs)
532    Instruction Type:      ALU64
533    Execution Slots:       SLOT23
534    ========================================================================== */
535 
536 #define Q6_R_sub_RlRh_s16 __builtin_HEXAGON_A2_subh_h16_lh
537 
538 /* ==========================================================================
539    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.l):<<16
540    C Intrinsic Prototype: Word32 Q6_R_sub_RlRl_s16(Word32 Rt, Word32 Rs)
541    Instruction Type:      ALU64
542    Execution Slots:       SLOT23
543    ========================================================================== */
544 
545 #define Q6_R_sub_RlRl_s16 __builtin_HEXAGON_A2_subh_h16_ll
546 
547 /* ==========================================================================
548    Assembly Syntax:       Rd32=sub(Rt32.h,Rs32.h):sat:<<16
549    C Intrinsic Prototype: Word32 Q6_R_sub_RhRh_sat_s16(Word32 Rt, Word32 Rs)
550    Instruction Type:      ALU64
551    Execution Slots:       SLOT23
552    ========================================================================== */
553 
554 #define Q6_R_sub_RhRh_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_hh
555 
556 /* ==========================================================================
557    Assembly Syntax:       Rd32=sub(Rt32.h,Rs32.l):sat:<<16
558    C Intrinsic Prototype: Word32 Q6_R_sub_RhRl_sat_s16(Word32 Rt, Word32 Rs)
559    Instruction Type:      ALU64
560    Execution Slots:       SLOT23
561    ========================================================================== */
562 
563 #define Q6_R_sub_RhRl_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_hl
564 
565 /* ==========================================================================
566    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.h):sat:<<16
567    C Intrinsic Prototype: Word32 Q6_R_sub_RlRh_sat_s16(Word32 Rt, Word32 Rs)
568    Instruction Type:      ALU64
569    Execution Slots:       SLOT23
570    ========================================================================== */
571 
572 #define Q6_R_sub_RlRh_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_lh
573 
574 /* ==========================================================================
575    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.l):sat:<<16
576    C Intrinsic Prototype: Word32 Q6_R_sub_RlRl_sat_s16(Word32 Rt, Word32 Rs)
577    Instruction Type:      ALU64
578    Execution Slots:       SLOT23
579    ========================================================================== */
580 
581 #define Q6_R_sub_RlRl_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_ll
582 
583 /* ==========================================================================
584    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.h)
585    C Intrinsic Prototype: Word32 Q6_R_sub_RlRh(Word32 Rt, Word32 Rs)
586    Instruction Type:      ALU64
587    Execution Slots:       SLOT23
588    ========================================================================== */
589 
590 #define Q6_R_sub_RlRh __builtin_HEXAGON_A2_subh_l16_hl
591 
592 /* ==========================================================================
593    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.l)
594    C Intrinsic Prototype: Word32 Q6_R_sub_RlRl(Word32 Rt, Word32 Rs)
595    Instruction Type:      ALU64
596    Execution Slots:       SLOT23
597    ========================================================================== */
598 
599 #define Q6_R_sub_RlRl __builtin_HEXAGON_A2_subh_l16_ll
600 
601 /* ==========================================================================
602    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.h):sat
603    C Intrinsic Prototype: Word32 Q6_R_sub_RlRh_sat(Word32 Rt, Word32 Rs)
604    Instruction Type:      ALU64
605    Execution Slots:       SLOT23
606    ========================================================================== */
607 
608 #define Q6_R_sub_RlRh_sat __builtin_HEXAGON_A2_subh_l16_sat_hl
609 
610 /* ==========================================================================
611    Assembly Syntax:       Rd32=sub(Rt32.l,Rs32.l):sat
612    C Intrinsic Prototype: Word32 Q6_R_sub_RlRl_sat(Word32 Rt, Word32 Rs)
613    Instruction Type:      ALU64
614    Execution Slots:       SLOT23
615    ========================================================================== */
616 
617 #define Q6_R_sub_RlRl_sat __builtin_HEXAGON_A2_subh_l16_sat_ll
618 
619 /* ==========================================================================
620    Assembly Syntax:       Rdd32=sub(Rtt32,Rss32)
621    C Intrinsic Prototype: Word64 Q6_P_sub_PP(Word64 Rtt, Word64 Rss)
622    Instruction Type:      ALU64
623    Execution Slots:       SLOT23
624    ========================================================================== */
625 
626 #define Q6_P_sub_PP __builtin_HEXAGON_A2_subp
627 
628 /* ==========================================================================
629    Assembly Syntax:       Rd32=sub(#s10,Rs32)
630    C Intrinsic Prototype: Word32 Q6_R_sub_IR(Word32 Is10, Word32 Rs)
631    Instruction Type:      ALU32_2op
632    Execution Slots:       SLOT0123
633    ========================================================================== */
634 
635 #define Q6_R_sub_IR __builtin_HEXAGON_A2_subri
636 
637 /* ==========================================================================
638    Assembly Syntax:       Rd32=sub(Rt32,Rs32):sat
639    C Intrinsic Prototype: Word32 Q6_R_sub_RR_sat(Word32 Rt, Word32 Rs)
640    Instruction Type:      ALU32_3op
641    Execution Slots:       SLOT0123
642    ========================================================================== */
643 
644 #define Q6_R_sub_RR_sat __builtin_HEXAGON_A2_subsat
645 
646 /* ==========================================================================
647    Assembly Syntax:       Rd32=vaddh(Rs32,Rt32)
648    C Intrinsic Prototype: Word32 Q6_R_vaddh_RR(Word32 Rs, Word32 Rt)
649    Instruction Type:      ALU32_3op
650    Execution Slots:       SLOT0123
651    ========================================================================== */
652 
653 #define Q6_R_vaddh_RR __builtin_HEXAGON_A2_svaddh
654 
655 /* ==========================================================================
656    Assembly Syntax:       Rd32=vaddh(Rs32,Rt32):sat
657    C Intrinsic Prototype: Word32 Q6_R_vaddh_RR_sat(Word32 Rs, Word32 Rt)
658    Instruction Type:      ALU32_3op
659    Execution Slots:       SLOT0123
660    ========================================================================== */
661 
662 #define Q6_R_vaddh_RR_sat __builtin_HEXAGON_A2_svaddhs
663 
664 /* ==========================================================================
665    Assembly Syntax:       Rd32=vadduh(Rs32,Rt32):sat
666    C Intrinsic Prototype: Word32 Q6_R_vadduh_RR_sat(Word32 Rs, Word32 Rt)
667    Instruction Type:      ALU32_3op
668    Execution Slots:       SLOT0123
669    ========================================================================== */
670 
671 #define Q6_R_vadduh_RR_sat __builtin_HEXAGON_A2_svadduhs
672 
673 /* ==========================================================================
674    Assembly Syntax:       Rd32=vavgh(Rs32,Rt32)
675    C Intrinsic Prototype: Word32 Q6_R_vavgh_RR(Word32 Rs, Word32 Rt)
676    Instruction Type:      ALU32_3op
677    Execution Slots:       SLOT0123
678    ========================================================================== */
679 
680 #define Q6_R_vavgh_RR __builtin_HEXAGON_A2_svavgh
681 
682 /* ==========================================================================
683    Assembly Syntax:       Rd32=vavgh(Rs32,Rt32):rnd
684    C Intrinsic Prototype: Word32 Q6_R_vavgh_RR_rnd(Word32 Rs, Word32 Rt)
685    Instruction Type:      ALU32_3op
686    Execution Slots:       SLOT0123
687    ========================================================================== */
688 
689 #define Q6_R_vavgh_RR_rnd __builtin_HEXAGON_A2_svavghs
690 
691 /* ==========================================================================
692    Assembly Syntax:       Rd32=vnavgh(Rt32,Rs32)
693    C Intrinsic Prototype: Word32 Q6_R_vnavgh_RR(Word32 Rt, Word32 Rs)
694    Instruction Type:      ALU32_3op
695    Execution Slots:       SLOT0123
696    ========================================================================== */
697 
698 #define Q6_R_vnavgh_RR __builtin_HEXAGON_A2_svnavgh
699 
700 /* ==========================================================================
701    Assembly Syntax:       Rd32=vsubh(Rt32,Rs32)
702    C Intrinsic Prototype: Word32 Q6_R_vsubh_RR(Word32 Rt, Word32 Rs)
703    Instruction Type:      ALU32_3op
704    Execution Slots:       SLOT0123
705    ========================================================================== */
706 
707 #define Q6_R_vsubh_RR __builtin_HEXAGON_A2_svsubh
708 
709 /* ==========================================================================
710    Assembly Syntax:       Rd32=vsubh(Rt32,Rs32):sat
711    C Intrinsic Prototype: Word32 Q6_R_vsubh_RR_sat(Word32 Rt, Word32 Rs)
712    Instruction Type:      ALU32_3op
713    Execution Slots:       SLOT0123
714    ========================================================================== */
715 
716 #define Q6_R_vsubh_RR_sat __builtin_HEXAGON_A2_svsubhs
717 
718 /* ==========================================================================
719    Assembly Syntax:       Rd32=vsubuh(Rt32,Rs32):sat
720    C Intrinsic Prototype: Word32 Q6_R_vsubuh_RR_sat(Word32 Rt, Word32 Rs)
721    Instruction Type:      ALU32_3op
722    Execution Slots:       SLOT0123
723    ========================================================================== */
724 
725 #define Q6_R_vsubuh_RR_sat __builtin_HEXAGON_A2_svsubuhs
726 
727 /* ==========================================================================
728    Assembly Syntax:       Rd32=swiz(Rs32)
729    C Intrinsic Prototype: Word32 Q6_R_swiz_R(Word32 Rs)
730    Instruction Type:      S_2op
731    Execution Slots:       SLOT23
732    ========================================================================== */
733 
734 #define Q6_R_swiz_R __builtin_HEXAGON_A2_swiz
735 
736 /* ==========================================================================
737    Assembly Syntax:       Rd32=sxtb(Rs32)
738    C Intrinsic Prototype: Word32 Q6_R_sxtb_R(Word32 Rs)
739    Instruction Type:      ALU32_2op
740    Execution Slots:       SLOT0123
741    ========================================================================== */
742 
743 #define Q6_R_sxtb_R __builtin_HEXAGON_A2_sxtb
744 
745 /* ==========================================================================
746    Assembly Syntax:       Rd32=sxth(Rs32)
747    C Intrinsic Prototype: Word32 Q6_R_sxth_R(Word32 Rs)
748    Instruction Type:      ALU32_2op
749    Execution Slots:       SLOT0123
750    ========================================================================== */
751 
752 #define Q6_R_sxth_R __builtin_HEXAGON_A2_sxth
753 
754 /* ==========================================================================
755    Assembly Syntax:       Rdd32=sxtw(Rs32)
756    C Intrinsic Prototype: Word64 Q6_P_sxtw_R(Word32 Rs)
757    Instruction Type:      S_2op
758    Execution Slots:       SLOT23
759    ========================================================================== */
760 
761 #define Q6_P_sxtw_R __builtin_HEXAGON_A2_sxtw
762 
763 /* ==========================================================================
764    Assembly Syntax:       Rd32=Rs32
765    C Intrinsic Prototype: Word32 Q6_R_equals_R(Word32 Rs)
766    Instruction Type:      ALU32_2op
767    Execution Slots:       SLOT0123
768    ========================================================================== */
769 
770 #define Q6_R_equals_R __builtin_HEXAGON_A2_tfr
771 
772 /* ==========================================================================
773    Assembly Syntax:       Rx32.h=#u16
774    C Intrinsic Prototype: Word32 Q6_Rh_equals_I(Word32 Rx, Word32 Iu16)
775    Instruction Type:      ALU32_2op
776    Execution Slots:       SLOT0123
777    ========================================================================== */
778 
779 #define Q6_Rh_equals_I __builtin_HEXAGON_A2_tfrih
780 
781 /* ==========================================================================
782    Assembly Syntax:       Rx32.l=#u16
783    C Intrinsic Prototype: Word32 Q6_Rl_equals_I(Word32 Rx, Word32 Iu16)
784    Instruction Type:      ALU32_2op
785    Execution Slots:       SLOT0123
786    ========================================================================== */
787 
788 #define Q6_Rl_equals_I __builtin_HEXAGON_A2_tfril
789 
790 /* ==========================================================================
791    Assembly Syntax:       Rdd32=Rss32
792    C Intrinsic Prototype: Word64 Q6_P_equals_P(Word64 Rss)
793    Instruction Type:      ALU32_2op
794    Execution Slots:       SLOT0123
795    ========================================================================== */
796 
797 #define Q6_P_equals_P __builtin_HEXAGON_A2_tfrp
798 
799 /* ==========================================================================
800    Assembly Syntax:       Rdd32=#s8
801    C Intrinsic Prototype: Word64 Q6_P_equals_I(Word32 Is8)
802    Instruction Type:      ALU64
803    Execution Slots:       SLOT0123
804    ========================================================================== */
805 
806 #define Q6_P_equals_I __builtin_HEXAGON_A2_tfrpi
807 
808 /* ==========================================================================
809    Assembly Syntax:       Rd32=#s16
810    C Intrinsic Prototype: Word32 Q6_R_equals_I(Word32 Is16)
811    Instruction Type:      ALU32_2op
812    Execution Slots:       SLOT0123
813    ========================================================================== */
814 
815 #define Q6_R_equals_I __builtin_HEXAGON_A2_tfrsi
816 
817 /* ==========================================================================
818    Assembly Syntax:       Rdd32=vabsh(Rss32)
819    C Intrinsic Prototype: Word64 Q6_P_vabsh_P(Word64 Rss)
820    Instruction Type:      S_2op
821    Execution Slots:       SLOT23
822    ========================================================================== */
823 
824 #define Q6_P_vabsh_P __builtin_HEXAGON_A2_vabsh
825 
826 /* ==========================================================================
827    Assembly Syntax:       Rdd32=vabsh(Rss32):sat
828    C Intrinsic Prototype: Word64 Q6_P_vabsh_P_sat(Word64 Rss)
829    Instruction Type:      S_2op
830    Execution Slots:       SLOT23
831    ========================================================================== */
832 
833 #define Q6_P_vabsh_P_sat __builtin_HEXAGON_A2_vabshsat
834 
835 /* ==========================================================================
836    Assembly Syntax:       Rdd32=vabsw(Rss32)
837    C Intrinsic Prototype: Word64 Q6_P_vabsw_P(Word64 Rss)
838    Instruction Type:      S_2op
839    Execution Slots:       SLOT23
840    ========================================================================== */
841 
842 #define Q6_P_vabsw_P __builtin_HEXAGON_A2_vabsw
843 
844 /* ==========================================================================
845    Assembly Syntax:       Rdd32=vabsw(Rss32):sat
846    C Intrinsic Prototype: Word64 Q6_P_vabsw_P_sat(Word64 Rss)
847    Instruction Type:      S_2op
848    Execution Slots:       SLOT23
849    ========================================================================== */
850 
851 #define Q6_P_vabsw_P_sat __builtin_HEXAGON_A2_vabswsat
852 
853 /* ==========================================================================
854    Assembly Syntax:       Rdd32=vaddb(Rss32,Rtt32)
855    C Intrinsic Prototype: Word64 Q6_P_vaddb_PP(Word64 Rss, Word64 Rtt)
856    Instruction Type:      MAPPING
857    Execution Slots:       SLOT0123
858    ========================================================================== */
859 
860 #define Q6_P_vaddb_PP __builtin_HEXAGON_A2_vaddb_map
861 
862 /* ==========================================================================
863    Assembly Syntax:       Rdd32=vaddh(Rss32,Rtt32)
864    C Intrinsic Prototype: Word64 Q6_P_vaddh_PP(Word64 Rss, Word64 Rtt)
865    Instruction Type:      ALU64
866    Execution Slots:       SLOT23
867    ========================================================================== */
868 
869 #define Q6_P_vaddh_PP __builtin_HEXAGON_A2_vaddh
870 
871 /* ==========================================================================
872    Assembly Syntax:       Rdd32=vaddh(Rss32,Rtt32):sat
873    C Intrinsic Prototype: Word64 Q6_P_vaddh_PP_sat(Word64 Rss, Word64 Rtt)
874    Instruction Type:      ALU64
875    Execution Slots:       SLOT23
876    ========================================================================== */
877 
878 #define Q6_P_vaddh_PP_sat __builtin_HEXAGON_A2_vaddhs
879 
880 /* ==========================================================================
881    Assembly Syntax:       Rdd32=vaddub(Rss32,Rtt32)
882    C Intrinsic Prototype: Word64 Q6_P_vaddub_PP(Word64 Rss, Word64 Rtt)
883    Instruction Type:      ALU64
884    Execution Slots:       SLOT23
885    ========================================================================== */
886 
887 #define Q6_P_vaddub_PP __builtin_HEXAGON_A2_vaddub
888 
889 /* ==========================================================================
890    Assembly Syntax:       Rdd32=vaddub(Rss32,Rtt32):sat
891    C Intrinsic Prototype: Word64 Q6_P_vaddub_PP_sat(Word64 Rss, Word64 Rtt)
892    Instruction Type:      ALU64
893    Execution Slots:       SLOT23
894    ========================================================================== */
895 
896 #define Q6_P_vaddub_PP_sat __builtin_HEXAGON_A2_vaddubs
897 
898 /* ==========================================================================
899    Assembly Syntax:       Rdd32=vadduh(Rss32,Rtt32):sat
900    C Intrinsic Prototype: Word64 Q6_P_vadduh_PP_sat(Word64 Rss, Word64 Rtt)
901    Instruction Type:      ALU64
902    Execution Slots:       SLOT23
903    ========================================================================== */
904 
905 #define Q6_P_vadduh_PP_sat __builtin_HEXAGON_A2_vadduhs
906 
907 /* ==========================================================================
908    Assembly Syntax:       Rdd32=vaddw(Rss32,Rtt32)
909    C Intrinsic Prototype: Word64 Q6_P_vaddw_PP(Word64 Rss, Word64 Rtt)
910    Instruction Type:      ALU64
911    Execution Slots:       SLOT23
912    ========================================================================== */
913 
914 #define Q6_P_vaddw_PP __builtin_HEXAGON_A2_vaddw
915 
916 /* ==========================================================================
917    Assembly Syntax:       Rdd32=vaddw(Rss32,Rtt32):sat
918    C Intrinsic Prototype: Word64 Q6_P_vaddw_PP_sat(Word64 Rss, Word64 Rtt)
919    Instruction Type:      ALU64
920    Execution Slots:       SLOT23
921    ========================================================================== */
922 
923 #define Q6_P_vaddw_PP_sat __builtin_HEXAGON_A2_vaddws
924 
925 /* ==========================================================================
926    Assembly Syntax:       Rdd32=vavgh(Rss32,Rtt32)
927    C Intrinsic Prototype: Word64 Q6_P_vavgh_PP(Word64 Rss, Word64 Rtt)
928    Instruction Type:      ALU64
929    Execution Slots:       SLOT23
930    ========================================================================== */
931 
932 #define Q6_P_vavgh_PP __builtin_HEXAGON_A2_vavgh
933 
934 /* ==========================================================================
935    Assembly Syntax:       Rdd32=vavgh(Rss32,Rtt32):crnd
936    C Intrinsic Prototype: Word64 Q6_P_vavgh_PP_crnd(Word64 Rss, Word64 Rtt)
937    Instruction Type:      ALU64
938    Execution Slots:       SLOT23
939    ========================================================================== */
940 
941 #define Q6_P_vavgh_PP_crnd __builtin_HEXAGON_A2_vavghcr
942 
943 /* ==========================================================================
944    Assembly Syntax:       Rdd32=vavgh(Rss32,Rtt32):rnd
945    C Intrinsic Prototype: Word64 Q6_P_vavgh_PP_rnd(Word64 Rss, Word64 Rtt)
946    Instruction Type:      ALU64
947    Execution Slots:       SLOT23
948    ========================================================================== */
949 
950 #define Q6_P_vavgh_PP_rnd __builtin_HEXAGON_A2_vavghr
951 
952 /* ==========================================================================
953    Assembly Syntax:       Rdd32=vavgub(Rss32,Rtt32)
954    C Intrinsic Prototype: Word64 Q6_P_vavgub_PP(Word64 Rss, Word64 Rtt)
955    Instruction Type:      ALU64
956    Execution Slots:       SLOT23
957    ========================================================================== */
958 
959 #define Q6_P_vavgub_PP __builtin_HEXAGON_A2_vavgub
960 
961 /* ==========================================================================
962    Assembly Syntax:       Rdd32=vavgub(Rss32,Rtt32):rnd
963    C Intrinsic Prototype: Word64 Q6_P_vavgub_PP_rnd(Word64 Rss, Word64 Rtt)
964    Instruction Type:      ALU64
965    Execution Slots:       SLOT23
966    ========================================================================== */
967 
968 #define Q6_P_vavgub_PP_rnd __builtin_HEXAGON_A2_vavgubr
969 
970 /* ==========================================================================
971    Assembly Syntax:       Rdd32=vavguh(Rss32,Rtt32)
972    C Intrinsic Prototype: Word64 Q6_P_vavguh_PP(Word64 Rss, Word64 Rtt)
973    Instruction Type:      ALU64
974    Execution Slots:       SLOT23
975    ========================================================================== */
976 
977 #define Q6_P_vavguh_PP __builtin_HEXAGON_A2_vavguh
978 
979 /* ==========================================================================
980    Assembly Syntax:       Rdd32=vavguh(Rss32,Rtt32):rnd
981    C Intrinsic Prototype: Word64 Q6_P_vavguh_PP_rnd(Word64 Rss, Word64 Rtt)
982    Instruction Type:      ALU64
983    Execution Slots:       SLOT23
984    ========================================================================== */
985 
986 #define Q6_P_vavguh_PP_rnd __builtin_HEXAGON_A2_vavguhr
987 
988 /* ==========================================================================
989    Assembly Syntax:       Rdd32=vavguw(Rss32,Rtt32)
990    C Intrinsic Prototype: Word64 Q6_P_vavguw_PP(Word64 Rss, Word64 Rtt)
991    Instruction Type:      ALU64
992    Execution Slots:       SLOT23
993    ========================================================================== */
994 
995 #define Q6_P_vavguw_PP __builtin_HEXAGON_A2_vavguw
996 
997 /* ==========================================================================
998    Assembly Syntax:       Rdd32=vavguw(Rss32,Rtt32):rnd
999    C Intrinsic Prototype: Word64 Q6_P_vavguw_PP_rnd(Word64 Rss, Word64 Rtt)
1000    Instruction Type:      ALU64
1001    Execution Slots:       SLOT23
1002    ========================================================================== */
1003 
1004 #define Q6_P_vavguw_PP_rnd __builtin_HEXAGON_A2_vavguwr
1005 
1006 /* ==========================================================================
1007    Assembly Syntax:       Rdd32=vavgw(Rss32,Rtt32)
1008    C Intrinsic Prototype: Word64 Q6_P_vavgw_PP(Word64 Rss, Word64 Rtt)
1009    Instruction Type:      ALU64
1010    Execution Slots:       SLOT23
1011    ========================================================================== */
1012 
1013 #define Q6_P_vavgw_PP __builtin_HEXAGON_A2_vavgw
1014 
1015 /* ==========================================================================
1016    Assembly Syntax:       Rdd32=vavgw(Rss32,Rtt32):crnd
1017    C Intrinsic Prototype: Word64 Q6_P_vavgw_PP_crnd(Word64 Rss, Word64 Rtt)
1018    Instruction Type:      ALU64
1019    Execution Slots:       SLOT23
1020    ========================================================================== */
1021 
1022 #define Q6_P_vavgw_PP_crnd __builtin_HEXAGON_A2_vavgwcr
1023 
1024 /* ==========================================================================
1025    Assembly Syntax:       Rdd32=vavgw(Rss32,Rtt32):rnd
1026    C Intrinsic Prototype: Word64 Q6_P_vavgw_PP_rnd(Word64 Rss, Word64 Rtt)
1027    Instruction Type:      ALU64
1028    Execution Slots:       SLOT23
1029    ========================================================================== */
1030 
1031 #define Q6_P_vavgw_PP_rnd __builtin_HEXAGON_A2_vavgwr
1032 
1033 /* ==========================================================================
1034    Assembly Syntax:       Pd4=vcmpb.eq(Rss32,Rtt32)
1035    C Intrinsic Prototype: Byte Q6_p_vcmpb_eq_PP(Word64 Rss, Word64 Rtt)
1036    Instruction Type:      ALU64
1037    Execution Slots:       SLOT23
1038    ========================================================================== */
1039 
1040 #define Q6_p_vcmpb_eq_PP __builtin_HEXAGON_A2_vcmpbeq
1041 
1042 /* ==========================================================================
1043    Assembly Syntax:       Pd4=vcmpb.gtu(Rss32,Rtt32)
1044    C Intrinsic Prototype: Byte Q6_p_vcmpb_gtu_PP(Word64 Rss, Word64 Rtt)
1045    Instruction Type:      ALU64
1046    Execution Slots:       SLOT23
1047    ========================================================================== */
1048 
1049 #define Q6_p_vcmpb_gtu_PP __builtin_HEXAGON_A2_vcmpbgtu
1050 
1051 /* ==========================================================================
1052    Assembly Syntax:       Pd4=vcmph.eq(Rss32,Rtt32)
1053    C Intrinsic Prototype: Byte Q6_p_vcmph_eq_PP(Word64 Rss, Word64 Rtt)
1054    Instruction Type:      ALU64
1055    Execution Slots:       SLOT23
1056    ========================================================================== */
1057 
1058 #define Q6_p_vcmph_eq_PP __builtin_HEXAGON_A2_vcmpheq
1059 
1060 /* ==========================================================================
1061    Assembly Syntax:       Pd4=vcmph.gt(Rss32,Rtt32)
1062    C Intrinsic Prototype: Byte Q6_p_vcmph_gt_PP(Word64 Rss, Word64 Rtt)
1063    Instruction Type:      ALU64
1064    Execution Slots:       SLOT23
1065    ========================================================================== */
1066 
1067 #define Q6_p_vcmph_gt_PP __builtin_HEXAGON_A2_vcmphgt
1068 
1069 /* ==========================================================================
1070    Assembly Syntax:       Pd4=vcmph.gtu(Rss32,Rtt32)
1071    C Intrinsic Prototype: Byte Q6_p_vcmph_gtu_PP(Word64 Rss, Word64 Rtt)
1072    Instruction Type:      ALU64
1073    Execution Slots:       SLOT23
1074    ========================================================================== */
1075 
1076 #define Q6_p_vcmph_gtu_PP __builtin_HEXAGON_A2_vcmphgtu
1077 
1078 /* ==========================================================================
1079    Assembly Syntax:       Pd4=vcmpw.eq(Rss32,Rtt32)
1080    C Intrinsic Prototype: Byte Q6_p_vcmpw_eq_PP(Word64 Rss, Word64 Rtt)
1081    Instruction Type:      ALU64
1082    Execution Slots:       SLOT23
1083    ========================================================================== */
1084 
1085 #define Q6_p_vcmpw_eq_PP __builtin_HEXAGON_A2_vcmpweq
1086 
1087 /* ==========================================================================
1088    Assembly Syntax:       Pd4=vcmpw.gt(Rss32,Rtt32)
1089    C Intrinsic Prototype: Byte Q6_p_vcmpw_gt_PP(Word64 Rss, Word64 Rtt)
1090    Instruction Type:      ALU64
1091    Execution Slots:       SLOT23
1092    ========================================================================== */
1093 
1094 #define Q6_p_vcmpw_gt_PP __builtin_HEXAGON_A2_vcmpwgt
1095 
1096 /* ==========================================================================
1097    Assembly Syntax:       Pd4=vcmpw.gtu(Rss32,Rtt32)
1098    C Intrinsic Prototype: Byte Q6_p_vcmpw_gtu_PP(Word64 Rss, Word64 Rtt)
1099    Instruction Type:      ALU64
1100    Execution Slots:       SLOT23
1101    ========================================================================== */
1102 
1103 #define Q6_p_vcmpw_gtu_PP __builtin_HEXAGON_A2_vcmpwgtu
1104 
1105 /* ==========================================================================
1106    Assembly Syntax:       Rdd32=vconj(Rss32):sat
1107    C Intrinsic Prototype: Word64 Q6_P_vconj_P_sat(Word64 Rss)
1108    Instruction Type:      S_2op
1109    Execution Slots:       SLOT23
1110    ========================================================================== */
1111 
1112 #define Q6_P_vconj_P_sat __builtin_HEXAGON_A2_vconj
1113 
1114 /* ==========================================================================
1115    Assembly Syntax:       Rdd32=vmaxb(Rtt32,Rss32)
1116    C Intrinsic Prototype: Word64 Q6_P_vmaxb_PP(Word64 Rtt, Word64 Rss)
1117    Instruction Type:      ALU64
1118    Execution Slots:       SLOT23
1119    ========================================================================== */
1120 
1121 #define Q6_P_vmaxb_PP __builtin_HEXAGON_A2_vmaxb
1122 
1123 /* ==========================================================================
1124    Assembly Syntax:       Rdd32=vmaxh(Rtt32,Rss32)
1125    C Intrinsic Prototype: Word64 Q6_P_vmaxh_PP(Word64 Rtt, Word64 Rss)
1126    Instruction Type:      ALU64
1127    Execution Slots:       SLOT23
1128    ========================================================================== */
1129 
1130 #define Q6_P_vmaxh_PP __builtin_HEXAGON_A2_vmaxh
1131 
1132 /* ==========================================================================
1133    Assembly Syntax:       Rdd32=vmaxub(Rtt32,Rss32)
1134    C Intrinsic Prototype: Word64 Q6_P_vmaxub_PP(Word64 Rtt, Word64 Rss)
1135    Instruction Type:      ALU64
1136    Execution Slots:       SLOT23
1137    ========================================================================== */
1138 
1139 #define Q6_P_vmaxub_PP __builtin_HEXAGON_A2_vmaxub
1140 
1141 /* ==========================================================================
1142    Assembly Syntax:       Rdd32=vmaxuh(Rtt32,Rss32)
1143    C Intrinsic Prototype: Word64 Q6_P_vmaxuh_PP(Word64 Rtt, Word64 Rss)
1144    Instruction Type:      ALU64
1145    Execution Slots:       SLOT23
1146    ========================================================================== */
1147 
1148 #define Q6_P_vmaxuh_PP __builtin_HEXAGON_A2_vmaxuh
1149 
1150 /* ==========================================================================
1151    Assembly Syntax:       Rdd32=vmaxuw(Rtt32,Rss32)
1152    C Intrinsic Prototype: Word64 Q6_P_vmaxuw_PP(Word64 Rtt, Word64 Rss)
1153    Instruction Type:      ALU64
1154    Execution Slots:       SLOT23
1155    ========================================================================== */
1156 
1157 #define Q6_P_vmaxuw_PP __builtin_HEXAGON_A2_vmaxuw
1158 
1159 /* ==========================================================================
1160    Assembly Syntax:       Rdd32=vmaxw(Rtt32,Rss32)
1161    C Intrinsic Prototype: Word64 Q6_P_vmaxw_PP(Word64 Rtt, Word64 Rss)
1162    Instruction Type:      ALU64
1163    Execution Slots:       SLOT23
1164    ========================================================================== */
1165 
1166 #define Q6_P_vmaxw_PP __builtin_HEXAGON_A2_vmaxw
1167 
1168 /* ==========================================================================
1169    Assembly Syntax:       Rdd32=vminb(Rtt32,Rss32)
1170    C Intrinsic Prototype: Word64 Q6_P_vminb_PP(Word64 Rtt, Word64 Rss)
1171    Instruction Type:      ALU64
1172    Execution Slots:       SLOT23
1173    ========================================================================== */
1174 
1175 #define Q6_P_vminb_PP __builtin_HEXAGON_A2_vminb
1176 
1177 /* ==========================================================================
1178    Assembly Syntax:       Rdd32=vminh(Rtt32,Rss32)
1179    C Intrinsic Prototype: Word64 Q6_P_vminh_PP(Word64 Rtt, Word64 Rss)
1180    Instruction Type:      ALU64
1181    Execution Slots:       SLOT23
1182    ========================================================================== */
1183 
1184 #define Q6_P_vminh_PP __builtin_HEXAGON_A2_vminh
1185 
1186 /* ==========================================================================
1187    Assembly Syntax:       Rdd32=vminub(Rtt32,Rss32)
1188    C Intrinsic Prototype: Word64 Q6_P_vminub_PP(Word64 Rtt, Word64 Rss)
1189    Instruction Type:      ALU64
1190    Execution Slots:       SLOT23
1191    ========================================================================== */
1192 
1193 #define Q6_P_vminub_PP __builtin_HEXAGON_A2_vminub
1194 
1195 /* ==========================================================================
1196    Assembly Syntax:       Rdd32=vminuh(Rtt32,Rss32)
1197    C Intrinsic Prototype: Word64 Q6_P_vminuh_PP(Word64 Rtt, Word64 Rss)
1198    Instruction Type:      ALU64
1199    Execution Slots:       SLOT23
1200    ========================================================================== */
1201 
1202 #define Q6_P_vminuh_PP __builtin_HEXAGON_A2_vminuh
1203 
1204 /* ==========================================================================
1205    Assembly Syntax:       Rdd32=vminuw(Rtt32,Rss32)
1206    C Intrinsic Prototype: Word64 Q6_P_vminuw_PP(Word64 Rtt, Word64 Rss)
1207    Instruction Type:      ALU64
1208    Execution Slots:       SLOT23
1209    ========================================================================== */
1210 
1211 #define Q6_P_vminuw_PP __builtin_HEXAGON_A2_vminuw
1212 
1213 /* ==========================================================================
1214    Assembly Syntax:       Rdd32=vminw(Rtt32,Rss32)
1215    C Intrinsic Prototype: Word64 Q6_P_vminw_PP(Word64 Rtt, Word64 Rss)
1216    Instruction Type:      ALU64
1217    Execution Slots:       SLOT23
1218    ========================================================================== */
1219 
1220 #define Q6_P_vminw_PP __builtin_HEXAGON_A2_vminw
1221 
1222 /* ==========================================================================
1223    Assembly Syntax:       Rdd32=vnavgh(Rtt32,Rss32)
1224    C Intrinsic Prototype: Word64 Q6_P_vnavgh_PP(Word64 Rtt, Word64 Rss)
1225    Instruction Type:      ALU64
1226    Execution Slots:       SLOT23
1227    ========================================================================== */
1228 
1229 #define Q6_P_vnavgh_PP __builtin_HEXAGON_A2_vnavgh
1230 
1231 /* ==========================================================================
1232    Assembly Syntax:       Rdd32=vnavgh(Rtt32,Rss32):crnd:sat
1233    C Intrinsic Prototype: Word64 Q6_P_vnavgh_PP_crnd_sat(Word64 Rtt, Word64 Rss)
1234    Instruction Type:      ALU64
1235    Execution Slots:       SLOT23
1236    ========================================================================== */
1237 
1238 #define Q6_P_vnavgh_PP_crnd_sat __builtin_HEXAGON_A2_vnavghcr
1239 
1240 /* ==========================================================================
1241    Assembly Syntax:       Rdd32=vnavgh(Rtt32,Rss32):rnd:sat
1242    C Intrinsic Prototype: Word64 Q6_P_vnavgh_PP_rnd_sat(Word64 Rtt, Word64 Rss)
1243    Instruction Type:      ALU64
1244    Execution Slots:       SLOT23
1245    ========================================================================== */
1246 
1247 #define Q6_P_vnavgh_PP_rnd_sat __builtin_HEXAGON_A2_vnavghr
1248 
1249 /* ==========================================================================
1250    Assembly Syntax:       Rdd32=vnavgw(Rtt32,Rss32)
1251    C Intrinsic Prototype: Word64 Q6_P_vnavgw_PP(Word64 Rtt, Word64 Rss)
1252    Instruction Type:      ALU64
1253    Execution Slots:       SLOT23
1254    ========================================================================== */
1255 
1256 #define Q6_P_vnavgw_PP __builtin_HEXAGON_A2_vnavgw
1257 
1258 /* ==========================================================================
1259    Assembly Syntax:       Rdd32=vnavgw(Rtt32,Rss32):crnd:sat
1260    C Intrinsic Prototype: Word64 Q6_P_vnavgw_PP_crnd_sat(Word64 Rtt, Word64 Rss)
1261    Instruction Type:      ALU64
1262    Execution Slots:       SLOT23
1263    ========================================================================== */
1264 
1265 #define Q6_P_vnavgw_PP_crnd_sat __builtin_HEXAGON_A2_vnavgwcr
1266 
1267 /* ==========================================================================
1268    Assembly Syntax:       Rdd32=vnavgw(Rtt32,Rss32):rnd:sat
1269    C Intrinsic Prototype: Word64 Q6_P_vnavgw_PP_rnd_sat(Word64 Rtt, Word64 Rss)
1270    Instruction Type:      ALU64
1271    Execution Slots:       SLOT23
1272    ========================================================================== */
1273 
1274 #define Q6_P_vnavgw_PP_rnd_sat __builtin_HEXAGON_A2_vnavgwr
1275 
1276 /* ==========================================================================
1277    Assembly Syntax:       Rdd32=vraddub(Rss32,Rtt32)
1278    C Intrinsic Prototype: Word64 Q6_P_vraddub_PP(Word64 Rss, Word64 Rtt)
1279    Instruction Type:      M
1280    Execution Slots:       SLOT23
1281    ========================================================================== */
1282 
1283 #define Q6_P_vraddub_PP __builtin_HEXAGON_A2_vraddub
1284 
1285 /* ==========================================================================
1286    Assembly Syntax:       Rxx32+=vraddub(Rss32,Rtt32)
1287    C Intrinsic Prototype: Word64 Q6_P_vraddubacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
1288    Instruction Type:      M
1289    Execution Slots:       SLOT23
1290    ========================================================================== */
1291 
1292 #define Q6_P_vraddubacc_PP __builtin_HEXAGON_A2_vraddub_acc
1293 
1294 /* ==========================================================================
1295    Assembly Syntax:       Rdd32=vrsadub(Rss32,Rtt32)
1296    C Intrinsic Prototype: Word64 Q6_P_vrsadub_PP(Word64 Rss, Word64 Rtt)
1297    Instruction Type:      M
1298    Execution Slots:       SLOT23
1299    ========================================================================== */
1300 
1301 #define Q6_P_vrsadub_PP __builtin_HEXAGON_A2_vrsadub
1302 
1303 /* ==========================================================================
1304    Assembly Syntax:       Rxx32+=vrsadub(Rss32,Rtt32)
1305    C Intrinsic Prototype: Word64 Q6_P_vrsadubacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
1306    Instruction Type:      M
1307    Execution Slots:       SLOT23
1308    ========================================================================== */
1309 
1310 #define Q6_P_vrsadubacc_PP __builtin_HEXAGON_A2_vrsadub_acc
1311 
1312 /* ==========================================================================
1313    Assembly Syntax:       Rdd32=vsubb(Rss32,Rtt32)
1314    C Intrinsic Prototype: Word64 Q6_P_vsubb_PP(Word64 Rss, Word64 Rtt)
1315    Instruction Type:      MAPPING
1316    Execution Slots:       SLOT0123
1317    ========================================================================== */
1318 
1319 #define Q6_P_vsubb_PP __builtin_HEXAGON_A2_vsubb_map
1320 
1321 /* ==========================================================================
1322    Assembly Syntax:       Rdd32=vsubh(Rtt32,Rss32)
1323    C Intrinsic Prototype: Word64 Q6_P_vsubh_PP(Word64 Rtt, Word64 Rss)
1324    Instruction Type:      ALU64
1325    Execution Slots:       SLOT23
1326    ========================================================================== */
1327 
1328 #define Q6_P_vsubh_PP __builtin_HEXAGON_A2_vsubh
1329 
1330 /* ==========================================================================
1331    Assembly Syntax:       Rdd32=vsubh(Rtt32,Rss32):sat
1332    C Intrinsic Prototype: Word64 Q6_P_vsubh_PP_sat(Word64 Rtt, Word64 Rss)
1333    Instruction Type:      ALU64
1334    Execution Slots:       SLOT23
1335    ========================================================================== */
1336 
1337 #define Q6_P_vsubh_PP_sat __builtin_HEXAGON_A2_vsubhs
1338 
1339 /* ==========================================================================
1340    Assembly Syntax:       Rdd32=vsubub(Rtt32,Rss32)
1341    C Intrinsic Prototype: Word64 Q6_P_vsubub_PP(Word64 Rtt, Word64 Rss)
1342    Instruction Type:      ALU64
1343    Execution Slots:       SLOT23
1344    ========================================================================== */
1345 
1346 #define Q6_P_vsubub_PP __builtin_HEXAGON_A2_vsubub
1347 
1348 /* ==========================================================================
1349    Assembly Syntax:       Rdd32=vsubub(Rtt32,Rss32):sat
1350    C Intrinsic Prototype: Word64 Q6_P_vsubub_PP_sat(Word64 Rtt, Word64 Rss)
1351    Instruction Type:      ALU64
1352    Execution Slots:       SLOT23
1353    ========================================================================== */
1354 
1355 #define Q6_P_vsubub_PP_sat __builtin_HEXAGON_A2_vsububs
1356 
1357 /* ==========================================================================
1358    Assembly Syntax:       Rdd32=vsubuh(Rtt32,Rss32):sat
1359    C Intrinsic Prototype: Word64 Q6_P_vsubuh_PP_sat(Word64 Rtt, Word64 Rss)
1360    Instruction Type:      ALU64
1361    Execution Slots:       SLOT23
1362    ========================================================================== */
1363 
1364 #define Q6_P_vsubuh_PP_sat __builtin_HEXAGON_A2_vsubuhs
1365 
1366 /* ==========================================================================
1367    Assembly Syntax:       Rdd32=vsubw(Rtt32,Rss32)
1368    C Intrinsic Prototype: Word64 Q6_P_vsubw_PP(Word64 Rtt, Word64 Rss)
1369    Instruction Type:      ALU64
1370    Execution Slots:       SLOT23
1371    ========================================================================== */
1372 
1373 #define Q6_P_vsubw_PP __builtin_HEXAGON_A2_vsubw
1374 
1375 /* ==========================================================================
1376    Assembly Syntax:       Rdd32=vsubw(Rtt32,Rss32):sat
1377    C Intrinsic Prototype: Word64 Q6_P_vsubw_PP_sat(Word64 Rtt, Word64 Rss)
1378    Instruction Type:      ALU64
1379    Execution Slots:       SLOT23
1380    ========================================================================== */
1381 
1382 #define Q6_P_vsubw_PP_sat __builtin_HEXAGON_A2_vsubws
1383 
1384 /* ==========================================================================
1385    Assembly Syntax:       Rd32=xor(Rs32,Rt32)
1386    C Intrinsic Prototype: Word32 Q6_R_xor_RR(Word32 Rs, Word32 Rt)
1387    Instruction Type:      ALU32_3op
1388    Execution Slots:       SLOT0123
1389    ========================================================================== */
1390 
1391 #define Q6_R_xor_RR __builtin_HEXAGON_A2_xor
1392 
1393 /* ==========================================================================
1394    Assembly Syntax:       Rdd32=xor(Rss32,Rtt32)
1395    C Intrinsic Prototype: Word64 Q6_P_xor_PP(Word64 Rss, Word64 Rtt)
1396    Instruction Type:      ALU64
1397    Execution Slots:       SLOT23
1398    ========================================================================== */
1399 
1400 #define Q6_P_xor_PP __builtin_HEXAGON_A2_xorp
1401 
1402 /* ==========================================================================
1403    Assembly Syntax:       Rd32=zxtb(Rs32)
1404    C Intrinsic Prototype: Word32 Q6_R_zxtb_R(Word32 Rs)
1405    Instruction Type:      ALU32_2op
1406    Execution Slots:       SLOT0123
1407    ========================================================================== */
1408 
1409 #define Q6_R_zxtb_R __builtin_HEXAGON_A2_zxtb
1410 
1411 /* ==========================================================================
1412    Assembly Syntax:       Rd32=zxth(Rs32)
1413    C Intrinsic Prototype: Word32 Q6_R_zxth_R(Word32 Rs)
1414    Instruction Type:      ALU32_2op
1415    Execution Slots:       SLOT0123
1416    ========================================================================== */
1417 
1418 #define Q6_R_zxth_R __builtin_HEXAGON_A2_zxth
1419 
1420 /* ==========================================================================
1421    Assembly Syntax:       Rd32=and(Rt32,~Rs32)
1422    C Intrinsic Prototype: Word32 Q6_R_and_RnR(Word32 Rt, Word32 Rs)
1423    Instruction Type:      ALU32_3op
1424    Execution Slots:       SLOT0123
1425    ========================================================================== */
1426 
1427 #define Q6_R_and_RnR __builtin_HEXAGON_A4_andn
1428 
1429 /* ==========================================================================
1430    Assembly Syntax:       Rdd32=and(Rtt32,~Rss32)
1431    C Intrinsic Prototype: Word64 Q6_P_and_PnP(Word64 Rtt, Word64 Rss)
1432    Instruction Type:      ALU64
1433    Execution Slots:       SLOT23
1434    ========================================================================== */
1435 
1436 #define Q6_P_and_PnP __builtin_HEXAGON_A4_andnp
1437 
1438 /* ==========================================================================
1439    Assembly Syntax:       Rdd32=bitsplit(Rs32,Rt32)
1440    C Intrinsic Prototype: Word64 Q6_P_bitsplit_RR(Word32 Rs, Word32 Rt)
1441    Instruction Type:      ALU64
1442    Execution Slots:       SLOT23
1443    ========================================================================== */
1444 
1445 #define Q6_P_bitsplit_RR __builtin_HEXAGON_A4_bitsplit
1446 
1447 /* ==========================================================================
1448    Assembly Syntax:       Rdd32=bitsplit(Rs32,#u5)
1449    C Intrinsic Prototype: Word64 Q6_P_bitsplit_RI(Word32 Rs, Word32 Iu5)
1450    Instruction Type:      S_2op
1451    Execution Slots:       SLOT23
1452    ========================================================================== */
1453 
1454 #define Q6_P_bitsplit_RI __builtin_HEXAGON_A4_bitspliti
1455 
1456 /* ==========================================================================
1457    Assembly Syntax:       Pd4=boundscheck(Rs32,Rtt32)
1458    C Intrinsic Prototype: Byte Q6_p_boundscheck_RP(Word32 Rs, Word64 Rtt)
1459    Instruction Type:      ALU64
1460    Execution Slots:       SLOT0123
1461    ========================================================================== */
1462 
1463 #define Q6_p_boundscheck_RP __builtin_HEXAGON_A4_boundscheck
1464 
1465 /* ==========================================================================
1466    Assembly Syntax:       Pd4=cmpb.eq(Rs32,Rt32)
1467    C Intrinsic Prototype: Byte Q6_p_cmpb_eq_RR(Word32 Rs, Word32 Rt)
1468    Instruction Type:      S_3op
1469    Execution Slots:       SLOT23
1470    ========================================================================== */
1471 
1472 #define Q6_p_cmpb_eq_RR __builtin_HEXAGON_A4_cmpbeq
1473 
1474 /* ==========================================================================
1475    Assembly Syntax:       Pd4=cmpb.eq(Rs32,#u8)
1476    C Intrinsic Prototype: Byte Q6_p_cmpb_eq_RI(Word32 Rs, Word32 Iu8)
1477    Instruction Type:      ALU64
1478    Execution Slots:       SLOT23
1479    ========================================================================== */
1480 
1481 #define Q6_p_cmpb_eq_RI __builtin_HEXAGON_A4_cmpbeqi
1482 
1483 /* ==========================================================================
1484    Assembly Syntax:       Pd4=cmpb.gt(Rs32,Rt32)
1485    C Intrinsic Prototype: Byte Q6_p_cmpb_gt_RR(Word32 Rs, Word32 Rt)
1486    Instruction Type:      S_3op
1487    Execution Slots:       SLOT23
1488    ========================================================================== */
1489 
1490 #define Q6_p_cmpb_gt_RR __builtin_HEXAGON_A4_cmpbgt
1491 
1492 /* ==========================================================================
1493    Assembly Syntax:       Pd4=cmpb.gt(Rs32,#s8)
1494    C Intrinsic Prototype: Byte Q6_p_cmpb_gt_RI(Word32 Rs, Word32 Is8)
1495    Instruction Type:      ALU64
1496    Execution Slots:       SLOT23
1497    ========================================================================== */
1498 
1499 #define Q6_p_cmpb_gt_RI __builtin_HEXAGON_A4_cmpbgti
1500 
1501 /* ==========================================================================
1502    Assembly Syntax:       Pd4=cmpb.gtu(Rs32,Rt32)
1503    C Intrinsic Prototype: Byte Q6_p_cmpb_gtu_RR(Word32 Rs, Word32 Rt)
1504    Instruction Type:      S_3op
1505    Execution Slots:       SLOT23
1506    ========================================================================== */
1507 
1508 #define Q6_p_cmpb_gtu_RR __builtin_HEXAGON_A4_cmpbgtu
1509 
1510 /* ==========================================================================
1511    Assembly Syntax:       Pd4=cmpb.gtu(Rs32,#u7)
1512    C Intrinsic Prototype: Byte Q6_p_cmpb_gtu_RI(Word32 Rs, Word32 Iu7)
1513    Instruction Type:      ALU64
1514    Execution Slots:       SLOT23
1515    ========================================================================== */
1516 
1517 #define Q6_p_cmpb_gtu_RI __builtin_HEXAGON_A4_cmpbgtui
1518 
1519 /* ==========================================================================
1520    Assembly Syntax:       Pd4=cmph.eq(Rs32,Rt32)
1521    C Intrinsic Prototype: Byte Q6_p_cmph_eq_RR(Word32 Rs, Word32 Rt)
1522    Instruction Type:      S_3op
1523    Execution Slots:       SLOT23
1524    ========================================================================== */
1525 
1526 #define Q6_p_cmph_eq_RR __builtin_HEXAGON_A4_cmpheq
1527 
1528 /* ==========================================================================
1529    Assembly Syntax:       Pd4=cmph.eq(Rs32,#s8)
1530    C Intrinsic Prototype: Byte Q6_p_cmph_eq_RI(Word32 Rs, Word32 Is8)
1531    Instruction Type:      ALU64
1532    Execution Slots:       SLOT23
1533    ========================================================================== */
1534 
1535 #define Q6_p_cmph_eq_RI __builtin_HEXAGON_A4_cmpheqi
1536 
1537 /* ==========================================================================
1538    Assembly Syntax:       Pd4=cmph.gt(Rs32,Rt32)
1539    C Intrinsic Prototype: Byte Q6_p_cmph_gt_RR(Word32 Rs, Word32 Rt)
1540    Instruction Type:      S_3op
1541    Execution Slots:       SLOT23
1542    ========================================================================== */
1543 
1544 #define Q6_p_cmph_gt_RR __builtin_HEXAGON_A4_cmphgt
1545 
1546 /* ==========================================================================
1547    Assembly Syntax:       Pd4=cmph.gt(Rs32,#s8)
1548    C Intrinsic Prototype: Byte Q6_p_cmph_gt_RI(Word32 Rs, Word32 Is8)
1549    Instruction Type:      ALU64
1550    Execution Slots:       SLOT23
1551    ========================================================================== */
1552 
1553 #define Q6_p_cmph_gt_RI __builtin_HEXAGON_A4_cmphgti
1554 
1555 /* ==========================================================================
1556    Assembly Syntax:       Pd4=cmph.gtu(Rs32,Rt32)
1557    C Intrinsic Prototype: Byte Q6_p_cmph_gtu_RR(Word32 Rs, Word32 Rt)
1558    Instruction Type:      S_3op
1559    Execution Slots:       SLOT23
1560    ========================================================================== */
1561 
1562 #define Q6_p_cmph_gtu_RR __builtin_HEXAGON_A4_cmphgtu
1563 
1564 /* ==========================================================================
1565    Assembly Syntax:       Pd4=cmph.gtu(Rs32,#u7)
1566    C Intrinsic Prototype: Byte Q6_p_cmph_gtu_RI(Word32 Rs, Word32 Iu7)
1567    Instruction Type:      ALU64
1568    Execution Slots:       SLOT23
1569    ========================================================================== */
1570 
1571 #define Q6_p_cmph_gtu_RI __builtin_HEXAGON_A4_cmphgtui
1572 
1573 /* ==========================================================================
1574    Assembly Syntax:       Rdd32=combine(#s8,Rs32)
1575    C Intrinsic Prototype: Word64 Q6_P_combine_IR(Word32 Is8, Word32 Rs)
1576    Instruction Type:      ALU32_2op
1577    Execution Slots:       SLOT0123
1578    ========================================================================== */
1579 
1580 #define Q6_P_combine_IR __builtin_HEXAGON_A4_combineir
1581 
1582 /* ==========================================================================
1583    Assembly Syntax:       Rdd32=combine(Rs32,#s8)
1584    C Intrinsic Prototype: Word64 Q6_P_combine_RI(Word32 Rs, Word32 Is8)
1585    Instruction Type:      ALU32_2op
1586    Execution Slots:       SLOT0123
1587    ========================================================================== */
1588 
1589 #define Q6_P_combine_RI __builtin_HEXAGON_A4_combineri
1590 
1591 /* ==========================================================================
1592    Assembly Syntax:       Rd32=cround(Rs32,#u5)
1593    C Intrinsic Prototype: Word32 Q6_R_cround_RI(Word32 Rs, Word32 Iu5)
1594    Instruction Type:      S_2op
1595    Execution Slots:       SLOT23
1596    ========================================================================== */
1597 
1598 #define Q6_R_cround_RI __builtin_HEXAGON_A4_cround_ri
1599 
1600 /* ==========================================================================
1601    Assembly Syntax:       Rd32=cround(Rs32,Rt32)
1602    C Intrinsic Prototype: Word32 Q6_R_cround_RR(Word32 Rs, Word32 Rt)
1603    Instruction Type:      S_3op
1604    Execution Slots:       SLOT23
1605    ========================================================================== */
1606 
1607 #define Q6_R_cround_RR __builtin_HEXAGON_A4_cround_rr
1608 
1609 /* ==========================================================================
1610    Assembly Syntax:       Rd32=modwrap(Rs32,Rt32)
1611    C Intrinsic Prototype: Word32 Q6_R_modwrap_RR(Word32 Rs, Word32 Rt)
1612    Instruction Type:      ALU64
1613    Execution Slots:       SLOT23
1614    ========================================================================== */
1615 
1616 #define Q6_R_modwrap_RR __builtin_HEXAGON_A4_modwrapu
1617 
1618 /* ==========================================================================
1619    Assembly Syntax:       Rd32=or(Rt32,~Rs32)
1620    C Intrinsic Prototype: Word32 Q6_R_or_RnR(Word32 Rt, Word32 Rs)
1621    Instruction Type:      ALU32_3op
1622    Execution Slots:       SLOT0123
1623    ========================================================================== */
1624 
1625 #define Q6_R_or_RnR __builtin_HEXAGON_A4_orn
1626 
1627 /* ==========================================================================
1628    Assembly Syntax:       Rdd32=or(Rtt32,~Rss32)
1629    C Intrinsic Prototype: Word64 Q6_P_or_PnP(Word64 Rtt, Word64 Rss)
1630    Instruction Type:      ALU64
1631    Execution Slots:       SLOT23
1632    ========================================================================== */
1633 
1634 #define Q6_P_or_PnP __builtin_HEXAGON_A4_ornp
1635 
1636 /* ==========================================================================
1637    Assembly Syntax:       Rd32=cmp.eq(Rs32,Rt32)
1638    C Intrinsic Prototype: Word32 Q6_R_cmp_eq_RR(Word32 Rs, Word32 Rt)
1639    Instruction Type:      ALU32_3op
1640    Execution Slots:       SLOT0123
1641    ========================================================================== */
1642 
1643 #define Q6_R_cmp_eq_RR __builtin_HEXAGON_A4_rcmpeq
1644 
1645 /* ==========================================================================
1646    Assembly Syntax:       Rd32=cmp.eq(Rs32,#s8)
1647    C Intrinsic Prototype: Word32 Q6_R_cmp_eq_RI(Word32 Rs, Word32 Is8)
1648    Instruction Type:      ALU32_2op
1649    Execution Slots:       SLOT0123
1650    ========================================================================== */
1651 
1652 #define Q6_R_cmp_eq_RI __builtin_HEXAGON_A4_rcmpeqi
1653 
1654 /* ==========================================================================
1655    Assembly Syntax:       Rd32=!cmp.eq(Rs32,Rt32)
1656    C Intrinsic Prototype: Word32 Q6_R_not_cmp_eq_RR(Word32 Rs, Word32 Rt)
1657    Instruction Type:      ALU32_3op
1658    Execution Slots:       SLOT0123
1659    ========================================================================== */
1660 
1661 #define Q6_R_not_cmp_eq_RR __builtin_HEXAGON_A4_rcmpneq
1662 
1663 /* ==========================================================================
1664    Assembly Syntax:       Rd32=!cmp.eq(Rs32,#s8)
1665    C Intrinsic Prototype: Word32 Q6_R_not_cmp_eq_RI(Word32 Rs, Word32 Is8)
1666    Instruction Type:      ALU32_2op
1667    Execution Slots:       SLOT0123
1668    ========================================================================== */
1669 
1670 #define Q6_R_not_cmp_eq_RI __builtin_HEXAGON_A4_rcmpneqi
1671 
1672 /* ==========================================================================
1673    Assembly Syntax:       Rd32=round(Rs32,#u5)
1674    C Intrinsic Prototype: Word32 Q6_R_round_RI(Word32 Rs, Word32 Iu5)
1675    Instruction Type:      S_2op
1676    Execution Slots:       SLOT23
1677    ========================================================================== */
1678 
1679 #define Q6_R_round_RI __builtin_HEXAGON_A4_round_ri
1680 
1681 /* ==========================================================================
1682    Assembly Syntax:       Rd32=round(Rs32,#u5):sat
1683    C Intrinsic Prototype: Word32 Q6_R_round_RI_sat(Word32 Rs, Word32 Iu5)
1684    Instruction Type:      S_2op
1685    Execution Slots:       SLOT23
1686    ========================================================================== */
1687 
1688 #define Q6_R_round_RI_sat __builtin_HEXAGON_A4_round_ri_sat
1689 
1690 /* ==========================================================================
1691    Assembly Syntax:       Rd32=round(Rs32,Rt32)
1692    C Intrinsic Prototype: Word32 Q6_R_round_RR(Word32 Rs, Word32 Rt)
1693    Instruction Type:      S_3op
1694    Execution Slots:       SLOT23
1695    ========================================================================== */
1696 
1697 #define Q6_R_round_RR __builtin_HEXAGON_A4_round_rr
1698 
1699 /* ==========================================================================
1700    Assembly Syntax:       Rd32=round(Rs32,Rt32):sat
1701    C Intrinsic Prototype: Word32 Q6_R_round_RR_sat(Word32 Rs, Word32 Rt)
1702    Instruction Type:      S_3op
1703    Execution Slots:       SLOT23
1704    ========================================================================== */
1705 
1706 #define Q6_R_round_RR_sat __builtin_HEXAGON_A4_round_rr_sat
1707 
1708 /* ==========================================================================
1709    Assembly Syntax:       Pd4=tlbmatch(Rss32,Rt32)
1710    C Intrinsic Prototype: Byte Q6_p_tlbmatch_PR(Word64 Rss, Word32 Rt)
1711    Instruction Type:      ALU64
1712    Execution Slots:       SLOT23
1713    ========================================================================== */
1714 
1715 #define Q6_p_tlbmatch_PR __builtin_HEXAGON_A4_tlbmatch
1716 
1717 /* ==========================================================================
1718    Assembly Syntax:       Pd4=any8(vcmpb.eq(Rss32,Rtt32))
1719    C Intrinsic Prototype: Byte Q6_p_any8_vcmpb_eq_PP(Word64 Rss, Word64 Rtt)
1720    Instruction Type:      ALU64
1721    Execution Slots:       SLOT23
1722    ========================================================================== */
1723 
1724 #define Q6_p_any8_vcmpb_eq_PP __builtin_HEXAGON_A4_vcmpbeq_any
1725 
1726 /* ==========================================================================
1727    Assembly Syntax:       Pd4=vcmpb.eq(Rss32,#u8)
1728    C Intrinsic Prototype: Byte Q6_p_vcmpb_eq_PI(Word64 Rss, Word32 Iu8)
1729    Instruction Type:      ALU64
1730    Execution Slots:       SLOT23
1731    ========================================================================== */
1732 
1733 #define Q6_p_vcmpb_eq_PI __builtin_HEXAGON_A4_vcmpbeqi
1734 
1735 /* ==========================================================================
1736    Assembly Syntax:       Pd4=vcmpb.gt(Rss32,Rtt32)
1737    C Intrinsic Prototype: Byte Q6_p_vcmpb_gt_PP(Word64 Rss, Word64 Rtt)
1738    Instruction Type:      ALU64
1739    Execution Slots:       SLOT23
1740    ========================================================================== */
1741 
1742 #define Q6_p_vcmpb_gt_PP __builtin_HEXAGON_A4_vcmpbgt
1743 
1744 /* ==========================================================================
1745    Assembly Syntax:       Pd4=vcmpb.gt(Rss32,#s8)
1746    C Intrinsic Prototype: Byte Q6_p_vcmpb_gt_PI(Word64 Rss, Word32 Is8)
1747    Instruction Type:      ALU64
1748    Execution Slots:       SLOT23
1749    ========================================================================== */
1750 
1751 #define Q6_p_vcmpb_gt_PI __builtin_HEXAGON_A4_vcmpbgti
1752 
1753 /* ==========================================================================
1754    Assembly Syntax:       Pd4=vcmpb.gtu(Rss32,#u7)
1755    C Intrinsic Prototype: Byte Q6_p_vcmpb_gtu_PI(Word64 Rss, Word32 Iu7)
1756    Instruction Type:      ALU64
1757    Execution Slots:       SLOT23
1758    ========================================================================== */
1759 
1760 #define Q6_p_vcmpb_gtu_PI __builtin_HEXAGON_A4_vcmpbgtui
1761 
1762 /* ==========================================================================
1763    Assembly Syntax:       Pd4=vcmph.eq(Rss32,#s8)
1764    C Intrinsic Prototype: Byte Q6_p_vcmph_eq_PI(Word64 Rss, Word32 Is8)
1765    Instruction Type:      ALU64
1766    Execution Slots:       SLOT23
1767    ========================================================================== */
1768 
1769 #define Q6_p_vcmph_eq_PI __builtin_HEXAGON_A4_vcmpheqi
1770 
1771 /* ==========================================================================
1772    Assembly Syntax:       Pd4=vcmph.gt(Rss32,#s8)
1773    C Intrinsic Prototype: Byte Q6_p_vcmph_gt_PI(Word64 Rss, Word32 Is8)
1774    Instruction Type:      ALU64
1775    Execution Slots:       SLOT23
1776    ========================================================================== */
1777 
1778 #define Q6_p_vcmph_gt_PI __builtin_HEXAGON_A4_vcmphgti
1779 
1780 /* ==========================================================================
1781    Assembly Syntax:       Pd4=vcmph.gtu(Rss32,#u7)
1782    C Intrinsic Prototype: Byte Q6_p_vcmph_gtu_PI(Word64 Rss, Word32 Iu7)
1783    Instruction Type:      ALU64
1784    Execution Slots:       SLOT23
1785    ========================================================================== */
1786 
1787 #define Q6_p_vcmph_gtu_PI __builtin_HEXAGON_A4_vcmphgtui
1788 
1789 /* ==========================================================================
1790    Assembly Syntax:       Pd4=vcmpw.eq(Rss32,#s8)
1791    C Intrinsic Prototype: Byte Q6_p_vcmpw_eq_PI(Word64 Rss, Word32 Is8)
1792    Instruction Type:      ALU64
1793    Execution Slots:       SLOT23
1794    ========================================================================== */
1795 
1796 #define Q6_p_vcmpw_eq_PI __builtin_HEXAGON_A4_vcmpweqi
1797 
1798 /* ==========================================================================
1799    Assembly Syntax:       Pd4=vcmpw.gt(Rss32,#s8)
1800    C Intrinsic Prototype: Byte Q6_p_vcmpw_gt_PI(Word64 Rss, Word32 Is8)
1801    Instruction Type:      ALU64
1802    Execution Slots:       SLOT23
1803    ========================================================================== */
1804 
1805 #define Q6_p_vcmpw_gt_PI __builtin_HEXAGON_A4_vcmpwgti
1806 
1807 /* ==========================================================================
1808    Assembly Syntax:       Pd4=vcmpw.gtu(Rss32,#u7)
1809    C Intrinsic Prototype: Byte Q6_p_vcmpw_gtu_PI(Word64 Rss, Word32 Iu7)
1810    Instruction Type:      ALU64
1811    Execution Slots:       SLOT23
1812    ========================================================================== */
1813 
1814 #define Q6_p_vcmpw_gtu_PI __builtin_HEXAGON_A4_vcmpwgtui
1815 
1816 /* ==========================================================================
1817    Assembly Syntax:       Rxx32=vrmaxh(Rss32,Ru32)
1818    C Intrinsic Prototype: Word64 Q6_P_vrmaxh_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1819    Instruction Type:      S_3op
1820    Execution Slots:       SLOT23
1821    ========================================================================== */
1822 
1823 #define Q6_P_vrmaxh_PR __builtin_HEXAGON_A4_vrmaxh
1824 
1825 /* ==========================================================================
1826    Assembly Syntax:       Rxx32=vrmaxuh(Rss32,Ru32)
1827    C Intrinsic Prototype: Word64 Q6_P_vrmaxuh_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1828    Instruction Type:      S_3op
1829    Execution Slots:       SLOT23
1830    ========================================================================== */
1831 
1832 #define Q6_P_vrmaxuh_PR __builtin_HEXAGON_A4_vrmaxuh
1833 
1834 /* ==========================================================================
1835    Assembly Syntax:       Rxx32=vrmaxuw(Rss32,Ru32)
1836    C Intrinsic Prototype: Word64 Q6_P_vrmaxuw_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1837    Instruction Type:      S_3op
1838    Execution Slots:       SLOT23
1839    ========================================================================== */
1840 
1841 #define Q6_P_vrmaxuw_PR __builtin_HEXAGON_A4_vrmaxuw
1842 
1843 /* ==========================================================================
1844    Assembly Syntax:       Rxx32=vrmaxw(Rss32,Ru32)
1845    C Intrinsic Prototype: Word64 Q6_P_vrmaxw_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1846    Instruction Type:      S_3op
1847    Execution Slots:       SLOT23
1848    ========================================================================== */
1849 
1850 #define Q6_P_vrmaxw_PR __builtin_HEXAGON_A4_vrmaxw
1851 
1852 /* ==========================================================================
1853    Assembly Syntax:       Rxx32=vrminh(Rss32,Ru32)
1854    C Intrinsic Prototype: Word64 Q6_P_vrminh_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1855    Instruction Type:      S_3op
1856    Execution Slots:       SLOT23
1857    ========================================================================== */
1858 
1859 #define Q6_P_vrminh_PR __builtin_HEXAGON_A4_vrminh
1860 
1861 /* ==========================================================================
1862    Assembly Syntax:       Rxx32=vrminuh(Rss32,Ru32)
1863    C Intrinsic Prototype: Word64 Q6_P_vrminuh_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1864    Instruction Type:      S_3op
1865    Execution Slots:       SLOT23
1866    ========================================================================== */
1867 
1868 #define Q6_P_vrminuh_PR __builtin_HEXAGON_A4_vrminuh
1869 
1870 /* ==========================================================================
1871    Assembly Syntax:       Rxx32=vrminuw(Rss32,Ru32)
1872    C Intrinsic Prototype: Word64 Q6_P_vrminuw_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1873    Instruction Type:      S_3op
1874    Execution Slots:       SLOT23
1875    ========================================================================== */
1876 
1877 #define Q6_P_vrminuw_PR __builtin_HEXAGON_A4_vrminuw
1878 
1879 /* ==========================================================================
1880    Assembly Syntax:       Rxx32=vrminw(Rss32,Ru32)
1881    C Intrinsic Prototype: Word64 Q6_P_vrminw_PR(Word64 Rxx, Word64 Rss, Word32 Ru)
1882    Instruction Type:      S_3op
1883    Execution Slots:       SLOT23
1884    ========================================================================== */
1885 
1886 #define Q6_P_vrminw_PR __builtin_HEXAGON_A4_vrminw
1887 
1888 /* ==========================================================================
1889    Assembly Syntax:       Rd32=vaddhub(Rss32,Rtt32):sat
1890    C Intrinsic Prototype: Word32 Q6_R_vaddhub_PP_sat(Word64 Rss, Word64 Rtt)
1891    Instruction Type:      S_3op
1892    Execution Slots:       SLOT23
1893    ========================================================================== */
1894 
1895 #define Q6_R_vaddhub_PP_sat __builtin_HEXAGON_A5_vaddhubs
1896 
1897 /* ==========================================================================
1898    Assembly Syntax:       Pd4=all8(Ps4)
1899    C Intrinsic Prototype: Byte Q6_p_all8_p(Byte Ps)
1900    Instruction Type:      CR
1901    Execution Slots:       SLOT23
1902    ========================================================================== */
1903 
1904 #define Q6_p_all8_p __builtin_HEXAGON_C2_all8
1905 
1906 /* ==========================================================================
1907    Assembly Syntax:       Pd4=and(Pt4,Ps4)
1908    C Intrinsic Prototype: Byte Q6_p_and_pp(Byte Pt, Byte Ps)
1909    Instruction Type:      CR
1910    Execution Slots:       SLOT23
1911    ========================================================================== */
1912 
1913 #define Q6_p_and_pp __builtin_HEXAGON_C2_and
1914 
1915 /* ==========================================================================
1916    Assembly Syntax:       Pd4=and(Pt4,!Ps4)
1917    C Intrinsic Prototype: Byte Q6_p_and_pnp(Byte Pt, Byte Ps)
1918    Instruction Type:      CR
1919    Execution Slots:       SLOT23
1920    ========================================================================== */
1921 
1922 #define Q6_p_and_pnp __builtin_HEXAGON_C2_andn
1923 
1924 /* ==========================================================================
1925    Assembly Syntax:       Pd4=any8(Ps4)
1926    C Intrinsic Prototype: Byte Q6_p_any8_p(Byte Ps)
1927    Instruction Type:      CR
1928    Execution Slots:       SLOT23
1929    ========================================================================== */
1930 
1931 #define Q6_p_any8_p __builtin_HEXAGON_C2_any8
1932 
1933 /* ==========================================================================
1934    Assembly Syntax:       Pd4=bitsclr(Rs32,Rt32)
1935    C Intrinsic Prototype: Byte Q6_p_bitsclr_RR(Word32 Rs, Word32 Rt)
1936    Instruction Type:      S_3op
1937    Execution Slots:       SLOT23
1938    ========================================================================== */
1939 
1940 #define Q6_p_bitsclr_RR __builtin_HEXAGON_C2_bitsclr
1941 
1942 /* ==========================================================================
1943    Assembly Syntax:       Pd4=bitsclr(Rs32,#u6)
1944    C Intrinsic Prototype: Byte Q6_p_bitsclr_RI(Word32 Rs, Word32 Iu6)
1945    Instruction Type:      S_2op
1946    Execution Slots:       SLOT23
1947    ========================================================================== */
1948 
1949 #define Q6_p_bitsclr_RI __builtin_HEXAGON_C2_bitsclri
1950 
1951 /* ==========================================================================
1952    Assembly Syntax:       Pd4=bitsset(Rs32,Rt32)
1953    C Intrinsic Prototype: Byte Q6_p_bitsset_RR(Word32 Rs, Word32 Rt)
1954    Instruction Type:      S_3op
1955    Execution Slots:       SLOT23
1956    ========================================================================== */
1957 
1958 #define Q6_p_bitsset_RR __builtin_HEXAGON_C2_bitsset
1959 
1960 /* ==========================================================================
1961    Assembly Syntax:       Pd4=cmp.eq(Rs32,Rt32)
1962    C Intrinsic Prototype: Byte Q6_p_cmp_eq_RR(Word32 Rs, Word32 Rt)
1963    Instruction Type:      ALU32_3op
1964    Execution Slots:       SLOT0123
1965    ========================================================================== */
1966 
1967 #define Q6_p_cmp_eq_RR __builtin_HEXAGON_C2_cmpeq
1968 
1969 /* ==========================================================================
1970    Assembly Syntax:       Pd4=cmp.eq(Rs32,#s10)
1971    C Intrinsic Prototype: Byte Q6_p_cmp_eq_RI(Word32 Rs, Word32 Is10)
1972    Instruction Type:      ALU32_2op
1973    Execution Slots:       SLOT0123
1974    ========================================================================== */
1975 
1976 #define Q6_p_cmp_eq_RI __builtin_HEXAGON_C2_cmpeqi
1977 
1978 /* ==========================================================================
1979    Assembly Syntax:       Pd4=cmp.eq(Rss32,Rtt32)
1980    C Intrinsic Prototype: Byte Q6_p_cmp_eq_PP(Word64 Rss, Word64 Rtt)
1981    Instruction Type:      ALU64
1982    Execution Slots:       SLOT23
1983    ========================================================================== */
1984 
1985 #define Q6_p_cmp_eq_PP __builtin_HEXAGON_C2_cmpeqp
1986 
1987 /* ==========================================================================
1988    Assembly Syntax:       Pd4=cmp.ge(Rs32,#s8)
1989    C Intrinsic Prototype: Byte Q6_p_cmp_ge_RI(Word32 Rs, Word32 Is8)
1990    Instruction Type:      ALU32_2op
1991    Execution Slots:       SLOT0123
1992    ========================================================================== */
1993 
1994 #define Q6_p_cmp_ge_RI __builtin_HEXAGON_C2_cmpgei
1995 
1996 /* ==========================================================================
1997    Assembly Syntax:       Pd4=cmp.geu(Rs32,#u8)
1998    C Intrinsic Prototype: Byte Q6_p_cmp_geu_RI(Word32 Rs, Word32 Iu8)
1999    Instruction Type:      ALU32_2op
2000    Execution Slots:       SLOT0123
2001    ========================================================================== */
2002 
2003 #define Q6_p_cmp_geu_RI __builtin_HEXAGON_C2_cmpgeui
2004 
2005 /* ==========================================================================
2006    Assembly Syntax:       Pd4=cmp.gt(Rs32,Rt32)
2007    C Intrinsic Prototype: Byte Q6_p_cmp_gt_RR(Word32 Rs, Word32 Rt)
2008    Instruction Type:      ALU32_3op
2009    Execution Slots:       SLOT0123
2010    ========================================================================== */
2011 
2012 #define Q6_p_cmp_gt_RR __builtin_HEXAGON_C2_cmpgt
2013 
2014 /* ==========================================================================
2015    Assembly Syntax:       Pd4=cmp.gt(Rs32,#s10)
2016    C Intrinsic Prototype: Byte Q6_p_cmp_gt_RI(Word32 Rs, Word32 Is10)
2017    Instruction Type:      ALU32_2op
2018    Execution Slots:       SLOT0123
2019    ========================================================================== */
2020 
2021 #define Q6_p_cmp_gt_RI __builtin_HEXAGON_C2_cmpgti
2022 
2023 /* ==========================================================================
2024    Assembly Syntax:       Pd4=cmp.gt(Rss32,Rtt32)
2025    C Intrinsic Prototype: Byte Q6_p_cmp_gt_PP(Word64 Rss, Word64 Rtt)
2026    Instruction Type:      ALU64
2027    Execution Slots:       SLOT23
2028    ========================================================================== */
2029 
2030 #define Q6_p_cmp_gt_PP __builtin_HEXAGON_C2_cmpgtp
2031 
2032 /* ==========================================================================
2033    Assembly Syntax:       Pd4=cmp.gtu(Rs32,Rt32)
2034    C Intrinsic Prototype: Byte Q6_p_cmp_gtu_RR(Word32 Rs, Word32 Rt)
2035    Instruction Type:      ALU32_3op
2036    Execution Slots:       SLOT0123
2037    ========================================================================== */
2038 
2039 #define Q6_p_cmp_gtu_RR __builtin_HEXAGON_C2_cmpgtu
2040 
2041 /* ==========================================================================
2042    Assembly Syntax:       Pd4=cmp.gtu(Rs32,#u9)
2043    C Intrinsic Prototype: Byte Q6_p_cmp_gtu_RI(Word32 Rs, Word32 Iu9)
2044    Instruction Type:      ALU32_2op
2045    Execution Slots:       SLOT0123
2046    ========================================================================== */
2047 
2048 #define Q6_p_cmp_gtu_RI __builtin_HEXAGON_C2_cmpgtui
2049 
2050 /* ==========================================================================
2051    Assembly Syntax:       Pd4=cmp.gtu(Rss32,Rtt32)
2052    C Intrinsic Prototype: Byte Q6_p_cmp_gtu_PP(Word64 Rss, Word64 Rtt)
2053    Instruction Type:      ALU64
2054    Execution Slots:       SLOT23
2055    ========================================================================== */
2056 
2057 #define Q6_p_cmp_gtu_PP __builtin_HEXAGON_C2_cmpgtup
2058 
2059 /* ==========================================================================
2060    Assembly Syntax:       Pd4=cmp.lt(Rs32,Rt32)
2061    C Intrinsic Prototype: Byte Q6_p_cmp_lt_RR(Word32 Rs, Word32 Rt)
2062    Instruction Type:      ALU32_3op
2063    Execution Slots:       SLOT0123
2064    ========================================================================== */
2065 
2066 #define Q6_p_cmp_lt_RR __builtin_HEXAGON_C2_cmplt
2067 
2068 /* ==========================================================================
2069    Assembly Syntax:       Pd4=cmp.ltu(Rs32,Rt32)
2070    C Intrinsic Prototype: Byte Q6_p_cmp_ltu_RR(Word32 Rs, Word32 Rt)
2071    Instruction Type:      ALU32_3op
2072    Execution Slots:       SLOT0123
2073    ========================================================================== */
2074 
2075 #define Q6_p_cmp_ltu_RR __builtin_HEXAGON_C2_cmpltu
2076 
2077 /* ==========================================================================
2078    Assembly Syntax:       Rdd32=mask(Pt4)
2079    C Intrinsic Prototype: Word64 Q6_P_mask_p(Byte Pt)
2080    Instruction Type:      S_2op
2081    Execution Slots:       SLOT23
2082    ========================================================================== */
2083 
2084 #define Q6_P_mask_p __builtin_HEXAGON_C2_mask
2085 
2086 /* ==========================================================================
2087    Assembly Syntax:       Rd32=mux(Pu4,Rs32,Rt32)
2088    C Intrinsic Prototype: Word32 Q6_R_mux_pRR(Byte Pu, Word32 Rs, Word32 Rt)
2089    Instruction Type:      ALU32_3op
2090    Execution Slots:       SLOT0123
2091    ========================================================================== */
2092 
2093 #define Q6_R_mux_pRR __builtin_HEXAGON_C2_mux
2094 
2095 /* ==========================================================================
2096    Assembly Syntax:       Rd32=mux(Pu4,#s8,#S8)
2097    C Intrinsic Prototype: Word32 Q6_R_mux_pII(Byte Pu, Word32 Is8, Word32 IS8)
2098    Instruction Type:      ALU32_2op
2099    Execution Slots:       SLOT0123
2100    ========================================================================== */
2101 
2102 #define Q6_R_mux_pII __builtin_HEXAGON_C2_muxii
2103 
2104 /* ==========================================================================
2105    Assembly Syntax:       Rd32=mux(Pu4,Rs32,#s8)
2106    C Intrinsic Prototype: Word32 Q6_R_mux_pRI(Byte Pu, Word32 Rs, Word32 Is8)
2107    Instruction Type:      ALU32_2op
2108    Execution Slots:       SLOT0123
2109    ========================================================================== */
2110 
2111 #define Q6_R_mux_pRI __builtin_HEXAGON_C2_muxir
2112 
2113 /* ==========================================================================
2114    Assembly Syntax:       Rd32=mux(Pu4,#s8,Rs32)
2115    C Intrinsic Prototype: Word32 Q6_R_mux_pIR(Byte Pu, Word32 Is8, Word32 Rs)
2116    Instruction Type:      ALU32_2op
2117    Execution Slots:       SLOT0123
2118    ========================================================================== */
2119 
2120 #define Q6_R_mux_pIR __builtin_HEXAGON_C2_muxri
2121 
2122 /* ==========================================================================
2123    Assembly Syntax:       Pd4=not(Ps4)
2124    C Intrinsic Prototype: Byte Q6_p_not_p(Byte Ps)
2125    Instruction Type:      CR
2126    Execution Slots:       SLOT23
2127    ========================================================================== */
2128 
2129 #define Q6_p_not_p __builtin_HEXAGON_C2_not
2130 
2131 /* ==========================================================================
2132    Assembly Syntax:       Pd4=or(Pt4,Ps4)
2133    C Intrinsic Prototype: Byte Q6_p_or_pp(Byte Pt, Byte Ps)
2134    Instruction Type:      CR
2135    Execution Slots:       SLOT23
2136    ========================================================================== */
2137 
2138 #define Q6_p_or_pp __builtin_HEXAGON_C2_or
2139 
2140 /* ==========================================================================
2141    Assembly Syntax:       Pd4=or(Pt4,!Ps4)
2142    C Intrinsic Prototype: Byte Q6_p_or_pnp(Byte Pt, Byte Ps)
2143    Instruction Type:      CR
2144    Execution Slots:       SLOT23
2145    ========================================================================== */
2146 
2147 #define Q6_p_or_pnp __builtin_HEXAGON_C2_orn
2148 
2149 /* ==========================================================================
2150    Assembly Syntax:       Pd4=Ps4
2151    C Intrinsic Prototype: Byte Q6_p_equals_p(Byte Ps)
2152    Instruction Type:      MAPPING
2153    Execution Slots:       SLOT0123
2154    ========================================================================== */
2155 
2156 #define Q6_p_equals_p __builtin_HEXAGON_C2_pxfer_map
2157 
2158 /* ==========================================================================
2159    Assembly Syntax:       Rd32=Ps4
2160    C Intrinsic Prototype: Word32 Q6_R_equals_p(Byte Ps)
2161    Instruction Type:      S_2op
2162    Execution Slots:       SLOT23
2163    ========================================================================== */
2164 
2165 #define Q6_R_equals_p __builtin_HEXAGON_C2_tfrpr
2166 
2167 /* ==========================================================================
2168    Assembly Syntax:       Pd4=Rs32
2169    C Intrinsic Prototype: Byte Q6_p_equals_R(Word32 Rs)
2170    Instruction Type:      S_2op
2171    Execution Slots:       SLOT23
2172    ========================================================================== */
2173 
2174 #define Q6_p_equals_R __builtin_HEXAGON_C2_tfrrp
2175 
2176 /* ==========================================================================
2177    Assembly Syntax:       Rd32=vitpack(Ps4,Pt4)
2178    C Intrinsic Prototype: Word32 Q6_R_vitpack_pp(Byte Ps, Byte Pt)
2179    Instruction Type:      S_2op
2180    Execution Slots:       SLOT23
2181    ========================================================================== */
2182 
2183 #define Q6_R_vitpack_pp __builtin_HEXAGON_C2_vitpack
2184 
2185 /* ==========================================================================
2186    Assembly Syntax:       Rdd32=vmux(Pu4,Rss32,Rtt32)
2187    C Intrinsic Prototype: Word64 Q6_P_vmux_pPP(Byte Pu, Word64 Rss, Word64 Rtt)
2188    Instruction Type:      ALU64
2189    Execution Slots:       SLOT23
2190    ========================================================================== */
2191 
2192 #define Q6_P_vmux_pPP __builtin_HEXAGON_C2_vmux
2193 
2194 /* ==========================================================================
2195    Assembly Syntax:       Pd4=xor(Ps4,Pt4)
2196    C Intrinsic Prototype: Byte Q6_p_xor_pp(Byte Ps, Byte Pt)
2197    Instruction Type:      CR
2198    Execution Slots:       SLOT23
2199    ========================================================================== */
2200 
2201 #define Q6_p_xor_pp __builtin_HEXAGON_C2_xor
2202 
2203 /* ==========================================================================
2204    Assembly Syntax:       Pd4=and(Ps4,and(Pt4,Pu4))
2205    C Intrinsic Prototype: Byte Q6_p_and_and_ppp(Byte Ps, Byte Pt, Byte Pu)
2206    Instruction Type:      CR
2207    Execution Slots:       SLOT23
2208    ========================================================================== */
2209 
2210 #define Q6_p_and_and_ppp __builtin_HEXAGON_C4_and_and
2211 
2212 /* ==========================================================================
2213    Assembly Syntax:       Pd4=and(Ps4,and(Pt4,!Pu4))
2214    C Intrinsic Prototype: Byte Q6_p_and_and_ppnp(Byte Ps, Byte Pt, Byte Pu)
2215    Instruction Type:      CR
2216    Execution Slots:       SLOT23
2217    ========================================================================== */
2218 
2219 #define Q6_p_and_and_ppnp __builtin_HEXAGON_C4_and_andn
2220 
2221 /* ==========================================================================
2222    Assembly Syntax:       Pd4=and(Ps4,or(Pt4,Pu4))
2223    C Intrinsic Prototype: Byte Q6_p_and_or_ppp(Byte Ps, Byte Pt, Byte Pu)
2224    Instruction Type:      CR
2225    Execution Slots:       SLOT23
2226    ========================================================================== */
2227 
2228 #define Q6_p_and_or_ppp __builtin_HEXAGON_C4_and_or
2229 
2230 /* ==========================================================================
2231    Assembly Syntax:       Pd4=and(Ps4,or(Pt4,!Pu4))
2232    C Intrinsic Prototype: Byte Q6_p_and_or_ppnp(Byte Ps, Byte Pt, Byte Pu)
2233    Instruction Type:      CR
2234    Execution Slots:       SLOT23
2235    ========================================================================== */
2236 
2237 #define Q6_p_and_or_ppnp __builtin_HEXAGON_C4_and_orn
2238 
2239 /* ==========================================================================
2240    Assembly Syntax:       Pd4=!cmp.gt(Rs32,Rt32)
2241    C Intrinsic Prototype: Byte Q6_p_not_cmp_gt_RR(Word32 Rs, Word32 Rt)
2242    Instruction Type:      ALU32_3op
2243    Execution Slots:       SLOT0123
2244    ========================================================================== */
2245 
2246 #define Q6_p_not_cmp_gt_RR __builtin_HEXAGON_C4_cmplte
2247 
2248 /* ==========================================================================
2249    Assembly Syntax:       Pd4=!cmp.gt(Rs32,#s10)
2250    C Intrinsic Prototype: Byte Q6_p_not_cmp_gt_RI(Word32 Rs, Word32 Is10)
2251    Instruction Type:      ALU32_2op
2252    Execution Slots:       SLOT0123
2253    ========================================================================== */
2254 
2255 #define Q6_p_not_cmp_gt_RI __builtin_HEXAGON_C4_cmpltei
2256 
2257 /* ==========================================================================
2258    Assembly Syntax:       Pd4=!cmp.gtu(Rs32,Rt32)
2259    C Intrinsic Prototype: Byte Q6_p_not_cmp_gtu_RR(Word32 Rs, Word32 Rt)
2260    Instruction Type:      ALU32_3op
2261    Execution Slots:       SLOT0123
2262    ========================================================================== */
2263 
2264 #define Q6_p_not_cmp_gtu_RR __builtin_HEXAGON_C4_cmplteu
2265 
2266 /* ==========================================================================
2267    Assembly Syntax:       Pd4=!cmp.gtu(Rs32,#u9)
2268    C Intrinsic Prototype: Byte Q6_p_not_cmp_gtu_RI(Word32 Rs, Word32 Iu9)
2269    Instruction Type:      ALU32_2op
2270    Execution Slots:       SLOT0123
2271    ========================================================================== */
2272 
2273 #define Q6_p_not_cmp_gtu_RI __builtin_HEXAGON_C4_cmplteui
2274 
2275 /* ==========================================================================
2276    Assembly Syntax:       Pd4=!cmp.eq(Rs32,Rt32)
2277    C Intrinsic Prototype: Byte Q6_p_not_cmp_eq_RR(Word32 Rs, Word32 Rt)
2278    Instruction Type:      ALU32_3op
2279    Execution Slots:       SLOT0123
2280    ========================================================================== */
2281 
2282 #define Q6_p_not_cmp_eq_RR __builtin_HEXAGON_C4_cmpneq
2283 
2284 /* ==========================================================================
2285    Assembly Syntax:       Pd4=!cmp.eq(Rs32,#s10)
2286    C Intrinsic Prototype: Byte Q6_p_not_cmp_eq_RI(Word32 Rs, Word32 Is10)
2287    Instruction Type:      ALU32_2op
2288    Execution Slots:       SLOT0123
2289    ========================================================================== */
2290 
2291 #define Q6_p_not_cmp_eq_RI __builtin_HEXAGON_C4_cmpneqi
2292 
2293 /* ==========================================================================
2294    Assembly Syntax:       Pd4=fastcorner9(Ps4,Pt4)
2295    C Intrinsic Prototype: Byte Q6_p_fastcorner9_pp(Byte Ps, Byte Pt)
2296    Instruction Type:      CR
2297    Execution Slots:       SLOT23
2298    ========================================================================== */
2299 
2300 #define Q6_p_fastcorner9_pp __builtin_HEXAGON_C4_fastcorner9
2301 
2302 /* ==========================================================================
2303    Assembly Syntax:       Pd4=!fastcorner9(Ps4,Pt4)
2304    C Intrinsic Prototype: Byte Q6_p_not_fastcorner9_pp(Byte Ps, Byte Pt)
2305    Instruction Type:      CR
2306    Execution Slots:       SLOT23
2307    ========================================================================== */
2308 
2309 #define Q6_p_not_fastcorner9_pp __builtin_HEXAGON_C4_fastcorner9_not
2310 
2311 /* ==========================================================================
2312    Assembly Syntax:       Pd4=!bitsclr(Rs32,Rt32)
2313    C Intrinsic Prototype: Byte Q6_p_not_bitsclr_RR(Word32 Rs, Word32 Rt)
2314    Instruction Type:      S_3op
2315    Execution Slots:       SLOT23
2316    ========================================================================== */
2317 
2318 #define Q6_p_not_bitsclr_RR __builtin_HEXAGON_C4_nbitsclr
2319 
2320 /* ==========================================================================
2321    Assembly Syntax:       Pd4=!bitsclr(Rs32,#u6)
2322    C Intrinsic Prototype: Byte Q6_p_not_bitsclr_RI(Word32 Rs, Word32 Iu6)
2323    Instruction Type:      S_2op
2324    Execution Slots:       SLOT23
2325    ========================================================================== */
2326 
2327 #define Q6_p_not_bitsclr_RI __builtin_HEXAGON_C4_nbitsclri
2328 
2329 /* ==========================================================================
2330    Assembly Syntax:       Pd4=!bitsset(Rs32,Rt32)
2331    C Intrinsic Prototype: Byte Q6_p_not_bitsset_RR(Word32 Rs, Word32 Rt)
2332    Instruction Type:      S_3op
2333    Execution Slots:       SLOT23
2334    ========================================================================== */
2335 
2336 #define Q6_p_not_bitsset_RR __builtin_HEXAGON_C4_nbitsset
2337 
2338 /* ==========================================================================
2339    Assembly Syntax:       Pd4=or(Ps4,and(Pt4,Pu4))
2340    C Intrinsic Prototype: Byte Q6_p_or_and_ppp(Byte Ps, Byte Pt, Byte Pu)
2341    Instruction Type:      CR
2342    Execution Slots:       SLOT23
2343    ========================================================================== */
2344 
2345 #define Q6_p_or_and_ppp __builtin_HEXAGON_C4_or_and
2346 
2347 /* ==========================================================================
2348    Assembly Syntax:       Pd4=or(Ps4,and(Pt4,!Pu4))
2349    C Intrinsic Prototype: Byte Q6_p_or_and_ppnp(Byte Ps, Byte Pt, Byte Pu)
2350    Instruction Type:      CR
2351    Execution Slots:       SLOT23
2352    ========================================================================== */
2353 
2354 #define Q6_p_or_and_ppnp __builtin_HEXAGON_C4_or_andn
2355 
2356 /* ==========================================================================
2357    Assembly Syntax:       Pd4=or(Ps4,or(Pt4,Pu4))
2358    C Intrinsic Prototype: Byte Q6_p_or_or_ppp(Byte Ps, Byte Pt, Byte Pu)
2359    Instruction Type:      CR
2360    Execution Slots:       SLOT23
2361    ========================================================================== */
2362 
2363 #define Q6_p_or_or_ppp __builtin_HEXAGON_C4_or_or
2364 
2365 /* ==========================================================================
2366    Assembly Syntax:       Pd4=or(Ps4,or(Pt4,!Pu4))
2367    C Intrinsic Prototype: Byte Q6_p_or_or_ppnp(Byte Ps, Byte Pt, Byte Pu)
2368    Instruction Type:      CR
2369    Execution Slots:       SLOT23
2370    ========================================================================== */
2371 
2372 #define Q6_p_or_or_ppnp __builtin_HEXAGON_C4_or_orn
2373 
2374 /* ==========================================================================
2375    Assembly Syntax:       Rdd32=convert_d2df(Rss32)
2376    C Intrinsic Prototype: Float64 Q6_P_convert_d2df_P(Word64 Rss)
2377    Instruction Type:      S_2op
2378    Execution Slots:       SLOT23
2379    ========================================================================== */
2380 
2381 #define Q6_P_convert_d2df_P __builtin_HEXAGON_F2_conv_d2df
2382 
2383 /* ==========================================================================
2384    Assembly Syntax:       Rd32=convert_d2sf(Rss32)
2385    C Intrinsic Prototype: Float32 Q6_R_convert_d2sf_P(Word64 Rss)
2386    Instruction Type:      S_2op
2387    Execution Slots:       SLOT23
2388    ========================================================================== */
2389 
2390 #define Q6_R_convert_d2sf_P __builtin_HEXAGON_F2_conv_d2sf
2391 
2392 /* ==========================================================================
2393    Assembly Syntax:       Rdd32=convert_df2d(Rss32)
2394    C Intrinsic Prototype: Word64 Q6_P_convert_df2d_P(Float64 Rss)
2395    Instruction Type:      S_2op
2396    Execution Slots:       SLOT23
2397    ========================================================================== */
2398 
2399 #define Q6_P_convert_df2d_P __builtin_HEXAGON_F2_conv_df2d
2400 
2401 /* ==========================================================================
2402    Assembly Syntax:       Rdd32=convert_df2d(Rss32):chop
2403    C Intrinsic Prototype: Word64 Q6_P_convert_df2d_P_chop(Float64 Rss)
2404    Instruction Type:      S_2op
2405    Execution Slots:       SLOT23
2406    ========================================================================== */
2407 
2408 #define Q6_P_convert_df2d_P_chop __builtin_HEXAGON_F2_conv_df2d_chop
2409 
2410 /* ==========================================================================
2411    Assembly Syntax:       Rd32=convert_df2sf(Rss32)
2412    C Intrinsic Prototype: Float32 Q6_R_convert_df2sf_P(Float64 Rss)
2413    Instruction Type:      S_2op
2414    Execution Slots:       SLOT23
2415    ========================================================================== */
2416 
2417 #define Q6_R_convert_df2sf_P __builtin_HEXAGON_F2_conv_df2sf
2418 
2419 /* ==========================================================================
2420    Assembly Syntax:       Rdd32=convert_df2ud(Rss32)
2421    C Intrinsic Prototype: Word64 Q6_P_convert_df2ud_P(Float64 Rss)
2422    Instruction Type:      S_2op
2423    Execution Slots:       SLOT23
2424    ========================================================================== */
2425 
2426 #define Q6_P_convert_df2ud_P __builtin_HEXAGON_F2_conv_df2ud
2427 
2428 /* ==========================================================================
2429    Assembly Syntax:       Rdd32=convert_df2ud(Rss32):chop
2430    C Intrinsic Prototype: Word64 Q6_P_convert_df2ud_P_chop(Float64 Rss)
2431    Instruction Type:      S_2op
2432    Execution Slots:       SLOT23
2433    ========================================================================== */
2434 
2435 #define Q6_P_convert_df2ud_P_chop __builtin_HEXAGON_F2_conv_df2ud_chop
2436 
2437 /* ==========================================================================
2438    Assembly Syntax:       Rd32=convert_df2uw(Rss32)
2439    C Intrinsic Prototype: Word32 Q6_R_convert_df2uw_P(Float64 Rss)
2440    Instruction Type:      S_2op
2441    Execution Slots:       SLOT23
2442    ========================================================================== */
2443 
2444 #define Q6_R_convert_df2uw_P __builtin_HEXAGON_F2_conv_df2uw
2445 
2446 /* ==========================================================================
2447    Assembly Syntax:       Rd32=convert_df2uw(Rss32):chop
2448    C Intrinsic Prototype: Word32 Q6_R_convert_df2uw_P_chop(Float64 Rss)
2449    Instruction Type:      S_2op
2450    Execution Slots:       SLOT23
2451    ========================================================================== */
2452 
2453 #define Q6_R_convert_df2uw_P_chop __builtin_HEXAGON_F2_conv_df2uw_chop
2454 
2455 /* ==========================================================================
2456    Assembly Syntax:       Rd32=convert_df2w(Rss32)
2457    C Intrinsic Prototype: Word32 Q6_R_convert_df2w_P(Float64 Rss)
2458    Instruction Type:      S_2op
2459    Execution Slots:       SLOT23
2460    ========================================================================== */
2461 
2462 #define Q6_R_convert_df2w_P __builtin_HEXAGON_F2_conv_df2w
2463 
2464 /* ==========================================================================
2465    Assembly Syntax:       Rd32=convert_df2w(Rss32):chop
2466    C Intrinsic Prototype: Word32 Q6_R_convert_df2w_P_chop(Float64 Rss)
2467    Instruction Type:      S_2op
2468    Execution Slots:       SLOT23
2469    ========================================================================== */
2470 
2471 #define Q6_R_convert_df2w_P_chop __builtin_HEXAGON_F2_conv_df2w_chop
2472 
2473 /* ==========================================================================
2474    Assembly Syntax:       Rdd32=convert_sf2d(Rs32)
2475    C Intrinsic Prototype: Word64 Q6_P_convert_sf2d_R(Float32 Rs)
2476    Instruction Type:      S_2op
2477    Execution Slots:       SLOT23
2478    ========================================================================== */
2479 
2480 #define Q6_P_convert_sf2d_R __builtin_HEXAGON_F2_conv_sf2d
2481 
2482 /* ==========================================================================
2483    Assembly Syntax:       Rdd32=convert_sf2d(Rs32):chop
2484    C Intrinsic Prototype: Word64 Q6_P_convert_sf2d_R_chop(Float32 Rs)
2485    Instruction Type:      S_2op
2486    Execution Slots:       SLOT23
2487    ========================================================================== */
2488 
2489 #define Q6_P_convert_sf2d_R_chop __builtin_HEXAGON_F2_conv_sf2d_chop
2490 
2491 /* ==========================================================================
2492    Assembly Syntax:       Rdd32=convert_sf2df(Rs32)
2493    C Intrinsic Prototype: Float64 Q6_P_convert_sf2df_R(Float32 Rs)
2494    Instruction Type:      S_2op
2495    Execution Slots:       SLOT23
2496    ========================================================================== */
2497 
2498 #define Q6_P_convert_sf2df_R __builtin_HEXAGON_F2_conv_sf2df
2499 
2500 /* ==========================================================================
2501    Assembly Syntax:       Rdd32=convert_sf2ud(Rs32)
2502    C Intrinsic Prototype: Word64 Q6_P_convert_sf2ud_R(Float32 Rs)
2503    Instruction Type:      S_2op
2504    Execution Slots:       SLOT23
2505    ========================================================================== */
2506 
2507 #define Q6_P_convert_sf2ud_R __builtin_HEXAGON_F2_conv_sf2ud
2508 
2509 /* ==========================================================================
2510    Assembly Syntax:       Rdd32=convert_sf2ud(Rs32):chop
2511    C Intrinsic Prototype: Word64 Q6_P_convert_sf2ud_R_chop(Float32 Rs)
2512    Instruction Type:      S_2op
2513    Execution Slots:       SLOT23
2514    ========================================================================== */
2515 
2516 #define Q6_P_convert_sf2ud_R_chop __builtin_HEXAGON_F2_conv_sf2ud_chop
2517 
2518 /* ==========================================================================
2519    Assembly Syntax:       Rd32=convert_sf2uw(Rs32)
2520    C Intrinsic Prototype: Word32 Q6_R_convert_sf2uw_R(Float32 Rs)
2521    Instruction Type:      S_2op
2522    Execution Slots:       SLOT23
2523    ========================================================================== */
2524 
2525 #define Q6_R_convert_sf2uw_R __builtin_HEXAGON_F2_conv_sf2uw
2526 
2527 /* ==========================================================================
2528    Assembly Syntax:       Rd32=convert_sf2uw(Rs32):chop
2529    C Intrinsic Prototype: Word32 Q6_R_convert_sf2uw_R_chop(Float32 Rs)
2530    Instruction Type:      S_2op
2531    Execution Slots:       SLOT23
2532    ========================================================================== */
2533 
2534 #define Q6_R_convert_sf2uw_R_chop __builtin_HEXAGON_F2_conv_sf2uw_chop
2535 
2536 /* ==========================================================================
2537    Assembly Syntax:       Rd32=convert_sf2w(Rs32)
2538    C Intrinsic Prototype: Word32 Q6_R_convert_sf2w_R(Float32 Rs)
2539    Instruction Type:      S_2op
2540    Execution Slots:       SLOT23
2541    ========================================================================== */
2542 
2543 #define Q6_R_convert_sf2w_R __builtin_HEXAGON_F2_conv_sf2w
2544 
2545 /* ==========================================================================
2546    Assembly Syntax:       Rd32=convert_sf2w(Rs32):chop
2547    C Intrinsic Prototype: Word32 Q6_R_convert_sf2w_R_chop(Float32 Rs)
2548    Instruction Type:      S_2op
2549    Execution Slots:       SLOT23
2550    ========================================================================== */
2551 
2552 #define Q6_R_convert_sf2w_R_chop __builtin_HEXAGON_F2_conv_sf2w_chop
2553 
2554 /* ==========================================================================
2555    Assembly Syntax:       Rdd32=convert_ud2df(Rss32)
2556    C Intrinsic Prototype: Float64 Q6_P_convert_ud2df_P(Word64 Rss)
2557    Instruction Type:      S_2op
2558    Execution Slots:       SLOT23
2559    ========================================================================== */
2560 
2561 #define Q6_P_convert_ud2df_P __builtin_HEXAGON_F2_conv_ud2df
2562 
2563 /* ==========================================================================
2564    Assembly Syntax:       Rd32=convert_ud2sf(Rss32)
2565    C Intrinsic Prototype: Float32 Q6_R_convert_ud2sf_P(Word64 Rss)
2566    Instruction Type:      S_2op
2567    Execution Slots:       SLOT23
2568    ========================================================================== */
2569 
2570 #define Q6_R_convert_ud2sf_P __builtin_HEXAGON_F2_conv_ud2sf
2571 
2572 /* ==========================================================================
2573    Assembly Syntax:       Rdd32=convert_uw2df(Rs32)
2574    C Intrinsic Prototype: Float64 Q6_P_convert_uw2df_R(Word32 Rs)
2575    Instruction Type:      S_2op
2576    Execution Slots:       SLOT23
2577    ========================================================================== */
2578 
2579 #define Q6_P_convert_uw2df_R __builtin_HEXAGON_F2_conv_uw2df
2580 
2581 /* ==========================================================================
2582    Assembly Syntax:       Rd32=convert_uw2sf(Rs32)
2583    C Intrinsic Prototype: Float32 Q6_R_convert_uw2sf_R(Word32 Rs)
2584    Instruction Type:      S_2op
2585    Execution Slots:       SLOT23
2586    ========================================================================== */
2587 
2588 #define Q6_R_convert_uw2sf_R __builtin_HEXAGON_F2_conv_uw2sf
2589 
2590 /* ==========================================================================
2591    Assembly Syntax:       Rdd32=convert_w2df(Rs32)
2592    C Intrinsic Prototype: Float64 Q6_P_convert_w2df_R(Word32 Rs)
2593    Instruction Type:      S_2op
2594    Execution Slots:       SLOT23
2595    ========================================================================== */
2596 
2597 #define Q6_P_convert_w2df_R __builtin_HEXAGON_F2_conv_w2df
2598 
2599 /* ==========================================================================
2600    Assembly Syntax:       Rd32=convert_w2sf(Rs32)
2601    C Intrinsic Prototype: Float32 Q6_R_convert_w2sf_R(Word32 Rs)
2602    Instruction Type:      S_2op
2603    Execution Slots:       SLOT23
2604    ========================================================================== */
2605 
2606 #define Q6_R_convert_w2sf_R __builtin_HEXAGON_F2_conv_w2sf
2607 
2608 /* ==========================================================================
2609    Assembly Syntax:       Pd4=dfclass(Rss32,#u5)
2610    C Intrinsic Prototype: Byte Q6_p_dfclass_PI(Float64 Rss, Word32 Iu5)
2611    Instruction Type:      ALU64
2612    Execution Slots:       SLOT23
2613    ========================================================================== */
2614 
2615 #define Q6_p_dfclass_PI __builtin_HEXAGON_F2_dfclass
2616 
2617 /* ==========================================================================
2618    Assembly Syntax:       Pd4=dfcmp.eq(Rss32,Rtt32)
2619    C Intrinsic Prototype: Byte Q6_p_dfcmp_eq_PP(Float64 Rss, Float64 Rtt)
2620    Instruction Type:      ALU64
2621    Execution Slots:       SLOT23
2622    ========================================================================== */
2623 
2624 #define Q6_p_dfcmp_eq_PP __builtin_HEXAGON_F2_dfcmpeq
2625 
2626 /* ==========================================================================
2627    Assembly Syntax:       Pd4=dfcmp.ge(Rss32,Rtt32)
2628    C Intrinsic Prototype: Byte Q6_p_dfcmp_ge_PP(Float64 Rss, Float64 Rtt)
2629    Instruction Type:      ALU64
2630    Execution Slots:       SLOT23
2631    ========================================================================== */
2632 
2633 #define Q6_p_dfcmp_ge_PP __builtin_HEXAGON_F2_dfcmpge
2634 
2635 /* ==========================================================================
2636    Assembly Syntax:       Pd4=dfcmp.gt(Rss32,Rtt32)
2637    C Intrinsic Prototype: Byte Q6_p_dfcmp_gt_PP(Float64 Rss, Float64 Rtt)
2638    Instruction Type:      ALU64
2639    Execution Slots:       SLOT23
2640    ========================================================================== */
2641 
2642 #define Q6_p_dfcmp_gt_PP __builtin_HEXAGON_F2_dfcmpgt
2643 
2644 /* ==========================================================================
2645    Assembly Syntax:       Pd4=dfcmp.uo(Rss32,Rtt32)
2646    C Intrinsic Prototype: Byte Q6_p_dfcmp_uo_PP(Float64 Rss, Float64 Rtt)
2647    Instruction Type:      ALU64
2648    Execution Slots:       SLOT23
2649    ========================================================================== */
2650 
2651 #define Q6_p_dfcmp_uo_PP __builtin_HEXAGON_F2_dfcmpuo
2652 
2653 /* ==========================================================================
2654    Assembly Syntax:       Rdd32=dfmake(#u10):neg
2655    C Intrinsic Prototype: Float64 Q6_P_dfmake_I_neg(Word32 Iu10)
2656    Instruction Type:      ALU64
2657    Execution Slots:       SLOT23
2658    ========================================================================== */
2659 
2660 #define Q6_P_dfmake_I_neg __builtin_HEXAGON_F2_dfimm_n
2661 
2662 /* ==========================================================================
2663    Assembly Syntax:       Rdd32=dfmake(#u10):pos
2664    C Intrinsic Prototype: Float64 Q6_P_dfmake_I_pos(Word32 Iu10)
2665    Instruction Type:      ALU64
2666    Execution Slots:       SLOT23
2667    ========================================================================== */
2668 
2669 #define Q6_P_dfmake_I_pos __builtin_HEXAGON_F2_dfimm_p
2670 
2671 /* ==========================================================================
2672    Assembly Syntax:       Rd32=sfadd(Rs32,Rt32)
2673    C Intrinsic Prototype: Float32 Q6_R_sfadd_RR(Float32 Rs, Float32 Rt)
2674    Instruction Type:      M
2675    Execution Slots:       SLOT23
2676    ========================================================================== */
2677 
2678 #define Q6_R_sfadd_RR __builtin_HEXAGON_F2_sfadd
2679 
2680 /* ==========================================================================
2681    Assembly Syntax:       Pd4=sfclass(Rs32,#u5)
2682    C Intrinsic Prototype: Byte Q6_p_sfclass_RI(Float32 Rs, Word32 Iu5)
2683    Instruction Type:      S_2op
2684    Execution Slots:       SLOT23
2685    ========================================================================== */
2686 
2687 #define Q6_p_sfclass_RI __builtin_HEXAGON_F2_sfclass
2688 
2689 /* ==========================================================================
2690    Assembly Syntax:       Pd4=sfcmp.eq(Rs32,Rt32)
2691    C Intrinsic Prototype: Byte Q6_p_sfcmp_eq_RR(Float32 Rs, Float32 Rt)
2692    Instruction Type:      S_3op
2693    Execution Slots:       SLOT23
2694    ========================================================================== */
2695 
2696 #define Q6_p_sfcmp_eq_RR __builtin_HEXAGON_F2_sfcmpeq
2697 
2698 /* ==========================================================================
2699    Assembly Syntax:       Pd4=sfcmp.ge(Rs32,Rt32)
2700    C Intrinsic Prototype: Byte Q6_p_sfcmp_ge_RR(Float32 Rs, Float32 Rt)
2701    Instruction Type:      S_3op
2702    Execution Slots:       SLOT23
2703    ========================================================================== */
2704 
2705 #define Q6_p_sfcmp_ge_RR __builtin_HEXAGON_F2_sfcmpge
2706 
2707 /* ==========================================================================
2708    Assembly Syntax:       Pd4=sfcmp.gt(Rs32,Rt32)
2709    C Intrinsic Prototype: Byte Q6_p_sfcmp_gt_RR(Float32 Rs, Float32 Rt)
2710    Instruction Type:      S_3op
2711    Execution Slots:       SLOT23
2712    ========================================================================== */
2713 
2714 #define Q6_p_sfcmp_gt_RR __builtin_HEXAGON_F2_sfcmpgt
2715 
2716 /* ==========================================================================
2717    Assembly Syntax:       Pd4=sfcmp.uo(Rs32,Rt32)
2718    C Intrinsic Prototype: Byte Q6_p_sfcmp_uo_RR(Float32 Rs, Float32 Rt)
2719    Instruction Type:      S_3op
2720    Execution Slots:       SLOT23
2721    ========================================================================== */
2722 
2723 #define Q6_p_sfcmp_uo_RR __builtin_HEXAGON_F2_sfcmpuo
2724 
2725 /* ==========================================================================
2726    Assembly Syntax:       Rd32=sffixupd(Rs32,Rt32)
2727    C Intrinsic Prototype: Float32 Q6_R_sffixupd_RR(Float32 Rs, Float32 Rt)
2728    Instruction Type:      M
2729    Execution Slots:       SLOT23
2730    ========================================================================== */
2731 
2732 #define Q6_R_sffixupd_RR __builtin_HEXAGON_F2_sffixupd
2733 
2734 /* ==========================================================================
2735    Assembly Syntax:       Rd32=sffixupn(Rs32,Rt32)
2736    C Intrinsic Prototype: Float32 Q6_R_sffixupn_RR(Float32 Rs, Float32 Rt)
2737    Instruction Type:      M
2738    Execution Slots:       SLOT23
2739    ========================================================================== */
2740 
2741 #define Q6_R_sffixupn_RR __builtin_HEXAGON_F2_sffixupn
2742 
2743 /* ==========================================================================
2744    Assembly Syntax:       Rd32=sffixupr(Rs32)
2745    C Intrinsic Prototype: Float32 Q6_R_sffixupr_R(Float32 Rs)
2746    Instruction Type:      S_2op
2747    Execution Slots:       SLOT23
2748    ========================================================================== */
2749 
2750 #define Q6_R_sffixupr_R __builtin_HEXAGON_F2_sffixupr
2751 
2752 /* ==========================================================================
2753    Assembly Syntax:       Rx32+=sfmpy(Rs32,Rt32)
2754    C Intrinsic Prototype: Float32 Q6_R_sfmpyacc_RR(Float32 Rx, Float32 Rs, Float32 Rt)
2755    Instruction Type:      M
2756    Execution Slots:       SLOT23
2757    ========================================================================== */
2758 
2759 #define Q6_R_sfmpyacc_RR __builtin_HEXAGON_F2_sffma
2760 
2761 /* ==========================================================================
2762    Assembly Syntax:       Rx32+=sfmpy(Rs32,Rt32):lib
2763    C Intrinsic Prototype: Float32 Q6_R_sfmpyacc_RR_lib(Float32 Rx, Float32 Rs, Float32 Rt)
2764    Instruction Type:      M
2765    Execution Slots:       SLOT23
2766    ========================================================================== */
2767 
2768 #define Q6_R_sfmpyacc_RR_lib __builtin_HEXAGON_F2_sffma_lib
2769 
2770 /* ==========================================================================
2771    Assembly Syntax:       Rx32+=sfmpy(Rs32,Rt32,Pu4):scale
2772    C Intrinsic Prototype: Float32 Q6_R_sfmpyacc_RRp_scale(Float32 Rx, Float32 Rs, Float32 Rt, Byte Pu)
2773    Instruction Type:      M
2774    Execution Slots:       SLOT23
2775    ========================================================================== */
2776 
2777 #define Q6_R_sfmpyacc_RRp_scale __builtin_HEXAGON_F2_sffma_sc
2778 
2779 /* ==========================================================================
2780    Assembly Syntax:       Rx32-=sfmpy(Rs32,Rt32)
2781    C Intrinsic Prototype: Float32 Q6_R_sfmpynac_RR(Float32 Rx, Float32 Rs, Float32 Rt)
2782    Instruction Type:      M
2783    Execution Slots:       SLOT23
2784    ========================================================================== */
2785 
2786 #define Q6_R_sfmpynac_RR __builtin_HEXAGON_F2_sffms
2787 
2788 /* ==========================================================================
2789    Assembly Syntax:       Rx32-=sfmpy(Rs32,Rt32):lib
2790    C Intrinsic Prototype: Float32 Q6_R_sfmpynac_RR_lib(Float32 Rx, Float32 Rs, Float32 Rt)
2791    Instruction Type:      M
2792    Execution Slots:       SLOT23
2793    ========================================================================== */
2794 
2795 #define Q6_R_sfmpynac_RR_lib __builtin_HEXAGON_F2_sffms_lib
2796 
2797 /* ==========================================================================
2798    Assembly Syntax:       Rd32=sfmake(#u10):neg
2799    C Intrinsic Prototype: Float32 Q6_R_sfmake_I_neg(Word32 Iu10)
2800    Instruction Type:      ALU64
2801    Execution Slots:       SLOT23
2802    ========================================================================== */
2803 
2804 #define Q6_R_sfmake_I_neg __builtin_HEXAGON_F2_sfimm_n
2805 
2806 /* ==========================================================================
2807    Assembly Syntax:       Rd32=sfmake(#u10):pos
2808    C Intrinsic Prototype: Float32 Q6_R_sfmake_I_pos(Word32 Iu10)
2809    Instruction Type:      ALU64
2810    Execution Slots:       SLOT23
2811    ========================================================================== */
2812 
2813 #define Q6_R_sfmake_I_pos __builtin_HEXAGON_F2_sfimm_p
2814 
2815 /* ==========================================================================
2816    Assembly Syntax:       Rd32=sfmax(Rs32,Rt32)
2817    C Intrinsic Prototype: Float32 Q6_R_sfmax_RR(Float32 Rs, Float32 Rt)
2818    Instruction Type:      M
2819    Execution Slots:       SLOT23
2820    ========================================================================== */
2821 
2822 #define Q6_R_sfmax_RR __builtin_HEXAGON_F2_sfmax
2823 
2824 /* ==========================================================================
2825    Assembly Syntax:       Rd32=sfmin(Rs32,Rt32)
2826    C Intrinsic Prototype: Float32 Q6_R_sfmin_RR(Float32 Rs, Float32 Rt)
2827    Instruction Type:      M
2828    Execution Slots:       SLOT23
2829    ========================================================================== */
2830 
2831 #define Q6_R_sfmin_RR __builtin_HEXAGON_F2_sfmin
2832 
2833 /* ==========================================================================
2834    Assembly Syntax:       Rd32=sfmpy(Rs32,Rt32)
2835    C Intrinsic Prototype: Float32 Q6_R_sfmpy_RR(Float32 Rs, Float32 Rt)
2836    Instruction Type:      M
2837    Execution Slots:       SLOT23
2838    ========================================================================== */
2839 
2840 #define Q6_R_sfmpy_RR __builtin_HEXAGON_F2_sfmpy
2841 
2842 /* ==========================================================================
2843    Assembly Syntax:       Rd32=sfsub(Rs32,Rt32)
2844    C Intrinsic Prototype: Float32 Q6_R_sfsub_RR(Float32 Rs, Float32 Rt)
2845    Instruction Type:      M
2846    Execution Slots:       SLOT23
2847    ========================================================================== */
2848 
2849 #define Q6_R_sfsub_RR __builtin_HEXAGON_F2_sfsub
2850 
2851 /* ==========================================================================
2852    Assembly Syntax:       Rd32=memb(Rx32++#s4:0:circ(Mu2))
2853    C Intrinsic Prototype: Word32 Q6_R_memb_IM_circ(void** Rx, Word32 Is4_0, Word32 Mu, void* BaseAddress)
2854    Instruction Type:      LD
2855    Execution Slots:       SLOT01
2856    ========================================================================== */
2857 
2858 #define Q6_R_memb_IM_circ __builtin_HEXAGON_L2_loadrb_pci
2859 
2860 /* ==========================================================================
2861    Assembly Syntax:       Rd32=memb(Rx32++I:circ(Mu2))
2862    C Intrinsic Prototype: Word32 Q6_R_memb_M_circ(void** Rx, Word32 Mu, void* BaseAddress)
2863    Instruction Type:      LD
2864    Execution Slots:       SLOT01
2865    ========================================================================== */
2866 
2867 #define Q6_R_memb_M_circ __builtin_HEXAGON_L2_loadrb_pcr
2868 
2869 /* ==========================================================================
2870    Assembly Syntax:       Rdd32=memd(Rx32++#s4:3:circ(Mu2))
2871    C Intrinsic Prototype: Word64 Q6_P_memd_IM_circ(void** Rx, Word32 Is4_3, Word32 Mu, void* BaseAddress)
2872    Instruction Type:      LD
2873    Execution Slots:       SLOT01
2874    ========================================================================== */
2875 
2876 #define Q6_P_memd_IM_circ __builtin_HEXAGON_L2_loadrd_pci
2877 
2878 /* ==========================================================================
2879    Assembly Syntax:       Rdd32=memd(Rx32++I:circ(Mu2))
2880    C Intrinsic Prototype: Word64 Q6_P_memd_M_circ(void** Rx, Word32 Mu, void* BaseAddress)
2881    Instruction Type:      LD
2882    Execution Slots:       SLOT01
2883    ========================================================================== */
2884 
2885 #define Q6_P_memd_M_circ __builtin_HEXAGON_L2_loadrd_pcr
2886 
2887 /* ==========================================================================
2888    Assembly Syntax:       Rd32=memh(Rx32++#s4:1:circ(Mu2))
2889    C Intrinsic Prototype: Word32 Q6_R_memh_IM_circ(void** Rx, Word32 Is4_1, Word32 Mu, void* BaseAddress)
2890    Instruction Type:      LD
2891    Execution Slots:       SLOT01
2892    ========================================================================== */
2893 
2894 #define Q6_R_memh_IM_circ __builtin_HEXAGON_L2_loadrh_pci
2895 
2896 /* ==========================================================================
2897    Assembly Syntax:       Rd32=memh(Rx32++I:circ(Mu2))
2898    C Intrinsic Prototype: Word32 Q6_R_memh_M_circ(void** Rx, Word32 Mu, void* BaseAddress)
2899    Instruction Type:      LD
2900    Execution Slots:       SLOT01
2901    ========================================================================== */
2902 
2903 #define Q6_R_memh_M_circ __builtin_HEXAGON_L2_loadrh_pcr
2904 
2905 /* ==========================================================================
2906    Assembly Syntax:       Rd32=memw(Rx32++#s4:2:circ(Mu2))
2907    C Intrinsic Prototype: Word32 Q6_R_memw_IM_circ(void** Rx, Word32 Is4_2, Word32 Mu, void* BaseAddress)
2908    Instruction Type:      LD
2909    Execution Slots:       SLOT01
2910    ========================================================================== */
2911 
2912 #define Q6_R_memw_IM_circ __builtin_HEXAGON_L2_loadri_pci
2913 
2914 /* ==========================================================================
2915    Assembly Syntax:       Rd32=memw(Rx32++I:circ(Mu2))
2916    C Intrinsic Prototype: Word32 Q6_R_memw_M_circ(void** Rx, Word32 Mu, void* BaseAddress)
2917    Instruction Type:      LD
2918    Execution Slots:       SLOT01
2919    ========================================================================== */
2920 
2921 #define Q6_R_memw_M_circ __builtin_HEXAGON_L2_loadri_pcr
2922 
2923 /* ==========================================================================
2924    Assembly Syntax:       Rd32=memub(Rx32++#s4:0:circ(Mu2))
2925    C Intrinsic Prototype: Word32 Q6_R_memub_IM_circ(void** Rx, Word32 Is4_0, Word32 Mu, void* BaseAddress)
2926    Instruction Type:      LD
2927    Execution Slots:       SLOT01
2928    ========================================================================== */
2929 
2930 #define Q6_R_memub_IM_circ __builtin_HEXAGON_L2_loadrub_pci
2931 
2932 /* ==========================================================================
2933    Assembly Syntax:       Rd32=memub(Rx32++I:circ(Mu2))
2934    C Intrinsic Prototype: Word32 Q6_R_memub_M_circ(void** Rx, Word32 Mu, void* BaseAddress)
2935    Instruction Type:      LD
2936    Execution Slots:       SLOT01
2937    ========================================================================== */
2938 
2939 #define Q6_R_memub_M_circ __builtin_HEXAGON_L2_loadrub_pcr
2940 
2941 /* ==========================================================================
2942    Assembly Syntax:       Rd32=memuh(Rx32++#s4:1:circ(Mu2))
2943    C Intrinsic Prototype: Word32 Q6_R_memuh_IM_circ(void** Rx, Word32 Is4_1, Word32 Mu, void* BaseAddress)
2944    Instruction Type:      LD
2945    Execution Slots:       SLOT01
2946    ========================================================================== */
2947 
2948 #define Q6_R_memuh_IM_circ __builtin_HEXAGON_L2_loadruh_pci
2949 
2950 /* ==========================================================================
2951    Assembly Syntax:       Rd32=memuh(Rx32++I:circ(Mu2))
2952    C Intrinsic Prototype: Word32 Q6_R_memuh_M_circ(void** Rx, Word32 Mu, void* BaseAddress)
2953    Instruction Type:      LD
2954    Execution Slots:       SLOT01
2955    ========================================================================== */
2956 
2957 #define Q6_R_memuh_M_circ __builtin_HEXAGON_L2_loadruh_pcr
2958 
2959 /* ==========================================================================
2960    Assembly Syntax:       Rx32+=add(Rs32,Rt32)
2961    C Intrinsic Prototype: Word32 Q6_R_addacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
2962    Instruction Type:      M
2963    Execution Slots:       SLOT23
2964    ========================================================================== */
2965 
2966 #define Q6_R_addacc_RR __builtin_HEXAGON_M2_acci
2967 
2968 /* ==========================================================================
2969    Assembly Syntax:       Rx32+=add(Rs32,#s8)
2970    C Intrinsic Prototype: Word32 Q6_R_addacc_RI(Word32 Rx, Word32 Rs, Word32 Is8)
2971    Instruction Type:      M
2972    Execution Slots:       SLOT23
2973    ========================================================================== */
2974 
2975 #define Q6_R_addacc_RI __builtin_HEXAGON_M2_accii
2976 
2977 /* ==========================================================================
2978    Assembly Syntax:       Rxx32+=cmpyi(Rs32,Rt32)
2979    C Intrinsic Prototype: Word64 Q6_P_cmpyiacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
2980    Instruction Type:      M
2981    Execution Slots:       SLOT23
2982    ========================================================================== */
2983 
2984 #define Q6_P_cmpyiacc_RR __builtin_HEXAGON_M2_cmaci_s0
2985 
2986 /* ==========================================================================
2987    Assembly Syntax:       Rxx32+=cmpyr(Rs32,Rt32)
2988    C Intrinsic Prototype: Word64 Q6_P_cmpyracc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
2989    Instruction Type:      M
2990    Execution Slots:       SLOT23
2991    ========================================================================== */
2992 
2993 #define Q6_P_cmpyracc_RR __builtin_HEXAGON_M2_cmacr_s0
2994 
2995 /* ==========================================================================
2996    Assembly Syntax:       Rxx32+=cmpy(Rs32,Rt32):sat
2997    C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
2998    Instruction Type:      M
2999    Execution Slots:       SLOT23
3000    ========================================================================== */
3001 
3002 #define Q6_P_cmpyacc_RR_sat __builtin_HEXAGON_M2_cmacs_s0
3003 
3004 /* ==========================================================================
3005    Assembly Syntax:       Rxx32+=cmpy(Rs32,Rt32):<<1:sat
3006    C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3007    Instruction Type:      M
3008    Execution Slots:       SLOT23
3009    ========================================================================== */
3010 
3011 #define Q6_P_cmpyacc_RR_s1_sat __builtin_HEXAGON_M2_cmacs_s1
3012 
3013 /* ==========================================================================
3014    Assembly Syntax:       Rxx32+=cmpy(Rs32,Rt32*):sat
3015    C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_conj_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3016    Instruction Type:      M
3017    Execution Slots:       SLOT23
3018    ========================================================================== */
3019 
3020 #define Q6_P_cmpyacc_RR_conj_sat __builtin_HEXAGON_M2_cmacsc_s0
3021 
3022 /* ==========================================================================
3023    Assembly Syntax:       Rxx32+=cmpy(Rs32,Rt32*):<<1:sat
3024    C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_conj_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3025    Instruction Type:      M
3026    Execution Slots:       SLOT23
3027    ========================================================================== */
3028 
3029 #define Q6_P_cmpyacc_RR_conj_s1_sat __builtin_HEXAGON_M2_cmacsc_s1
3030 
3031 /* ==========================================================================
3032    Assembly Syntax:       Rdd32=cmpyi(Rs32,Rt32)
3033    C Intrinsic Prototype: Word64 Q6_P_cmpyi_RR(Word32 Rs, Word32 Rt)
3034    Instruction Type:      M
3035    Execution Slots:       SLOT23
3036    ========================================================================== */
3037 
3038 #define Q6_P_cmpyi_RR __builtin_HEXAGON_M2_cmpyi_s0
3039 
3040 /* ==========================================================================
3041    Assembly Syntax:       Rdd32=cmpyr(Rs32,Rt32)
3042    C Intrinsic Prototype: Word64 Q6_P_cmpyr_RR(Word32 Rs, Word32 Rt)
3043    Instruction Type:      M
3044    Execution Slots:       SLOT23
3045    ========================================================================== */
3046 
3047 #define Q6_P_cmpyr_RR __builtin_HEXAGON_M2_cmpyr_s0
3048 
3049 /* ==========================================================================
3050    Assembly Syntax:       Rd32=cmpy(Rs32,Rt32):rnd:sat
3051    C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_rnd_sat(Word32 Rs, Word32 Rt)
3052    Instruction Type:      M
3053    Execution Slots:       SLOT23
3054    ========================================================================== */
3055 
3056 #define Q6_R_cmpy_RR_rnd_sat __builtin_HEXAGON_M2_cmpyrs_s0
3057 
3058 /* ==========================================================================
3059    Assembly Syntax:       Rd32=cmpy(Rs32,Rt32):<<1:rnd:sat
3060    C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_s1_rnd_sat(Word32 Rs, Word32 Rt)
3061    Instruction Type:      M
3062    Execution Slots:       SLOT23
3063    ========================================================================== */
3064 
3065 #define Q6_R_cmpy_RR_s1_rnd_sat __builtin_HEXAGON_M2_cmpyrs_s1
3066 
3067 /* ==========================================================================
3068    Assembly Syntax:       Rd32=cmpy(Rs32,Rt32*):rnd:sat
3069    C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_conj_rnd_sat(Word32 Rs, Word32 Rt)
3070    Instruction Type:      M
3071    Execution Slots:       SLOT23
3072    ========================================================================== */
3073 
3074 #define Q6_R_cmpy_RR_conj_rnd_sat __builtin_HEXAGON_M2_cmpyrsc_s0
3075 
3076 /* ==========================================================================
3077    Assembly Syntax:       Rd32=cmpy(Rs32,Rt32*):<<1:rnd:sat
3078    C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_conj_s1_rnd_sat(Word32 Rs, Word32 Rt)
3079    Instruction Type:      M
3080    Execution Slots:       SLOT23
3081    ========================================================================== */
3082 
3083 #define Q6_R_cmpy_RR_conj_s1_rnd_sat __builtin_HEXAGON_M2_cmpyrsc_s1
3084 
3085 /* ==========================================================================
3086    Assembly Syntax:       Rdd32=cmpy(Rs32,Rt32):sat
3087    C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_sat(Word32 Rs, Word32 Rt)
3088    Instruction Type:      M
3089    Execution Slots:       SLOT23
3090    ========================================================================== */
3091 
3092 #define Q6_P_cmpy_RR_sat __builtin_HEXAGON_M2_cmpys_s0
3093 
3094 /* ==========================================================================
3095    Assembly Syntax:       Rdd32=cmpy(Rs32,Rt32):<<1:sat
3096    C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_s1_sat(Word32 Rs, Word32 Rt)
3097    Instruction Type:      M
3098    Execution Slots:       SLOT23
3099    ========================================================================== */
3100 
3101 #define Q6_P_cmpy_RR_s1_sat __builtin_HEXAGON_M2_cmpys_s1
3102 
3103 /* ==========================================================================
3104    Assembly Syntax:       Rdd32=cmpy(Rs32,Rt32*):sat
3105    C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_conj_sat(Word32 Rs, Word32 Rt)
3106    Instruction Type:      M
3107    Execution Slots:       SLOT23
3108    ========================================================================== */
3109 
3110 #define Q6_P_cmpy_RR_conj_sat __builtin_HEXAGON_M2_cmpysc_s0
3111 
3112 /* ==========================================================================
3113    Assembly Syntax:       Rdd32=cmpy(Rs32,Rt32*):<<1:sat
3114    C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_conj_s1_sat(Word32 Rs, Word32 Rt)
3115    Instruction Type:      M
3116    Execution Slots:       SLOT23
3117    ========================================================================== */
3118 
3119 #define Q6_P_cmpy_RR_conj_s1_sat __builtin_HEXAGON_M2_cmpysc_s1
3120 
3121 /* ==========================================================================
3122    Assembly Syntax:       Rxx32-=cmpy(Rs32,Rt32):sat
3123    C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3124    Instruction Type:      M
3125    Execution Slots:       SLOT23
3126    ========================================================================== */
3127 
3128 #define Q6_P_cmpynac_RR_sat __builtin_HEXAGON_M2_cnacs_s0
3129 
3130 /* ==========================================================================
3131    Assembly Syntax:       Rxx32-=cmpy(Rs32,Rt32):<<1:sat
3132    C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3133    Instruction Type:      M
3134    Execution Slots:       SLOT23
3135    ========================================================================== */
3136 
3137 #define Q6_P_cmpynac_RR_s1_sat __builtin_HEXAGON_M2_cnacs_s1
3138 
3139 /* ==========================================================================
3140    Assembly Syntax:       Rxx32-=cmpy(Rs32,Rt32*):sat
3141    C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_conj_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3142    Instruction Type:      M
3143    Execution Slots:       SLOT23
3144    ========================================================================== */
3145 
3146 #define Q6_P_cmpynac_RR_conj_sat __builtin_HEXAGON_M2_cnacsc_s0
3147 
3148 /* ==========================================================================
3149    Assembly Syntax:       Rxx32-=cmpy(Rs32,Rt32*):<<1:sat
3150    C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_conj_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
3151    Instruction Type:      M
3152    Execution Slots:       SLOT23
3153    ========================================================================== */
3154 
3155 #define Q6_P_cmpynac_RR_conj_s1_sat __builtin_HEXAGON_M2_cnacsc_s1
3156 
3157 /* ==========================================================================
3158    Assembly Syntax:       Rxx32+=mpy(Rs32,Rt32)
3159    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
3160    Instruction Type:      M
3161    Execution Slots:       SLOT23
3162    ========================================================================== */
3163 
3164 #define Q6_P_mpyacc_RR __builtin_HEXAGON_M2_dpmpyss_acc_s0
3165 
3166 /* ==========================================================================
3167    Assembly Syntax:       Rxx32-=mpy(Rs32,Rt32)
3168    C Intrinsic Prototype: Word64 Q6_P_mpynac_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
3169    Instruction Type:      M
3170    Execution Slots:       SLOT23
3171    ========================================================================== */
3172 
3173 #define Q6_P_mpynac_RR __builtin_HEXAGON_M2_dpmpyss_nac_s0
3174 
3175 /* ==========================================================================
3176    Assembly Syntax:       Rd32=mpy(Rs32,Rt32):rnd
3177    C Intrinsic Prototype: Word32 Q6_R_mpy_RR_rnd(Word32 Rs, Word32 Rt)
3178    Instruction Type:      M
3179    Execution Slots:       SLOT23
3180    ========================================================================== */
3181 
3182 #define Q6_R_mpy_RR_rnd __builtin_HEXAGON_M2_dpmpyss_rnd_s0
3183 
3184 /* ==========================================================================
3185    Assembly Syntax:       Rdd32=mpy(Rs32,Rt32)
3186    C Intrinsic Prototype: Word64 Q6_P_mpy_RR(Word32 Rs, Word32 Rt)
3187    Instruction Type:      M
3188    Execution Slots:       SLOT23
3189    ========================================================================== */
3190 
3191 #define Q6_P_mpy_RR __builtin_HEXAGON_M2_dpmpyss_s0
3192 
3193 /* ==========================================================================
3194    Assembly Syntax:       Rxx32+=mpyu(Rs32,Rt32)
3195    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
3196    Instruction Type:      M
3197    Execution Slots:       SLOT23
3198    ========================================================================== */
3199 
3200 #define Q6_P_mpyuacc_RR __builtin_HEXAGON_M2_dpmpyuu_acc_s0
3201 
3202 /* ==========================================================================
3203    Assembly Syntax:       Rxx32-=mpyu(Rs32,Rt32)
3204    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
3205    Instruction Type:      M
3206    Execution Slots:       SLOT23
3207    ========================================================================== */
3208 
3209 #define Q6_P_mpyunac_RR __builtin_HEXAGON_M2_dpmpyuu_nac_s0
3210 
3211 /* ==========================================================================
3212    Assembly Syntax:       Rdd32=mpyu(Rs32,Rt32)
3213    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RR(Word32 Rs, Word32 Rt)
3214    Instruction Type:      M
3215    Execution Slots:       SLOT23
3216    ========================================================================== */
3217 
3218 #define Q6_P_mpyu_RR __builtin_HEXAGON_M2_dpmpyuu_s0
3219 
3220 /* ==========================================================================
3221    Assembly Syntax:       Rd32=mpy(Rs32,Rt32.h):<<1:rnd:sat
3222    C Intrinsic Prototype: Word32 Q6_R_mpy_RRh_s1_rnd_sat(Word32 Rs, Word32 Rt)
3223    Instruction Type:      M
3224    Execution Slots:       SLOT23
3225    ========================================================================== */
3226 
3227 #define Q6_R_mpy_RRh_s1_rnd_sat __builtin_HEXAGON_M2_hmmpyh_rs1
3228 
3229 /* ==========================================================================
3230    Assembly Syntax:       Rd32=mpy(Rs32,Rt32.h):<<1:sat
3231    C Intrinsic Prototype: Word32 Q6_R_mpy_RRh_s1_sat(Word32 Rs, Word32 Rt)
3232    Instruction Type:      M
3233    Execution Slots:       SLOT23
3234    ========================================================================== */
3235 
3236 #define Q6_R_mpy_RRh_s1_sat __builtin_HEXAGON_M2_hmmpyh_s1
3237 
3238 /* ==========================================================================
3239    Assembly Syntax:       Rd32=mpy(Rs32,Rt32.l):<<1:rnd:sat
3240    C Intrinsic Prototype: Word32 Q6_R_mpy_RRl_s1_rnd_sat(Word32 Rs, Word32 Rt)
3241    Instruction Type:      M
3242    Execution Slots:       SLOT23
3243    ========================================================================== */
3244 
3245 #define Q6_R_mpy_RRl_s1_rnd_sat __builtin_HEXAGON_M2_hmmpyl_rs1
3246 
3247 /* ==========================================================================
3248    Assembly Syntax:       Rd32=mpy(Rs32,Rt32.l):<<1:sat
3249    C Intrinsic Prototype: Word32 Q6_R_mpy_RRl_s1_sat(Word32 Rs, Word32 Rt)
3250    Instruction Type:      M
3251    Execution Slots:       SLOT23
3252    ========================================================================== */
3253 
3254 #define Q6_R_mpy_RRl_s1_sat __builtin_HEXAGON_M2_hmmpyl_s1
3255 
3256 /* ==========================================================================
3257    Assembly Syntax:       Rx32+=mpyi(Rs32,Rt32)
3258    C Intrinsic Prototype: Word32 Q6_R_mpyiacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
3259    Instruction Type:      M
3260    Execution Slots:       SLOT23
3261    ========================================================================== */
3262 
3263 #define Q6_R_mpyiacc_RR __builtin_HEXAGON_M2_maci
3264 
3265 /* ==========================================================================
3266    Assembly Syntax:       Rx32-=mpyi(Rs32,#u8)
3267    C Intrinsic Prototype: Word32 Q6_R_mpyinac_RI(Word32 Rx, Word32 Rs, Word32 Iu8)
3268    Instruction Type:      M
3269    Execution Slots:       SLOT23
3270    ========================================================================== */
3271 
3272 #define Q6_R_mpyinac_RI __builtin_HEXAGON_M2_macsin
3273 
3274 /* ==========================================================================
3275    Assembly Syntax:       Rx32+=mpyi(Rs32,#u8)
3276    C Intrinsic Prototype: Word32 Q6_R_mpyiacc_RI(Word32 Rx, Word32 Rs, Word32 Iu8)
3277    Instruction Type:      M
3278    Execution Slots:       SLOT23
3279    ========================================================================== */
3280 
3281 #define Q6_R_mpyiacc_RI __builtin_HEXAGON_M2_macsip
3282 
3283 /* ==========================================================================
3284    Assembly Syntax:       Rxx32+=vmpywoh(Rss32,Rtt32):rnd:sat
3285    C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3286    Instruction Type:      M
3287    Execution Slots:       SLOT23
3288    ========================================================================== */
3289 
3290 #define Q6_P_vmpywohacc_PP_rnd_sat __builtin_HEXAGON_M2_mmachs_rs0
3291 
3292 /* ==========================================================================
3293    Assembly Syntax:       Rxx32+=vmpywoh(Rss32,Rtt32):<<1:rnd:sat
3294    C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3295    Instruction Type:      M
3296    Execution Slots:       SLOT23
3297    ========================================================================== */
3298 
3299 #define Q6_P_vmpywohacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmachs_rs1
3300 
3301 /* ==========================================================================
3302    Assembly Syntax:       Rxx32+=vmpywoh(Rss32,Rtt32):sat
3303    C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3304    Instruction Type:      M
3305    Execution Slots:       SLOT23
3306    ========================================================================== */
3307 
3308 #define Q6_P_vmpywohacc_PP_sat __builtin_HEXAGON_M2_mmachs_s0
3309 
3310 /* ==========================================================================
3311    Assembly Syntax:       Rxx32+=vmpywoh(Rss32,Rtt32):<<1:sat
3312    C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3313    Instruction Type:      M
3314    Execution Slots:       SLOT23
3315    ========================================================================== */
3316 
3317 #define Q6_P_vmpywohacc_PP_s1_sat __builtin_HEXAGON_M2_mmachs_s1
3318 
3319 /* ==========================================================================
3320    Assembly Syntax:       Rxx32+=vmpyweh(Rss32,Rtt32):rnd:sat
3321    C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3322    Instruction Type:      M
3323    Execution Slots:       SLOT23
3324    ========================================================================== */
3325 
3326 #define Q6_P_vmpywehacc_PP_rnd_sat __builtin_HEXAGON_M2_mmacls_rs0
3327 
3328 /* ==========================================================================
3329    Assembly Syntax:       Rxx32+=vmpyweh(Rss32,Rtt32):<<1:rnd:sat
3330    C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3331    Instruction Type:      M
3332    Execution Slots:       SLOT23
3333    ========================================================================== */
3334 
3335 #define Q6_P_vmpywehacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmacls_rs1
3336 
3337 /* ==========================================================================
3338    Assembly Syntax:       Rxx32+=vmpyweh(Rss32,Rtt32):sat
3339    C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3340    Instruction Type:      M
3341    Execution Slots:       SLOT23
3342    ========================================================================== */
3343 
3344 #define Q6_P_vmpywehacc_PP_sat __builtin_HEXAGON_M2_mmacls_s0
3345 
3346 /* ==========================================================================
3347    Assembly Syntax:       Rxx32+=vmpyweh(Rss32,Rtt32):<<1:sat
3348    C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3349    Instruction Type:      M
3350    Execution Slots:       SLOT23
3351    ========================================================================== */
3352 
3353 #define Q6_P_vmpywehacc_PP_s1_sat __builtin_HEXAGON_M2_mmacls_s1
3354 
3355 /* ==========================================================================
3356    Assembly Syntax:       Rxx32+=vmpywouh(Rss32,Rtt32):rnd:sat
3357    C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3358    Instruction Type:      M
3359    Execution Slots:       SLOT23
3360    ========================================================================== */
3361 
3362 #define Q6_P_vmpywouhacc_PP_rnd_sat __builtin_HEXAGON_M2_mmacuhs_rs0
3363 
3364 /* ==========================================================================
3365    Assembly Syntax:       Rxx32+=vmpywouh(Rss32,Rtt32):<<1:rnd:sat
3366    C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3367    Instruction Type:      M
3368    Execution Slots:       SLOT23
3369    ========================================================================== */
3370 
3371 #define Q6_P_vmpywouhacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmacuhs_rs1
3372 
3373 /* ==========================================================================
3374    Assembly Syntax:       Rxx32+=vmpywouh(Rss32,Rtt32):sat
3375    C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3376    Instruction Type:      M
3377    Execution Slots:       SLOT23
3378    ========================================================================== */
3379 
3380 #define Q6_P_vmpywouhacc_PP_sat __builtin_HEXAGON_M2_mmacuhs_s0
3381 
3382 /* ==========================================================================
3383    Assembly Syntax:       Rxx32+=vmpywouh(Rss32,Rtt32):<<1:sat
3384    C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3385    Instruction Type:      M
3386    Execution Slots:       SLOT23
3387    ========================================================================== */
3388 
3389 #define Q6_P_vmpywouhacc_PP_s1_sat __builtin_HEXAGON_M2_mmacuhs_s1
3390 
3391 /* ==========================================================================
3392    Assembly Syntax:       Rxx32+=vmpyweuh(Rss32,Rtt32):rnd:sat
3393    C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3394    Instruction Type:      M
3395    Execution Slots:       SLOT23
3396    ========================================================================== */
3397 
3398 #define Q6_P_vmpyweuhacc_PP_rnd_sat __builtin_HEXAGON_M2_mmaculs_rs0
3399 
3400 /* ==========================================================================
3401    Assembly Syntax:       Rxx32+=vmpyweuh(Rss32,Rtt32):<<1:rnd:sat
3402    C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3403    Instruction Type:      M
3404    Execution Slots:       SLOT23
3405    ========================================================================== */
3406 
3407 #define Q6_P_vmpyweuhacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmaculs_rs1
3408 
3409 /* ==========================================================================
3410    Assembly Syntax:       Rxx32+=vmpyweuh(Rss32,Rtt32):sat
3411    C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3412    Instruction Type:      M
3413    Execution Slots:       SLOT23
3414    ========================================================================== */
3415 
3416 #define Q6_P_vmpyweuhacc_PP_sat __builtin_HEXAGON_M2_mmaculs_s0
3417 
3418 /* ==========================================================================
3419    Assembly Syntax:       Rxx32+=vmpyweuh(Rss32,Rtt32):<<1:sat
3420    C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
3421    Instruction Type:      M
3422    Execution Slots:       SLOT23
3423    ========================================================================== */
3424 
3425 #define Q6_P_vmpyweuhacc_PP_s1_sat __builtin_HEXAGON_M2_mmaculs_s1
3426 
3427 /* ==========================================================================
3428    Assembly Syntax:       Rdd32=vmpywoh(Rss32,Rtt32):rnd:sat
3429    C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_rnd_sat(Word64 Rss, Word64 Rtt)
3430    Instruction Type:      M
3431    Execution Slots:       SLOT23
3432    ========================================================================== */
3433 
3434 #define Q6_P_vmpywoh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyh_rs0
3435 
3436 /* ==========================================================================
3437    Assembly Syntax:       Rdd32=vmpywoh(Rss32,Rtt32):<<1:rnd:sat
3438    C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
3439    Instruction Type:      M
3440    Execution Slots:       SLOT23
3441    ========================================================================== */
3442 
3443 #define Q6_P_vmpywoh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyh_rs1
3444 
3445 /* ==========================================================================
3446    Assembly Syntax:       Rdd32=vmpywoh(Rss32,Rtt32):sat
3447    C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_sat(Word64 Rss, Word64 Rtt)
3448    Instruction Type:      M
3449    Execution Slots:       SLOT23
3450    ========================================================================== */
3451 
3452 #define Q6_P_vmpywoh_PP_sat __builtin_HEXAGON_M2_mmpyh_s0
3453 
3454 /* ==========================================================================
3455    Assembly Syntax:       Rdd32=vmpywoh(Rss32,Rtt32):<<1:sat
3456    C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_s1_sat(Word64 Rss, Word64 Rtt)
3457    Instruction Type:      M
3458    Execution Slots:       SLOT23
3459    ========================================================================== */
3460 
3461 #define Q6_P_vmpywoh_PP_s1_sat __builtin_HEXAGON_M2_mmpyh_s1
3462 
3463 /* ==========================================================================
3464    Assembly Syntax:       Rdd32=vmpyweh(Rss32,Rtt32):rnd:sat
3465    C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_rnd_sat(Word64 Rss, Word64 Rtt)
3466    Instruction Type:      M
3467    Execution Slots:       SLOT23
3468    ========================================================================== */
3469 
3470 #define Q6_P_vmpyweh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyl_rs0
3471 
3472 /* ==========================================================================
3473    Assembly Syntax:       Rdd32=vmpyweh(Rss32,Rtt32):<<1:rnd:sat
3474    C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
3475    Instruction Type:      M
3476    Execution Slots:       SLOT23
3477    ========================================================================== */
3478 
3479 #define Q6_P_vmpyweh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyl_rs1
3480 
3481 /* ==========================================================================
3482    Assembly Syntax:       Rdd32=vmpyweh(Rss32,Rtt32):sat
3483    C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_sat(Word64 Rss, Word64 Rtt)
3484    Instruction Type:      M
3485    Execution Slots:       SLOT23
3486    ========================================================================== */
3487 
3488 #define Q6_P_vmpyweh_PP_sat __builtin_HEXAGON_M2_mmpyl_s0
3489 
3490 /* ==========================================================================
3491    Assembly Syntax:       Rdd32=vmpyweh(Rss32,Rtt32):<<1:sat
3492    C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_s1_sat(Word64 Rss, Word64 Rtt)
3493    Instruction Type:      M
3494    Execution Slots:       SLOT23
3495    ========================================================================== */
3496 
3497 #define Q6_P_vmpyweh_PP_s1_sat __builtin_HEXAGON_M2_mmpyl_s1
3498 
3499 /* ==========================================================================
3500    Assembly Syntax:       Rdd32=vmpywouh(Rss32,Rtt32):rnd:sat
3501    C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_rnd_sat(Word64 Rss, Word64 Rtt)
3502    Instruction Type:      M
3503    Execution Slots:       SLOT23
3504    ========================================================================== */
3505 
3506 #define Q6_P_vmpywouh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyuh_rs0
3507 
3508 /* ==========================================================================
3509    Assembly Syntax:       Rdd32=vmpywouh(Rss32,Rtt32):<<1:rnd:sat
3510    C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
3511    Instruction Type:      M
3512    Execution Slots:       SLOT23
3513    ========================================================================== */
3514 
3515 #define Q6_P_vmpywouh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyuh_rs1
3516 
3517 /* ==========================================================================
3518    Assembly Syntax:       Rdd32=vmpywouh(Rss32,Rtt32):sat
3519    C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_sat(Word64 Rss, Word64 Rtt)
3520    Instruction Type:      M
3521    Execution Slots:       SLOT23
3522    ========================================================================== */
3523 
3524 #define Q6_P_vmpywouh_PP_sat __builtin_HEXAGON_M2_mmpyuh_s0
3525 
3526 /* ==========================================================================
3527    Assembly Syntax:       Rdd32=vmpywouh(Rss32,Rtt32):<<1:sat
3528    C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_s1_sat(Word64 Rss, Word64 Rtt)
3529    Instruction Type:      M
3530    Execution Slots:       SLOT23
3531    ========================================================================== */
3532 
3533 #define Q6_P_vmpywouh_PP_s1_sat __builtin_HEXAGON_M2_mmpyuh_s1
3534 
3535 /* ==========================================================================
3536    Assembly Syntax:       Rdd32=vmpyweuh(Rss32,Rtt32):rnd:sat
3537    C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_rnd_sat(Word64 Rss, Word64 Rtt)
3538    Instruction Type:      M
3539    Execution Slots:       SLOT23
3540    ========================================================================== */
3541 
3542 #define Q6_P_vmpyweuh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyul_rs0
3543 
3544 /* ==========================================================================
3545    Assembly Syntax:       Rdd32=vmpyweuh(Rss32,Rtt32):<<1:rnd:sat
3546    C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
3547    Instruction Type:      M
3548    Execution Slots:       SLOT23
3549    ========================================================================== */
3550 
3551 #define Q6_P_vmpyweuh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyul_rs1
3552 
3553 /* ==========================================================================
3554    Assembly Syntax:       Rdd32=vmpyweuh(Rss32,Rtt32):sat
3555    C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_sat(Word64 Rss, Word64 Rtt)
3556    Instruction Type:      M
3557    Execution Slots:       SLOT23
3558    ========================================================================== */
3559 
3560 #define Q6_P_vmpyweuh_PP_sat __builtin_HEXAGON_M2_mmpyul_s0
3561 
3562 /* ==========================================================================
3563    Assembly Syntax:       Rdd32=vmpyweuh(Rss32,Rtt32):<<1:sat
3564    C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_s1_sat(Word64 Rss, Word64 Rtt)
3565    Instruction Type:      M
3566    Execution Slots:       SLOT23
3567    ========================================================================== */
3568 
3569 #define Q6_P_vmpyweuh_PP_s1_sat __builtin_HEXAGON_M2_mmpyul_s1
3570 
3571 /* ==========================================================================
3572    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.h)
3573    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh(Word32 Rx, Word32 Rs, Word32 Rt)
3574    Instruction Type:      M
3575    Execution Slots:       SLOT23
3576    ========================================================================== */
3577 
3578 #define Q6_R_mpyacc_RhRh __builtin_HEXAGON_M2_mpy_acc_hh_s0
3579 
3580 /* ==========================================================================
3581    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.h):<<1
3582    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3583    Instruction Type:      M
3584    Execution Slots:       SLOT23
3585    ========================================================================== */
3586 
3587 #define Q6_R_mpyacc_RhRh_s1 __builtin_HEXAGON_M2_mpy_acc_hh_s1
3588 
3589 /* ==========================================================================
3590    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.l)
3591    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl(Word32 Rx, Word32 Rs, Word32 Rt)
3592    Instruction Type:      M
3593    Execution Slots:       SLOT23
3594    ========================================================================== */
3595 
3596 #define Q6_R_mpyacc_RhRl __builtin_HEXAGON_M2_mpy_acc_hl_s0
3597 
3598 /* ==========================================================================
3599    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.l):<<1
3600    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3601    Instruction Type:      M
3602    Execution Slots:       SLOT23
3603    ========================================================================== */
3604 
3605 #define Q6_R_mpyacc_RhRl_s1 __builtin_HEXAGON_M2_mpy_acc_hl_s1
3606 
3607 /* ==========================================================================
3608    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.h)
3609    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh(Word32 Rx, Word32 Rs, Word32 Rt)
3610    Instruction Type:      M
3611    Execution Slots:       SLOT23
3612    ========================================================================== */
3613 
3614 #define Q6_R_mpyacc_RlRh __builtin_HEXAGON_M2_mpy_acc_lh_s0
3615 
3616 /* ==========================================================================
3617    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.h):<<1
3618    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3619    Instruction Type:      M
3620    Execution Slots:       SLOT23
3621    ========================================================================== */
3622 
3623 #define Q6_R_mpyacc_RlRh_s1 __builtin_HEXAGON_M2_mpy_acc_lh_s1
3624 
3625 /* ==========================================================================
3626    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.l)
3627    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl(Word32 Rx, Word32 Rs, Word32 Rt)
3628    Instruction Type:      M
3629    Execution Slots:       SLOT23
3630    ========================================================================== */
3631 
3632 #define Q6_R_mpyacc_RlRl __builtin_HEXAGON_M2_mpy_acc_ll_s0
3633 
3634 /* ==========================================================================
3635    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.l):<<1
3636    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3637    Instruction Type:      M
3638    Execution Slots:       SLOT23
3639    ========================================================================== */
3640 
3641 #define Q6_R_mpyacc_RlRl_s1 __builtin_HEXAGON_M2_mpy_acc_ll_s1
3642 
3643 /* ==========================================================================
3644    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.h):sat
3645    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3646    Instruction Type:      M
3647    Execution Slots:       SLOT23
3648    ========================================================================== */
3649 
3650 #define Q6_R_mpyacc_RhRh_sat __builtin_HEXAGON_M2_mpy_acc_sat_hh_s0
3651 
3652 /* ==========================================================================
3653    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.h):<<1:sat
3654    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3655    Instruction Type:      M
3656    Execution Slots:       SLOT23
3657    ========================================================================== */
3658 
3659 #define Q6_R_mpyacc_RhRh_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_hh_s1
3660 
3661 /* ==========================================================================
3662    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.l):sat
3663    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3664    Instruction Type:      M
3665    Execution Slots:       SLOT23
3666    ========================================================================== */
3667 
3668 #define Q6_R_mpyacc_RhRl_sat __builtin_HEXAGON_M2_mpy_acc_sat_hl_s0
3669 
3670 /* ==========================================================================
3671    Assembly Syntax:       Rx32+=mpy(Rs32.h,Rt32.l):<<1:sat
3672    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3673    Instruction Type:      M
3674    Execution Slots:       SLOT23
3675    ========================================================================== */
3676 
3677 #define Q6_R_mpyacc_RhRl_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_hl_s1
3678 
3679 /* ==========================================================================
3680    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.h):sat
3681    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3682    Instruction Type:      M
3683    Execution Slots:       SLOT23
3684    ========================================================================== */
3685 
3686 #define Q6_R_mpyacc_RlRh_sat __builtin_HEXAGON_M2_mpy_acc_sat_lh_s0
3687 
3688 /* ==========================================================================
3689    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.h):<<1:sat
3690    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3691    Instruction Type:      M
3692    Execution Slots:       SLOT23
3693    ========================================================================== */
3694 
3695 #define Q6_R_mpyacc_RlRh_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_lh_s1
3696 
3697 /* ==========================================================================
3698    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.l):sat
3699    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3700    Instruction Type:      M
3701    Execution Slots:       SLOT23
3702    ========================================================================== */
3703 
3704 #define Q6_R_mpyacc_RlRl_sat __builtin_HEXAGON_M2_mpy_acc_sat_ll_s0
3705 
3706 /* ==========================================================================
3707    Assembly Syntax:       Rx32+=mpy(Rs32.l,Rt32.l):<<1:sat
3708    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3709    Instruction Type:      M
3710    Execution Slots:       SLOT23
3711    ========================================================================== */
3712 
3713 #define Q6_R_mpyacc_RlRl_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_ll_s1
3714 
3715 /* ==========================================================================
3716    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h)
3717    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh(Word32 Rs, Word32 Rt)
3718    Instruction Type:      M
3719    Execution Slots:       SLOT23
3720    ========================================================================== */
3721 
3722 #define Q6_R_mpy_RhRh __builtin_HEXAGON_M2_mpy_hh_s0
3723 
3724 /* ==========================================================================
3725    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):<<1
3726    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1(Word32 Rs, Word32 Rt)
3727    Instruction Type:      M
3728    Execution Slots:       SLOT23
3729    ========================================================================== */
3730 
3731 #define Q6_R_mpy_RhRh_s1 __builtin_HEXAGON_M2_mpy_hh_s1
3732 
3733 /* ==========================================================================
3734    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l)
3735    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl(Word32 Rs, Word32 Rt)
3736    Instruction Type:      M
3737    Execution Slots:       SLOT23
3738    ========================================================================== */
3739 
3740 #define Q6_R_mpy_RhRl __builtin_HEXAGON_M2_mpy_hl_s0
3741 
3742 /* ==========================================================================
3743    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):<<1
3744    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1(Word32 Rs, Word32 Rt)
3745    Instruction Type:      M
3746    Execution Slots:       SLOT23
3747    ========================================================================== */
3748 
3749 #define Q6_R_mpy_RhRl_s1 __builtin_HEXAGON_M2_mpy_hl_s1
3750 
3751 /* ==========================================================================
3752    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h)
3753    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh(Word32 Rs, Word32 Rt)
3754    Instruction Type:      M
3755    Execution Slots:       SLOT23
3756    ========================================================================== */
3757 
3758 #define Q6_R_mpy_RlRh __builtin_HEXAGON_M2_mpy_lh_s0
3759 
3760 /* ==========================================================================
3761    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):<<1
3762    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1(Word32 Rs, Word32 Rt)
3763    Instruction Type:      M
3764    Execution Slots:       SLOT23
3765    ========================================================================== */
3766 
3767 #define Q6_R_mpy_RlRh_s1 __builtin_HEXAGON_M2_mpy_lh_s1
3768 
3769 /* ==========================================================================
3770    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l)
3771    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl(Word32 Rs, Word32 Rt)
3772    Instruction Type:      M
3773    Execution Slots:       SLOT23
3774    ========================================================================== */
3775 
3776 #define Q6_R_mpy_RlRl __builtin_HEXAGON_M2_mpy_ll_s0
3777 
3778 /* ==========================================================================
3779    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):<<1
3780    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1(Word32 Rs, Word32 Rt)
3781    Instruction Type:      M
3782    Execution Slots:       SLOT23
3783    ========================================================================== */
3784 
3785 #define Q6_R_mpy_RlRl_s1 __builtin_HEXAGON_M2_mpy_ll_s1
3786 
3787 /* ==========================================================================
3788    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.h)
3789    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh(Word32 Rx, Word32 Rs, Word32 Rt)
3790    Instruction Type:      M
3791    Execution Slots:       SLOT23
3792    ========================================================================== */
3793 
3794 #define Q6_R_mpynac_RhRh __builtin_HEXAGON_M2_mpy_nac_hh_s0
3795 
3796 /* ==========================================================================
3797    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.h):<<1
3798    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3799    Instruction Type:      M
3800    Execution Slots:       SLOT23
3801    ========================================================================== */
3802 
3803 #define Q6_R_mpynac_RhRh_s1 __builtin_HEXAGON_M2_mpy_nac_hh_s1
3804 
3805 /* ==========================================================================
3806    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.l)
3807    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl(Word32 Rx, Word32 Rs, Word32 Rt)
3808    Instruction Type:      M
3809    Execution Slots:       SLOT23
3810    ========================================================================== */
3811 
3812 #define Q6_R_mpynac_RhRl __builtin_HEXAGON_M2_mpy_nac_hl_s0
3813 
3814 /* ==========================================================================
3815    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.l):<<1
3816    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3817    Instruction Type:      M
3818    Execution Slots:       SLOT23
3819    ========================================================================== */
3820 
3821 #define Q6_R_mpynac_RhRl_s1 __builtin_HEXAGON_M2_mpy_nac_hl_s1
3822 
3823 /* ==========================================================================
3824    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.h)
3825    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh(Word32 Rx, Word32 Rs, Word32 Rt)
3826    Instruction Type:      M
3827    Execution Slots:       SLOT23
3828    ========================================================================== */
3829 
3830 #define Q6_R_mpynac_RlRh __builtin_HEXAGON_M2_mpy_nac_lh_s0
3831 
3832 /* ==========================================================================
3833    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.h):<<1
3834    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3835    Instruction Type:      M
3836    Execution Slots:       SLOT23
3837    ========================================================================== */
3838 
3839 #define Q6_R_mpynac_RlRh_s1 __builtin_HEXAGON_M2_mpy_nac_lh_s1
3840 
3841 /* ==========================================================================
3842    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.l)
3843    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl(Word32 Rx, Word32 Rs, Word32 Rt)
3844    Instruction Type:      M
3845    Execution Slots:       SLOT23
3846    ========================================================================== */
3847 
3848 #define Q6_R_mpynac_RlRl __builtin_HEXAGON_M2_mpy_nac_ll_s0
3849 
3850 /* ==========================================================================
3851    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.l):<<1
3852    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
3853    Instruction Type:      M
3854    Execution Slots:       SLOT23
3855    ========================================================================== */
3856 
3857 #define Q6_R_mpynac_RlRl_s1 __builtin_HEXAGON_M2_mpy_nac_ll_s1
3858 
3859 /* ==========================================================================
3860    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.h):sat
3861    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3862    Instruction Type:      M
3863    Execution Slots:       SLOT23
3864    ========================================================================== */
3865 
3866 #define Q6_R_mpynac_RhRh_sat __builtin_HEXAGON_M2_mpy_nac_sat_hh_s0
3867 
3868 /* ==========================================================================
3869    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.h):<<1:sat
3870    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3871    Instruction Type:      M
3872    Execution Slots:       SLOT23
3873    ========================================================================== */
3874 
3875 #define Q6_R_mpynac_RhRh_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_hh_s1
3876 
3877 /* ==========================================================================
3878    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.l):sat
3879    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3880    Instruction Type:      M
3881    Execution Slots:       SLOT23
3882    ========================================================================== */
3883 
3884 #define Q6_R_mpynac_RhRl_sat __builtin_HEXAGON_M2_mpy_nac_sat_hl_s0
3885 
3886 /* ==========================================================================
3887    Assembly Syntax:       Rx32-=mpy(Rs32.h,Rt32.l):<<1:sat
3888    C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3889    Instruction Type:      M
3890    Execution Slots:       SLOT23
3891    ========================================================================== */
3892 
3893 #define Q6_R_mpynac_RhRl_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_hl_s1
3894 
3895 /* ==========================================================================
3896    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.h):sat
3897    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3898    Instruction Type:      M
3899    Execution Slots:       SLOT23
3900    ========================================================================== */
3901 
3902 #define Q6_R_mpynac_RlRh_sat __builtin_HEXAGON_M2_mpy_nac_sat_lh_s0
3903 
3904 /* ==========================================================================
3905    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.h):<<1:sat
3906    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3907    Instruction Type:      M
3908    Execution Slots:       SLOT23
3909    ========================================================================== */
3910 
3911 #define Q6_R_mpynac_RlRh_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_lh_s1
3912 
3913 /* ==========================================================================
3914    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.l):sat
3915    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3916    Instruction Type:      M
3917    Execution Slots:       SLOT23
3918    ========================================================================== */
3919 
3920 #define Q6_R_mpynac_RlRl_sat __builtin_HEXAGON_M2_mpy_nac_sat_ll_s0
3921 
3922 /* ==========================================================================
3923    Assembly Syntax:       Rx32-=mpy(Rs32.l,Rt32.l):<<1:sat
3924    C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
3925    Instruction Type:      M
3926    Execution Slots:       SLOT23
3927    ========================================================================== */
3928 
3929 #define Q6_R_mpynac_RlRl_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_ll_s1
3930 
3931 /* ==========================================================================
3932    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):rnd
3933    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_rnd(Word32 Rs, Word32 Rt)
3934    Instruction Type:      M
3935    Execution Slots:       SLOT23
3936    ========================================================================== */
3937 
3938 #define Q6_R_mpy_RhRh_rnd __builtin_HEXAGON_M2_mpy_rnd_hh_s0
3939 
3940 /* ==========================================================================
3941    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):<<1:rnd
3942    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1_rnd(Word32 Rs, Word32 Rt)
3943    Instruction Type:      M
3944    Execution Slots:       SLOT23
3945    ========================================================================== */
3946 
3947 #define Q6_R_mpy_RhRh_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_hh_s1
3948 
3949 /* ==========================================================================
3950    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):rnd
3951    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_rnd(Word32 Rs, Word32 Rt)
3952    Instruction Type:      M
3953    Execution Slots:       SLOT23
3954    ========================================================================== */
3955 
3956 #define Q6_R_mpy_RhRl_rnd __builtin_HEXAGON_M2_mpy_rnd_hl_s0
3957 
3958 /* ==========================================================================
3959    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):<<1:rnd
3960    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1_rnd(Word32 Rs, Word32 Rt)
3961    Instruction Type:      M
3962    Execution Slots:       SLOT23
3963    ========================================================================== */
3964 
3965 #define Q6_R_mpy_RhRl_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_hl_s1
3966 
3967 /* ==========================================================================
3968    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):rnd
3969    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_rnd(Word32 Rs, Word32 Rt)
3970    Instruction Type:      M
3971    Execution Slots:       SLOT23
3972    ========================================================================== */
3973 
3974 #define Q6_R_mpy_RlRh_rnd __builtin_HEXAGON_M2_mpy_rnd_lh_s0
3975 
3976 /* ==========================================================================
3977    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):<<1:rnd
3978    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1_rnd(Word32 Rs, Word32 Rt)
3979    Instruction Type:      M
3980    Execution Slots:       SLOT23
3981    ========================================================================== */
3982 
3983 #define Q6_R_mpy_RlRh_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_lh_s1
3984 
3985 /* ==========================================================================
3986    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):rnd
3987    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_rnd(Word32 Rs, Word32 Rt)
3988    Instruction Type:      M
3989    Execution Slots:       SLOT23
3990    ========================================================================== */
3991 
3992 #define Q6_R_mpy_RlRl_rnd __builtin_HEXAGON_M2_mpy_rnd_ll_s0
3993 
3994 /* ==========================================================================
3995    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):<<1:rnd
3996    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1_rnd(Word32 Rs, Word32 Rt)
3997    Instruction Type:      M
3998    Execution Slots:       SLOT23
3999    ========================================================================== */
4000 
4001 #define Q6_R_mpy_RlRl_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_ll_s1
4002 
4003 /* ==========================================================================
4004    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):sat
4005    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_sat(Word32 Rs, Word32 Rt)
4006    Instruction Type:      M
4007    Execution Slots:       SLOT23
4008    ========================================================================== */
4009 
4010 #define Q6_R_mpy_RhRh_sat __builtin_HEXAGON_M2_mpy_sat_hh_s0
4011 
4012 /* ==========================================================================
4013    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):<<1:sat
4014    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1_sat(Word32 Rs, Word32 Rt)
4015    Instruction Type:      M
4016    Execution Slots:       SLOT23
4017    ========================================================================== */
4018 
4019 #define Q6_R_mpy_RhRh_s1_sat __builtin_HEXAGON_M2_mpy_sat_hh_s1
4020 
4021 /* ==========================================================================
4022    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):sat
4023    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_sat(Word32 Rs, Word32 Rt)
4024    Instruction Type:      M
4025    Execution Slots:       SLOT23
4026    ========================================================================== */
4027 
4028 #define Q6_R_mpy_RhRl_sat __builtin_HEXAGON_M2_mpy_sat_hl_s0
4029 
4030 /* ==========================================================================
4031    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):<<1:sat
4032    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1_sat(Word32 Rs, Word32 Rt)
4033    Instruction Type:      M
4034    Execution Slots:       SLOT23
4035    ========================================================================== */
4036 
4037 #define Q6_R_mpy_RhRl_s1_sat __builtin_HEXAGON_M2_mpy_sat_hl_s1
4038 
4039 /* ==========================================================================
4040    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):sat
4041    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_sat(Word32 Rs, Word32 Rt)
4042    Instruction Type:      M
4043    Execution Slots:       SLOT23
4044    ========================================================================== */
4045 
4046 #define Q6_R_mpy_RlRh_sat __builtin_HEXAGON_M2_mpy_sat_lh_s0
4047 
4048 /* ==========================================================================
4049    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):<<1:sat
4050    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1_sat(Word32 Rs, Word32 Rt)
4051    Instruction Type:      M
4052    Execution Slots:       SLOT23
4053    ========================================================================== */
4054 
4055 #define Q6_R_mpy_RlRh_s1_sat __builtin_HEXAGON_M2_mpy_sat_lh_s1
4056 
4057 /* ==========================================================================
4058    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):sat
4059    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_sat(Word32 Rs, Word32 Rt)
4060    Instruction Type:      M
4061    Execution Slots:       SLOT23
4062    ========================================================================== */
4063 
4064 #define Q6_R_mpy_RlRl_sat __builtin_HEXAGON_M2_mpy_sat_ll_s0
4065 
4066 /* ==========================================================================
4067    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):<<1:sat
4068    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1_sat(Word32 Rs, Word32 Rt)
4069    Instruction Type:      M
4070    Execution Slots:       SLOT23
4071    ========================================================================== */
4072 
4073 #define Q6_R_mpy_RlRl_s1_sat __builtin_HEXAGON_M2_mpy_sat_ll_s1
4074 
4075 /* ==========================================================================
4076    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):rnd:sat
4077    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_rnd_sat(Word32 Rs, Word32 Rt)
4078    Instruction Type:      M
4079    Execution Slots:       SLOT23
4080    ========================================================================== */
4081 
4082 #define Q6_R_mpy_RhRh_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s0
4083 
4084 /* ==========================================================================
4085    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.h):<<1:rnd:sat
4086    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1_rnd_sat(Word32 Rs, Word32 Rt)
4087    Instruction Type:      M
4088    Execution Slots:       SLOT23
4089    ========================================================================== */
4090 
4091 #define Q6_R_mpy_RhRh_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s1
4092 
4093 /* ==========================================================================
4094    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):rnd:sat
4095    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_rnd_sat(Word32 Rs, Word32 Rt)
4096    Instruction Type:      M
4097    Execution Slots:       SLOT23
4098    ========================================================================== */
4099 
4100 #define Q6_R_mpy_RhRl_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s0
4101 
4102 /* ==========================================================================
4103    Assembly Syntax:       Rd32=mpy(Rs32.h,Rt32.l):<<1:rnd:sat
4104    C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1_rnd_sat(Word32 Rs, Word32 Rt)
4105    Instruction Type:      M
4106    Execution Slots:       SLOT23
4107    ========================================================================== */
4108 
4109 #define Q6_R_mpy_RhRl_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s1
4110 
4111 /* ==========================================================================
4112    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):rnd:sat
4113    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_rnd_sat(Word32 Rs, Word32 Rt)
4114    Instruction Type:      M
4115    Execution Slots:       SLOT23
4116    ========================================================================== */
4117 
4118 #define Q6_R_mpy_RlRh_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s0
4119 
4120 /* ==========================================================================
4121    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.h):<<1:rnd:sat
4122    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1_rnd_sat(Word32 Rs, Word32 Rt)
4123    Instruction Type:      M
4124    Execution Slots:       SLOT23
4125    ========================================================================== */
4126 
4127 #define Q6_R_mpy_RlRh_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s1
4128 
4129 /* ==========================================================================
4130    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):rnd:sat
4131    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_rnd_sat(Word32 Rs, Word32 Rt)
4132    Instruction Type:      M
4133    Execution Slots:       SLOT23
4134    ========================================================================== */
4135 
4136 #define Q6_R_mpy_RlRl_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s0
4137 
4138 /* ==========================================================================
4139    Assembly Syntax:       Rd32=mpy(Rs32.l,Rt32.l):<<1:rnd:sat
4140    C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1_rnd_sat(Word32 Rs, Word32 Rt)
4141    Instruction Type:      M
4142    Execution Slots:       SLOT23
4143    ========================================================================== */
4144 
4145 #define Q6_R_mpy_RlRl_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s1
4146 
4147 /* ==========================================================================
4148    Assembly Syntax:       Rd32=mpy(Rs32,Rt32)
4149    C Intrinsic Prototype: Word32 Q6_R_mpy_RR(Word32 Rs, Word32 Rt)
4150    Instruction Type:      M
4151    Execution Slots:       SLOT23
4152    ========================================================================== */
4153 
4154 #define Q6_R_mpy_RR __builtin_HEXAGON_M2_mpy_up
4155 
4156 /* ==========================================================================
4157    Assembly Syntax:       Rd32=mpy(Rs32,Rt32):<<1
4158    C Intrinsic Prototype: Word32 Q6_R_mpy_RR_s1(Word32 Rs, Word32 Rt)
4159    Instruction Type:      M
4160    Execution Slots:       SLOT23
4161    ========================================================================== */
4162 
4163 #define Q6_R_mpy_RR_s1 __builtin_HEXAGON_M2_mpy_up_s1
4164 
4165 /* ==========================================================================
4166    Assembly Syntax:       Rd32=mpy(Rs32,Rt32):<<1:sat
4167    C Intrinsic Prototype: Word32 Q6_R_mpy_RR_s1_sat(Word32 Rs, Word32 Rt)
4168    Instruction Type:      M
4169    Execution Slots:       SLOT23
4170    ========================================================================== */
4171 
4172 #define Q6_R_mpy_RR_s1_sat __builtin_HEXAGON_M2_mpy_up_s1_sat
4173 
4174 /* ==========================================================================
4175    Assembly Syntax:       Rxx32+=mpy(Rs32.h,Rt32.h)
4176    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RhRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4177    Instruction Type:      M
4178    Execution Slots:       SLOT23
4179    ========================================================================== */
4180 
4181 #define Q6_P_mpyacc_RhRh __builtin_HEXAGON_M2_mpyd_acc_hh_s0
4182 
4183 /* ==========================================================================
4184    Assembly Syntax:       Rxx32+=mpy(Rs32.h,Rt32.h):<<1
4185    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4186    Instruction Type:      M
4187    Execution Slots:       SLOT23
4188    ========================================================================== */
4189 
4190 #define Q6_P_mpyacc_RhRh_s1 __builtin_HEXAGON_M2_mpyd_acc_hh_s1
4191 
4192 /* ==========================================================================
4193    Assembly Syntax:       Rxx32+=mpy(Rs32.h,Rt32.l)
4194    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RhRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4195    Instruction Type:      M
4196    Execution Slots:       SLOT23
4197    ========================================================================== */
4198 
4199 #define Q6_P_mpyacc_RhRl __builtin_HEXAGON_M2_mpyd_acc_hl_s0
4200 
4201 /* ==========================================================================
4202    Assembly Syntax:       Rxx32+=mpy(Rs32.h,Rt32.l):<<1
4203    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4204    Instruction Type:      M
4205    Execution Slots:       SLOT23
4206    ========================================================================== */
4207 
4208 #define Q6_P_mpyacc_RhRl_s1 __builtin_HEXAGON_M2_mpyd_acc_hl_s1
4209 
4210 /* ==========================================================================
4211    Assembly Syntax:       Rxx32+=mpy(Rs32.l,Rt32.h)
4212    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RlRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4213    Instruction Type:      M
4214    Execution Slots:       SLOT23
4215    ========================================================================== */
4216 
4217 #define Q6_P_mpyacc_RlRh __builtin_HEXAGON_M2_mpyd_acc_lh_s0
4218 
4219 /* ==========================================================================
4220    Assembly Syntax:       Rxx32+=mpy(Rs32.l,Rt32.h):<<1
4221    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4222    Instruction Type:      M
4223    Execution Slots:       SLOT23
4224    ========================================================================== */
4225 
4226 #define Q6_P_mpyacc_RlRh_s1 __builtin_HEXAGON_M2_mpyd_acc_lh_s1
4227 
4228 /* ==========================================================================
4229    Assembly Syntax:       Rxx32+=mpy(Rs32.l,Rt32.l)
4230    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RlRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4231    Instruction Type:      M
4232    Execution Slots:       SLOT23
4233    ========================================================================== */
4234 
4235 #define Q6_P_mpyacc_RlRl __builtin_HEXAGON_M2_mpyd_acc_ll_s0
4236 
4237 /* ==========================================================================
4238    Assembly Syntax:       Rxx32+=mpy(Rs32.l,Rt32.l):<<1
4239    C Intrinsic Prototype: Word64 Q6_P_mpyacc_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4240    Instruction Type:      M
4241    Execution Slots:       SLOT23
4242    ========================================================================== */
4243 
4244 #define Q6_P_mpyacc_RlRl_s1 __builtin_HEXAGON_M2_mpyd_acc_ll_s1
4245 
4246 /* ==========================================================================
4247    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.h)
4248    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh(Word32 Rs, Word32 Rt)
4249    Instruction Type:      M
4250    Execution Slots:       SLOT23
4251    ========================================================================== */
4252 
4253 #define Q6_P_mpy_RhRh __builtin_HEXAGON_M2_mpyd_hh_s0
4254 
4255 /* ==========================================================================
4256    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.h):<<1
4257    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh_s1(Word32 Rs, Word32 Rt)
4258    Instruction Type:      M
4259    Execution Slots:       SLOT23
4260    ========================================================================== */
4261 
4262 #define Q6_P_mpy_RhRh_s1 __builtin_HEXAGON_M2_mpyd_hh_s1
4263 
4264 /* ==========================================================================
4265    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.l)
4266    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl(Word32 Rs, Word32 Rt)
4267    Instruction Type:      M
4268    Execution Slots:       SLOT23
4269    ========================================================================== */
4270 
4271 #define Q6_P_mpy_RhRl __builtin_HEXAGON_M2_mpyd_hl_s0
4272 
4273 /* ==========================================================================
4274    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.l):<<1
4275    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl_s1(Word32 Rs, Word32 Rt)
4276    Instruction Type:      M
4277    Execution Slots:       SLOT23
4278    ========================================================================== */
4279 
4280 #define Q6_P_mpy_RhRl_s1 __builtin_HEXAGON_M2_mpyd_hl_s1
4281 
4282 /* ==========================================================================
4283    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.h)
4284    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh(Word32 Rs, Word32 Rt)
4285    Instruction Type:      M
4286    Execution Slots:       SLOT23
4287    ========================================================================== */
4288 
4289 #define Q6_P_mpy_RlRh __builtin_HEXAGON_M2_mpyd_lh_s0
4290 
4291 /* ==========================================================================
4292    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.h):<<1
4293    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh_s1(Word32 Rs, Word32 Rt)
4294    Instruction Type:      M
4295    Execution Slots:       SLOT23
4296    ========================================================================== */
4297 
4298 #define Q6_P_mpy_RlRh_s1 __builtin_HEXAGON_M2_mpyd_lh_s1
4299 
4300 /* ==========================================================================
4301    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.l)
4302    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl(Word32 Rs, Word32 Rt)
4303    Instruction Type:      M
4304    Execution Slots:       SLOT23
4305    ========================================================================== */
4306 
4307 #define Q6_P_mpy_RlRl __builtin_HEXAGON_M2_mpyd_ll_s0
4308 
4309 /* ==========================================================================
4310    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.l):<<1
4311    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl_s1(Word32 Rs, Word32 Rt)
4312    Instruction Type:      M
4313    Execution Slots:       SLOT23
4314    ========================================================================== */
4315 
4316 #define Q6_P_mpy_RlRl_s1 __builtin_HEXAGON_M2_mpyd_ll_s1
4317 
4318 /* ==========================================================================
4319    Assembly Syntax:       Rxx32-=mpy(Rs32.h,Rt32.h)
4320    C Intrinsic Prototype: Word64 Q6_P_mpynac_RhRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4321    Instruction Type:      M
4322    Execution Slots:       SLOT23
4323    ========================================================================== */
4324 
4325 #define Q6_P_mpynac_RhRh __builtin_HEXAGON_M2_mpyd_nac_hh_s0
4326 
4327 /* ==========================================================================
4328    Assembly Syntax:       Rxx32-=mpy(Rs32.h,Rt32.h):<<1
4329    C Intrinsic Prototype: Word64 Q6_P_mpynac_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4330    Instruction Type:      M
4331    Execution Slots:       SLOT23
4332    ========================================================================== */
4333 
4334 #define Q6_P_mpynac_RhRh_s1 __builtin_HEXAGON_M2_mpyd_nac_hh_s1
4335 
4336 /* ==========================================================================
4337    Assembly Syntax:       Rxx32-=mpy(Rs32.h,Rt32.l)
4338    C Intrinsic Prototype: Word64 Q6_P_mpynac_RhRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4339    Instruction Type:      M
4340    Execution Slots:       SLOT23
4341    ========================================================================== */
4342 
4343 #define Q6_P_mpynac_RhRl __builtin_HEXAGON_M2_mpyd_nac_hl_s0
4344 
4345 /* ==========================================================================
4346    Assembly Syntax:       Rxx32-=mpy(Rs32.h,Rt32.l):<<1
4347    C Intrinsic Prototype: Word64 Q6_P_mpynac_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4348    Instruction Type:      M
4349    Execution Slots:       SLOT23
4350    ========================================================================== */
4351 
4352 #define Q6_P_mpynac_RhRl_s1 __builtin_HEXAGON_M2_mpyd_nac_hl_s1
4353 
4354 /* ==========================================================================
4355    Assembly Syntax:       Rxx32-=mpy(Rs32.l,Rt32.h)
4356    C Intrinsic Prototype: Word64 Q6_P_mpynac_RlRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4357    Instruction Type:      M
4358    Execution Slots:       SLOT23
4359    ========================================================================== */
4360 
4361 #define Q6_P_mpynac_RlRh __builtin_HEXAGON_M2_mpyd_nac_lh_s0
4362 
4363 /* ==========================================================================
4364    Assembly Syntax:       Rxx32-=mpy(Rs32.l,Rt32.h):<<1
4365    C Intrinsic Prototype: Word64 Q6_P_mpynac_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4366    Instruction Type:      M
4367    Execution Slots:       SLOT23
4368    ========================================================================== */
4369 
4370 #define Q6_P_mpynac_RlRh_s1 __builtin_HEXAGON_M2_mpyd_nac_lh_s1
4371 
4372 /* ==========================================================================
4373    Assembly Syntax:       Rxx32-=mpy(Rs32.l,Rt32.l)
4374    C Intrinsic Prototype: Word64 Q6_P_mpynac_RlRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4375    Instruction Type:      M
4376    Execution Slots:       SLOT23
4377    ========================================================================== */
4378 
4379 #define Q6_P_mpynac_RlRl __builtin_HEXAGON_M2_mpyd_nac_ll_s0
4380 
4381 /* ==========================================================================
4382    Assembly Syntax:       Rxx32-=mpy(Rs32.l,Rt32.l):<<1
4383    C Intrinsic Prototype: Word64 Q6_P_mpynac_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4384    Instruction Type:      M
4385    Execution Slots:       SLOT23
4386    ========================================================================== */
4387 
4388 #define Q6_P_mpynac_RlRl_s1 __builtin_HEXAGON_M2_mpyd_nac_ll_s1
4389 
4390 /* ==========================================================================
4391    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.h):rnd
4392    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh_rnd(Word32 Rs, Word32 Rt)
4393    Instruction Type:      M
4394    Execution Slots:       SLOT23
4395    ========================================================================== */
4396 
4397 #define Q6_P_mpy_RhRh_rnd __builtin_HEXAGON_M2_mpyd_rnd_hh_s0
4398 
4399 /* ==========================================================================
4400    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.h):<<1:rnd
4401    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh_s1_rnd(Word32 Rs, Word32 Rt)
4402    Instruction Type:      M
4403    Execution Slots:       SLOT23
4404    ========================================================================== */
4405 
4406 #define Q6_P_mpy_RhRh_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_hh_s1
4407 
4408 /* ==========================================================================
4409    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.l):rnd
4410    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl_rnd(Word32 Rs, Word32 Rt)
4411    Instruction Type:      M
4412    Execution Slots:       SLOT23
4413    ========================================================================== */
4414 
4415 #define Q6_P_mpy_RhRl_rnd __builtin_HEXAGON_M2_mpyd_rnd_hl_s0
4416 
4417 /* ==========================================================================
4418    Assembly Syntax:       Rdd32=mpy(Rs32.h,Rt32.l):<<1:rnd
4419    C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl_s1_rnd(Word32 Rs, Word32 Rt)
4420    Instruction Type:      M
4421    Execution Slots:       SLOT23
4422    ========================================================================== */
4423 
4424 #define Q6_P_mpy_RhRl_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_hl_s1
4425 
4426 /* ==========================================================================
4427    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.h):rnd
4428    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh_rnd(Word32 Rs, Word32 Rt)
4429    Instruction Type:      M
4430    Execution Slots:       SLOT23
4431    ========================================================================== */
4432 
4433 #define Q6_P_mpy_RlRh_rnd __builtin_HEXAGON_M2_mpyd_rnd_lh_s0
4434 
4435 /* ==========================================================================
4436    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.h):<<1:rnd
4437    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh_s1_rnd(Word32 Rs, Word32 Rt)
4438    Instruction Type:      M
4439    Execution Slots:       SLOT23
4440    ========================================================================== */
4441 
4442 #define Q6_P_mpy_RlRh_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_lh_s1
4443 
4444 /* ==========================================================================
4445    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.l):rnd
4446    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl_rnd(Word32 Rs, Word32 Rt)
4447    Instruction Type:      M
4448    Execution Slots:       SLOT23
4449    ========================================================================== */
4450 
4451 #define Q6_P_mpy_RlRl_rnd __builtin_HEXAGON_M2_mpyd_rnd_ll_s0
4452 
4453 /* ==========================================================================
4454    Assembly Syntax:       Rdd32=mpy(Rs32.l,Rt32.l):<<1:rnd
4455    C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl_s1_rnd(Word32 Rs, Word32 Rt)
4456    Instruction Type:      M
4457    Execution Slots:       SLOT23
4458    ========================================================================== */
4459 
4460 #define Q6_P_mpy_RlRl_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_ll_s1
4461 
4462 /* ==========================================================================
4463    Assembly Syntax:       Rd32=mpyi(Rs32,Rt32)
4464    C Intrinsic Prototype: Word32 Q6_R_mpyi_RR(Word32 Rs, Word32 Rt)
4465    Instruction Type:      M
4466    Execution Slots:       SLOT23
4467    ========================================================================== */
4468 
4469 #define Q6_R_mpyi_RR __builtin_HEXAGON_M2_mpyi
4470 
4471 /* ==========================================================================
4472    Assembly Syntax:       Rd32=mpyi(Rs32,#m9)
4473    C Intrinsic Prototype: Word32 Q6_R_mpyi_RI(Word32 Rs, Word32 Im9)
4474    Instruction Type:      M
4475    Execution Slots:       SLOT0123
4476    ========================================================================== */
4477 
4478 #define Q6_R_mpyi_RI __builtin_HEXAGON_M2_mpysmi
4479 
4480 /* ==========================================================================
4481    Assembly Syntax:       Rd32=mpysu(Rs32,Rt32)
4482    C Intrinsic Prototype: Word32 Q6_R_mpysu_RR(Word32 Rs, Word32 Rt)
4483    Instruction Type:      M
4484    Execution Slots:       SLOT23
4485    ========================================================================== */
4486 
4487 #define Q6_R_mpysu_RR __builtin_HEXAGON_M2_mpysu_up
4488 
4489 /* ==========================================================================
4490    Assembly Syntax:       Rx32+=mpyu(Rs32.h,Rt32.h)
4491    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RhRh(Word32 Rx, Word32 Rs, Word32 Rt)
4492    Instruction Type:      M
4493    Execution Slots:       SLOT23
4494    ========================================================================== */
4495 
4496 #define Q6_R_mpyuacc_RhRh __builtin_HEXAGON_M2_mpyu_acc_hh_s0
4497 
4498 /* ==========================================================================
4499    Assembly Syntax:       Rx32+=mpyu(Rs32.h,Rt32.h):<<1
4500    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4501    Instruction Type:      M
4502    Execution Slots:       SLOT23
4503    ========================================================================== */
4504 
4505 #define Q6_R_mpyuacc_RhRh_s1 __builtin_HEXAGON_M2_mpyu_acc_hh_s1
4506 
4507 /* ==========================================================================
4508    Assembly Syntax:       Rx32+=mpyu(Rs32.h,Rt32.l)
4509    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RhRl(Word32 Rx, Word32 Rs, Word32 Rt)
4510    Instruction Type:      M
4511    Execution Slots:       SLOT23
4512    ========================================================================== */
4513 
4514 #define Q6_R_mpyuacc_RhRl __builtin_HEXAGON_M2_mpyu_acc_hl_s0
4515 
4516 /* ==========================================================================
4517    Assembly Syntax:       Rx32+=mpyu(Rs32.h,Rt32.l):<<1
4518    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4519    Instruction Type:      M
4520    Execution Slots:       SLOT23
4521    ========================================================================== */
4522 
4523 #define Q6_R_mpyuacc_RhRl_s1 __builtin_HEXAGON_M2_mpyu_acc_hl_s1
4524 
4525 /* ==========================================================================
4526    Assembly Syntax:       Rx32+=mpyu(Rs32.l,Rt32.h)
4527    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RlRh(Word32 Rx, Word32 Rs, Word32 Rt)
4528    Instruction Type:      M
4529    Execution Slots:       SLOT23
4530    ========================================================================== */
4531 
4532 #define Q6_R_mpyuacc_RlRh __builtin_HEXAGON_M2_mpyu_acc_lh_s0
4533 
4534 /* ==========================================================================
4535    Assembly Syntax:       Rx32+=mpyu(Rs32.l,Rt32.h):<<1
4536    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4537    Instruction Type:      M
4538    Execution Slots:       SLOT23
4539    ========================================================================== */
4540 
4541 #define Q6_R_mpyuacc_RlRh_s1 __builtin_HEXAGON_M2_mpyu_acc_lh_s1
4542 
4543 /* ==========================================================================
4544    Assembly Syntax:       Rx32+=mpyu(Rs32.l,Rt32.l)
4545    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RlRl(Word32 Rx, Word32 Rs, Word32 Rt)
4546    Instruction Type:      M
4547    Execution Slots:       SLOT23
4548    ========================================================================== */
4549 
4550 #define Q6_R_mpyuacc_RlRl __builtin_HEXAGON_M2_mpyu_acc_ll_s0
4551 
4552 /* ==========================================================================
4553    Assembly Syntax:       Rx32+=mpyu(Rs32.l,Rt32.l):<<1
4554    C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4555    Instruction Type:      M
4556    Execution Slots:       SLOT23
4557    ========================================================================== */
4558 
4559 #define Q6_R_mpyuacc_RlRl_s1 __builtin_HEXAGON_M2_mpyu_acc_ll_s1
4560 
4561 /* ==========================================================================
4562    Assembly Syntax:       Rd32=mpyu(Rs32.h,Rt32.h)
4563    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RhRh(Word32 Rs, Word32 Rt)
4564    Instruction Type:      M
4565    Execution Slots:       SLOT23
4566    ========================================================================== */
4567 
4568 #define Q6_R_mpyu_RhRh __builtin_HEXAGON_M2_mpyu_hh_s0
4569 
4570 /* ==========================================================================
4571    Assembly Syntax:       Rd32=mpyu(Rs32.h,Rt32.h):<<1
4572    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RhRh_s1(Word32 Rs, Word32 Rt)
4573    Instruction Type:      M
4574    Execution Slots:       SLOT23
4575    ========================================================================== */
4576 
4577 #define Q6_R_mpyu_RhRh_s1 __builtin_HEXAGON_M2_mpyu_hh_s1
4578 
4579 /* ==========================================================================
4580    Assembly Syntax:       Rd32=mpyu(Rs32.h,Rt32.l)
4581    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RhRl(Word32 Rs, Word32 Rt)
4582    Instruction Type:      M
4583    Execution Slots:       SLOT23
4584    ========================================================================== */
4585 
4586 #define Q6_R_mpyu_RhRl __builtin_HEXAGON_M2_mpyu_hl_s0
4587 
4588 /* ==========================================================================
4589    Assembly Syntax:       Rd32=mpyu(Rs32.h,Rt32.l):<<1
4590    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RhRl_s1(Word32 Rs, Word32 Rt)
4591    Instruction Type:      M
4592    Execution Slots:       SLOT23
4593    ========================================================================== */
4594 
4595 #define Q6_R_mpyu_RhRl_s1 __builtin_HEXAGON_M2_mpyu_hl_s1
4596 
4597 /* ==========================================================================
4598    Assembly Syntax:       Rd32=mpyu(Rs32.l,Rt32.h)
4599    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RlRh(Word32 Rs, Word32 Rt)
4600    Instruction Type:      M
4601    Execution Slots:       SLOT23
4602    ========================================================================== */
4603 
4604 #define Q6_R_mpyu_RlRh __builtin_HEXAGON_M2_mpyu_lh_s0
4605 
4606 /* ==========================================================================
4607    Assembly Syntax:       Rd32=mpyu(Rs32.l,Rt32.h):<<1
4608    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RlRh_s1(Word32 Rs, Word32 Rt)
4609    Instruction Type:      M
4610    Execution Slots:       SLOT23
4611    ========================================================================== */
4612 
4613 #define Q6_R_mpyu_RlRh_s1 __builtin_HEXAGON_M2_mpyu_lh_s1
4614 
4615 /* ==========================================================================
4616    Assembly Syntax:       Rd32=mpyu(Rs32.l,Rt32.l)
4617    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RlRl(Word32 Rs, Word32 Rt)
4618    Instruction Type:      M
4619    Execution Slots:       SLOT23
4620    ========================================================================== */
4621 
4622 #define Q6_R_mpyu_RlRl __builtin_HEXAGON_M2_mpyu_ll_s0
4623 
4624 /* ==========================================================================
4625    Assembly Syntax:       Rd32=mpyu(Rs32.l,Rt32.l):<<1
4626    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RlRl_s1(Word32 Rs, Word32 Rt)
4627    Instruction Type:      M
4628    Execution Slots:       SLOT23
4629    ========================================================================== */
4630 
4631 #define Q6_R_mpyu_RlRl_s1 __builtin_HEXAGON_M2_mpyu_ll_s1
4632 
4633 /* ==========================================================================
4634    Assembly Syntax:       Rx32-=mpyu(Rs32.h,Rt32.h)
4635    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RhRh(Word32 Rx, Word32 Rs, Word32 Rt)
4636    Instruction Type:      M
4637    Execution Slots:       SLOT23
4638    ========================================================================== */
4639 
4640 #define Q6_R_mpyunac_RhRh __builtin_HEXAGON_M2_mpyu_nac_hh_s0
4641 
4642 /* ==========================================================================
4643    Assembly Syntax:       Rx32-=mpyu(Rs32.h,Rt32.h):<<1
4644    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4645    Instruction Type:      M
4646    Execution Slots:       SLOT23
4647    ========================================================================== */
4648 
4649 #define Q6_R_mpyunac_RhRh_s1 __builtin_HEXAGON_M2_mpyu_nac_hh_s1
4650 
4651 /* ==========================================================================
4652    Assembly Syntax:       Rx32-=mpyu(Rs32.h,Rt32.l)
4653    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RhRl(Word32 Rx, Word32 Rs, Word32 Rt)
4654    Instruction Type:      M
4655    Execution Slots:       SLOT23
4656    ========================================================================== */
4657 
4658 #define Q6_R_mpyunac_RhRl __builtin_HEXAGON_M2_mpyu_nac_hl_s0
4659 
4660 /* ==========================================================================
4661    Assembly Syntax:       Rx32-=mpyu(Rs32.h,Rt32.l):<<1
4662    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4663    Instruction Type:      M
4664    Execution Slots:       SLOT23
4665    ========================================================================== */
4666 
4667 #define Q6_R_mpyunac_RhRl_s1 __builtin_HEXAGON_M2_mpyu_nac_hl_s1
4668 
4669 /* ==========================================================================
4670    Assembly Syntax:       Rx32-=mpyu(Rs32.l,Rt32.h)
4671    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RlRh(Word32 Rx, Word32 Rs, Word32 Rt)
4672    Instruction Type:      M
4673    Execution Slots:       SLOT23
4674    ========================================================================== */
4675 
4676 #define Q6_R_mpyunac_RlRh __builtin_HEXAGON_M2_mpyu_nac_lh_s0
4677 
4678 /* ==========================================================================
4679    Assembly Syntax:       Rx32-=mpyu(Rs32.l,Rt32.h):<<1
4680    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4681    Instruction Type:      M
4682    Execution Slots:       SLOT23
4683    ========================================================================== */
4684 
4685 #define Q6_R_mpyunac_RlRh_s1 __builtin_HEXAGON_M2_mpyu_nac_lh_s1
4686 
4687 /* ==========================================================================
4688    Assembly Syntax:       Rx32-=mpyu(Rs32.l,Rt32.l)
4689    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RlRl(Word32 Rx, Word32 Rs, Word32 Rt)
4690    Instruction Type:      M
4691    Execution Slots:       SLOT23
4692    ========================================================================== */
4693 
4694 #define Q6_R_mpyunac_RlRl __builtin_HEXAGON_M2_mpyu_nac_ll_s0
4695 
4696 /* ==========================================================================
4697    Assembly Syntax:       Rx32-=mpyu(Rs32.l,Rt32.l):<<1
4698    C Intrinsic Prototype: Word32 Q6_R_mpyunac_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)
4699    Instruction Type:      M
4700    Execution Slots:       SLOT23
4701    ========================================================================== */
4702 
4703 #define Q6_R_mpyunac_RlRl_s1 __builtin_HEXAGON_M2_mpyu_nac_ll_s1
4704 
4705 /* ==========================================================================
4706    Assembly Syntax:       Rd32=mpyu(Rs32,Rt32)
4707    C Intrinsic Prototype: UWord32 Q6_R_mpyu_RR(Word32 Rs, Word32 Rt)
4708    Instruction Type:      M
4709    Execution Slots:       SLOT23
4710    ========================================================================== */
4711 
4712 #define Q6_R_mpyu_RR __builtin_HEXAGON_M2_mpyu_up
4713 
4714 /* ==========================================================================
4715    Assembly Syntax:       Rxx32+=mpyu(Rs32.h,Rt32.h)
4716    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RhRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4717    Instruction Type:      M
4718    Execution Slots:       SLOT23
4719    ========================================================================== */
4720 
4721 #define Q6_P_mpyuacc_RhRh __builtin_HEXAGON_M2_mpyud_acc_hh_s0
4722 
4723 /* ==========================================================================
4724    Assembly Syntax:       Rxx32+=mpyu(Rs32.h,Rt32.h):<<1
4725    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4726    Instruction Type:      M
4727    Execution Slots:       SLOT23
4728    ========================================================================== */
4729 
4730 #define Q6_P_mpyuacc_RhRh_s1 __builtin_HEXAGON_M2_mpyud_acc_hh_s1
4731 
4732 /* ==========================================================================
4733    Assembly Syntax:       Rxx32+=mpyu(Rs32.h,Rt32.l)
4734    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RhRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4735    Instruction Type:      M
4736    Execution Slots:       SLOT23
4737    ========================================================================== */
4738 
4739 #define Q6_P_mpyuacc_RhRl __builtin_HEXAGON_M2_mpyud_acc_hl_s0
4740 
4741 /* ==========================================================================
4742    Assembly Syntax:       Rxx32+=mpyu(Rs32.h,Rt32.l):<<1
4743    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4744    Instruction Type:      M
4745    Execution Slots:       SLOT23
4746    ========================================================================== */
4747 
4748 #define Q6_P_mpyuacc_RhRl_s1 __builtin_HEXAGON_M2_mpyud_acc_hl_s1
4749 
4750 /* ==========================================================================
4751    Assembly Syntax:       Rxx32+=mpyu(Rs32.l,Rt32.h)
4752    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RlRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4753    Instruction Type:      M
4754    Execution Slots:       SLOT23
4755    ========================================================================== */
4756 
4757 #define Q6_P_mpyuacc_RlRh __builtin_HEXAGON_M2_mpyud_acc_lh_s0
4758 
4759 /* ==========================================================================
4760    Assembly Syntax:       Rxx32+=mpyu(Rs32.l,Rt32.h):<<1
4761    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4762    Instruction Type:      M
4763    Execution Slots:       SLOT23
4764    ========================================================================== */
4765 
4766 #define Q6_P_mpyuacc_RlRh_s1 __builtin_HEXAGON_M2_mpyud_acc_lh_s1
4767 
4768 /* ==========================================================================
4769    Assembly Syntax:       Rxx32+=mpyu(Rs32.l,Rt32.l)
4770    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RlRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4771    Instruction Type:      M
4772    Execution Slots:       SLOT23
4773    ========================================================================== */
4774 
4775 #define Q6_P_mpyuacc_RlRl __builtin_HEXAGON_M2_mpyud_acc_ll_s0
4776 
4777 /* ==========================================================================
4778    Assembly Syntax:       Rxx32+=mpyu(Rs32.l,Rt32.l):<<1
4779    C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4780    Instruction Type:      M
4781    Execution Slots:       SLOT23
4782    ========================================================================== */
4783 
4784 #define Q6_P_mpyuacc_RlRl_s1 __builtin_HEXAGON_M2_mpyud_acc_ll_s1
4785 
4786 /* ==========================================================================
4787    Assembly Syntax:       Rdd32=mpyu(Rs32.h,Rt32.h)
4788    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RhRh(Word32 Rs, Word32 Rt)
4789    Instruction Type:      M
4790    Execution Slots:       SLOT23
4791    ========================================================================== */
4792 
4793 #define Q6_P_mpyu_RhRh __builtin_HEXAGON_M2_mpyud_hh_s0
4794 
4795 /* ==========================================================================
4796    Assembly Syntax:       Rdd32=mpyu(Rs32.h,Rt32.h):<<1
4797    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RhRh_s1(Word32 Rs, Word32 Rt)
4798    Instruction Type:      M
4799    Execution Slots:       SLOT23
4800    ========================================================================== */
4801 
4802 #define Q6_P_mpyu_RhRh_s1 __builtin_HEXAGON_M2_mpyud_hh_s1
4803 
4804 /* ==========================================================================
4805    Assembly Syntax:       Rdd32=mpyu(Rs32.h,Rt32.l)
4806    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RhRl(Word32 Rs, Word32 Rt)
4807    Instruction Type:      M
4808    Execution Slots:       SLOT23
4809    ========================================================================== */
4810 
4811 #define Q6_P_mpyu_RhRl __builtin_HEXAGON_M2_mpyud_hl_s0
4812 
4813 /* ==========================================================================
4814    Assembly Syntax:       Rdd32=mpyu(Rs32.h,Rt32.l):<<1
4815    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RhRl_s1(Word32 Rs, Word32 Rt)
4816    Instruction Type:      M
4817    Execution Slots:       SLOT23
4818    ========================================================================== */
4819 
4820 #define Q6_P_mpyu_RhRl_s1 __builtin_HEXAGON_M2_mpyud_hl_s1
4821 
4822 /* ==========================================================================
4823    Assembly Syntax:       Rdd32=mpyu(Rs32.l,Rt32.h)
4824    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RlRh(Word32 Rs, Word32 Rt)
4825    Instruction Type:      M
4826    Execution Slots:       SLOT23
4827    ========================================================================== */
4828 
4829 #define Q6_P_mpyu_RlRh __builtin_HEXAGON_M2_mpyud_lh_s0
4830 
4831 /* ==========================================================================
4832    Assembly Syntax:       Rdd32=mpyu(Rs32.l,Rt32.h):<<1
4833    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RlRh_s1(Word32 Rs, Word32 Rt)
4834    Instruction Type:      M
4835    Execution Slots:       SLOT23
4836    ========================================================================== */
4837 
4838 #define Q6_P_mpyu_RlRh_s1 __builtin_HEXAGON_M2_mpyud_lh_s1
4839 
4840 /* ==========================================================================
4841    Assembly Syntax:       Rdd32=mpyu(Rs32.l,Rt32.l)
4842    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RlRl(Word32 Rs, Word32 Rt)
4843    Instruction Type:      M
4844    Execution Slots:       SLOT23
4845    ========================================================================== */
4846 
4847 #define Q6_P_mpyu_RlRl __builtin_HEXAGON_M2_mpyud_ll_s0
4848 
4849 /* ==========================================================================
4850    Assembly Syntax:       Rdd32=mpyu(Rs32.l,Rt32.l):<<1
4851    C Intrinsic Prototype: UWord64 Q6_P_mpyu_RlRl_s1(Word32 Rs, Word32 Rt)
4852    Instruction Type:      M
4853    Execution Slots:       SLOT23
4854    ========================================================================== */
4855 
4856 #define Q6_P_mpyu_RlRl_s1 __builtin_HEXAGON_M2_mpyud_ll_s1
4857 
4858 /* ==========================================================================
4859    Assembly Syntax:       Rxx32-=mpyu(Rs32.h,Rt32.h)
4860    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RhRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4861    Instruction Type:      M
4862    Execution Slots:       SLOT23
4863    ========================================================================== */
4864 
4865 #define Q6_P_mpyunac_RhRh __builtin_HEXAGON_M2_mpyud_nac_hh_s0
4866 
4867 /* ==========================================================================
4868    Assembly Syntax:       Rxx32-=mpyu(Rs32.h,Rt32.h):<<1
4869    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4870    Instruction Type:      M
4871    Execution Slots:       SLOT23
4872    ========================================================================== */
4873 
4874 #define Q6_P_mpyunac_RhRh_s1 __builtin_HEXAGON_M2_mpyud_nac_hh_s1
4875 
4876 /* ==========================================================================
4877    Assembly Syntax:       Rxx32-=mpyu(Rs32.h,Rt32.l)
4878    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RhRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4879    Instruction Type:      M
4880    Execution Slots:       SLOT23
4881    ========================================================================== */
4882 
4883 #define Q6_P_mpyunac_RhRl __builtin_HEXAGON_M2_mpyud_nac_hl_s0
4884 
4885 /* ==========================================================================
4886    Assembly Syntax:       Rxx32-=mpyu(Rs32.h,Rt32.l):<<1
4887    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4888    Instruction Type:      M
4889    Execution Slots:       SLOT23
4890    ========================================================================== */
4891 
4892 #define Q6_P_mpyunac_RhRl_s1 __builtin_HEXAGON_M2_mpyud_nac_hl_s1
4893 
4894 /* ==========================================================================
4895    Assembly Syntax:       Rxx32-=mpyu(Rs32.l,Rt32.h)
4896    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RlRh(Word64 Rxx, Word32 Rs, Word32 Rt)
4897    Instruction Type:      M
4898    Execution Slots:       SLOT23
4899    ========================================================================== */
4900 
4901 #define Q6_P_mpyunac_RlRh __builtin_HEXAGON_M2_mpyud_nac_lh_s0
4902 
4903 /* ==========================================================================
4904    Assembly Syntax:       Rxx32-=mpyu(Rs32.l,Rt32.h):<<1
4905    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4906    Instruction Type:      M
4907    Execution Slots:       SLOT23
4908    ========================================================================== */
4909 
4910 #define Q6_P_mpyunac_RlRh_s1 __builtin_HEXAGON_M2_mpyud_nac_lh_s1
4911 
4912 /* ==========================================================================
4913    Assembly Syntax:       Rxx32-=mpyu(Rs32.l,Rt32.l)
4914    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RlRl(Word64 Rxx, Word32 Rs, Word32 Rt)
4915    Instruction Type:      M
4916    Execution Slots:       SLOT23
4917    ========================================================================== */
4918 
4919 #define Q6_P_mpyunac_RlRl __builtin_HEXAGON_M2_mpyud_nac_ll_s0
4920 
4921 /* ==========================================================================
4922    Assembly Syntax:       Rxx32-=mpyu(Rs32.l,Rt32.l):<<1
4923    C Intrinsic Prototype: Word64 Q6_P_mpyunac_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)
4924    Instruction Type:      M
4925    Execution Slots:       SLOT23
4926    ========================================================================== */
4927 
4928 #define Q6_P_mpyunac_RlRl_s1 __builtin_HEXAGON_M2_mpyud_nac_ll_s1
4929 
4930 /* ==========================================================================
4931    Assembly Syntax:       Rd32=mpyui(Rs32,Rt32)
4932    C Intrinsic Prototype: Word32 Q6_R_mpyui_RR(Word32 Rs, Word32 Rt)
4933    Instruction Type:      M
4934    Execution Slots:       SLOT0123
4935    ========================================================================== */
4936 
4937 #define Q6_R_mpyui_RR __builtin_HEXAGON_M2_mpyui
4938 
4939 /* ==========================================================================
4940    Assembly Syntax:       Rx32-=add(Rs32,Rt32)
4941    C Intrinsic Prototype: Word32 Q6_R_addnac_RR(Word32 Rx, Word32 Rs, Word32 Rt)
4942    Instruction Type:      M
4943    Execution Slots:       SLOT23
4944    ========================================================================== */
4945 
4946 #define Q6_R_addnac_RR __builtin_HEXAGON_M2_nacci
4947 
4948 /* ==========================================================================
4949    Assembly Syntax:       Rx32-=add(Rs32,#s8)
4950    C Intrinsic Prototype: Word32 Q6_R_addnac_RI(Word32 Rx, Word32 Rs, Word32 Is8)
4951    Instruction Type:      M
4952    Execution Slots:       SLOT23
4953    ========================================================================== */
4954 
4955 #define Q6_R_addnac_RI __builtin_HEXAGON_M2_naccii
4956 
4957 /* ==========================================================================
4958    Assembly Syntax:       Rx32+=sub(Rt32,Rs32)
4959    C Intrinsic Prototype: Word32 Q6_R_subacc_RR(Word32 Rx, Word32 Rt, Word32 Rs)
4960    Instruction Type:      M
4961    Execution Slots:       SLOT23
4962    ========================================================================== */
4963 
4964 #define Q6_R_subacc_RR __builtin_HEXAGON_M2_subacc
4965 
4966 /* ==========================================================================
4967    Assembly Syntax:       Rdd32=vabsdiffh(Rtt32,Rss32)
4968    C Intrinsic Prototype: Word64 Q6_P_vabsdiffh_PP(Word64 Rtt, Word64 Rss)
4969    Instruction Type:      M
4970    Execution Slots:       SLOT23
4971    ========================================================================== */
4972 
4973 #define Q6_P_vabsdiffh_PP __builtin_HEXAGON_M2_vabsdiffh
4974 
4975 /* ==========================================================================
4976    Assembly Syntax:       Rdd32=vabsdiffw(Rtt32,Rss32)
4977    C Intrinsic Prototype: Word64 Q6_P_vabsdiffw_PP(Word64 Rtt, Word64 Rss)
4978    Instruction Type:      M
4979    Execution Slots:       SLOT23
4980    ========================================================================== */
4981 
4982 #define Q6_P_vabsdiffw_PP __builtin_HEXAGON_M2_vabsdiffw
4983 
4984 /* ==========================================================================
4985    Assembly Syntax:       Rxx32+=vcmpyi(Rss32,Rtt32):sat
4986    C Intrinsic Prototype: Word64 Q6_P_vcmpyiacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
4987    Instruction Type:      M
4988    Execution Slots:       SLOT23
4989    ========================================================================== */
4990 
4991 #define Q6_P_vcmpyiacc_PP_sat __builtin_HEXAGON_M2_vcmac_s0_sat_i
4992 
4993 /* ==========================================================================
4994    Assembly Syntax:       Rxx32+=vcmpyr(Rss32,Rtt32):sat
4995    C Intrinsic Prototype: Word64 Q6_P_vcmpyracc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
4996    Instruction Type:      M
4997    Execution Slots:       SLOT23
4998    ========================================================================== */
4999 
5000 #define Q6_P_vcmpyracc_PP_sat __builtin_HEXAGON_M2_vcmac_s0_sat_r
5001 
5002 /* ==========================================================================
5003    Assembly Syntax:       Rdd32=vcmpyi(Rss32,Rtt32):sat
5004    C Intrinsic Prototype: Word64 Q6_P_vcmpyi_PP_sat(Word64 Rss, Word64 Rtt)
5005    Instruction Type:      M
5006    Execution Slots:       SLOT23
5007    ========================================================================== */
5008 
5009 #define Q6_P_vcmpyi_PP_sat __builtin_HEXAGON_M2_vcmpy_s0_sat_i
5010 
5011 /* ==========================================================================
5012    Assembly Syntax:       Rdd32=vcmpyr(Rss32,Rtt32):sat
5013    C Intrinsic Prototype: Word64 Q6_P_vcmpyr_PP_sat(Word64 Rss, Word64 Rtt)
5014    Instruction Type:      M
5015    Execution Slots:       SLOT23
5016    ========================================================================== */
5017 
5018 #define Q6_P_vcmpyr_PP_sat __builtin_HEXAGON_M2_vcmpy_s0_sat_r
5019 
5020 /* ==========================================================================
5021    Assembly Syntax:       Rdd32=vcmpyi(Rss32,Rtt32):<<1:sat
5022    C Intrinsic Prototype: Word64 Q6_P_vcmpyi_PP_s1_sat(Word64 Rss, Word64 Rtt)
5023    Instruction Type:      M
5024    Execution Slots:       SLOT23
5025    ========================================================================== */
5026 
5027 #define Q6_P_vcmpyi_PP_s1_sat __builtin_HEXAGON_M2_vcmpy_s1_sat_i
5028 
5029 /* ==========================================================================
5030    Assembly Syntax:       Rdd32=vcmpyr(Rss32,Rtt32):<<1:sat
5031    C Intrinsic Prototype: Word64 Q6_P_vcmpyr_PP_s1_sat(Word64 Rss, Word64 Rtt)
5032    Instruction Type:      M
5033    Execution Slots:       SLOT23
5034    ========================================================================== */
5035 
5036 #define Q6_P_vcmpyr_PP_s1_sat __builtin_HEXAGON_M2_vcmpy_s1_sat_r
5037 
5038 /* ==========================================================================
5039    Assembly Syntax:       Rxx32+=vdmpy(Rss32,Rtt32):sat
5040    C Intrinsic Prototype: Word64 Q6_P_vdmpyacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
5041    Instruction Type:      M
5042    Execution Slots:       SLOT23
5043    ========================================================================== */
5044 
5045 #define Q6_P_vdmpyacc_PP_sat __builtin_HEXAGON_M2_vdmacs_s0
5046 
5047 /* ==========================================================================
5048    Assembly Syntax:       Rxx32+=vdmpy(Rss32,Rtt32):<<1:sat
5049    C Intrinsic Prototype: Word64 Q6_P_vdmpyacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
5050    Instruction Type:      M
5051    Execution Slots:       SLOT23
5052    ========================================================================== */
5053 
5054 #define Q6_P_vdmpyacc_PP_s1_sat __builtin_HEXAGON_M2_vdmacs_s1
5055 
5056 /* ==========================================================================
5057    Assembly Syntax:       Rd32=vdmpy(Rss32,Rtt32):rnd:sat
5058    C Intrinsic Prototype: Word32 Q6_R_vdmpy_PP_rnd_sat(Word64 Rss, Word64 Rtt)
5059    Instruction Type:      M
5060    Execution Slots:       SLOT23
5061    ========================================================================== */
5062 
5063 #define Q6_R_vdmpy_PP_rnd_sat __builtin_HEXAGON_M2_vdmpyrs_s0
5064 
5065 /* ==========================================================================
5066    Assembly Syntax:       Rd32=vdmpy(Rss32,Rtt32):<<1:rnd:sat
5067    C Intrinsic Prototype: Word32 Q6_R_vdmpy_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
5068    Instruction Type:      M
5069    Execution Slots:       SLOT23
5070    ========================================================================== */
5071 
5072 #define Q6_R_vdmpy_PP_s1_rnd_sat __builtin_HEXAGON_M2_vdmpyrs_s1
5073 
5074 /* ==========================================================================
5075    Assembly Syntax:       Rdd32=vdmpy(Rss32,Rtt32):sat
5076    C Intrinsic Prototype: Word64 Q6_P_vdmpy_PP_sat(Word64 Rss, Word64 Rtt)
5077    Instruction Type:      M
5078    Execution Slots:       SLOT23
5079    ========================================================================== */
5080 
5081 #define Q6_P_vdmpy_PP_sat __builtin_HEXAGON_M2_vdmpys_s0
5082 
5083 /* ==========================================================================
5084    Assembly Syntax:       Rdd32=vdmpy(Rss32,Rtt32):<<1:sat
5085    C Intrinsic Prototype: Word64 Q6_P_vdmpy_PP_s1_sat(Word64 Rss, Word64 Rtt)
5086    Instruction Type:      M
5087    Execution Slots:       SLOT23
5088    ========================================================================== */
5089 
5090 #define Q6_P_vdmpy_PP_s1_sat __builtin_HEXAGON_M2_vdmpys_s1
5091 
5092 /* ==========================================================================
5093    Assembly Syntax:       Rxx32+=vmpyh(Rs32,Rt32)
5094    C Intrinsic Prototype: Word64 Q6_P_vmpyhacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
5095    Instruction Type:      M
5096    Execution Slots:       SLOT23
5097    ========================================================================== */
5098 
5099 #define Q6_P_vmpyhacc_RR __builtin_HEXAGON_M2_vmac2
5100 
5101 /* ==========================================================================
5102    Assembly Syntax:       Rxx32+=vmpyeh(Rss32,Rtt32)
5103    C Intrinsic Prototype: Word64 Q6_P_vmpyehacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5104    Instruction Type:      M
5105    Execution Slots:       SLOT23
5106    ========================================================================== */
5107 
5108 #define Q6_P_vmpyehacc_PP __builtin_HEXAGON_M2_vmac2es
5109 
5110 /* ==========================================================================
5111    Assembly Syntax:       Rxx32+=vmpyeh(Rss32,Rtt32):sat
5112    C Intrinsic Prototype: Word64 Q6_P_vmpyehacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
5113    Instruction Type:      M
5114    Execution Slots:       SLOT23
5115    ========================================================================== */
5116 
5117 #define Q6_P_vmpyehacc_PP_sat __builtin_HEXAGON_M2_vmac2es_s0
5118 
5119 /* ==========================================================================
5120    Assembly Syntax:       Rxx32+=vmpyeh(Rss32,Rtt32):<<1:sat
5121    C Intrinsic Prototype: Word64 Q6_P_vmpyehacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
5122    Instruction Type:      M
5123    Execution Slots:       SLOT23
5124    ========================================================================== */
5125 
5126 #define Q6_P_vmpyehacc_PP_s1_sat __builtin_HEXAGON_M2_vmac2es_s1
5127 
5128 /* ==========================================================================
5129    Assembly Syntax:       Rxx32+=vmpyh(Rs32,Rt32):sat
5130    C Intrinsic Prototype: Word64 Q6_P_vmpyhacc_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
5131    Instruction Type:      M
5132    Execution Slots:       SLOT23
5133    ========================================================================== */
5134 
5135 #define Q6_P_vmpyhacc_RR_sat __builtin_HEXAGON_M2_vmac2s_s0
5136 
5137 /* ==========================================================================
5138    Assembly Syntax:       Rxx32+=vmpyh(Rs32,Rt32):<<1:sat
5139    C Intrinsic Prototype: Word64 Q6_P_vmpyhacc_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
5140    Instruction Type:      M
5141    Execution Slots:       SLOT23
5142    ========================================================================== */
5143 
5144 #define Q6_P_vmpyhacc_RR_s1_sat __builtin_HEXAGON_M2_vmac2s_s1
5145 
5146 /* ==========================================================================
5147    Assembly Syntax:       Rxx32+=vmpyhsu(Rs32,Rt32):sat
5148    C Intrinsic Prototype: Word64 Q6_P_vmpyhsuacc_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
5149    Instruction Type:      M
5150    Execution Slots:       SLOT23
5151    ========================================================================== */
5152 
5153 #define Q6_P_vmpyhsuacc_RR_sat __builtin_HEXAGON_M2_vmac2su_s0
5154 
5155 /* ==========================================================================
5156    Assembly Syntax:       Rxx32+=vmpyhsu(Rs32,Rt32):<<1:sat
5157    C Intrinsic Prototype: Word64 Q6_P_vmpyhsuacc_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)
5158    Instruction Type:      M
5159    Execution Slots:       SLOT23
5160    ========================================================================== */
5161 
5162 #define Q6_P_vmpyhsuacc_RR_s1_sat __builtin_HEXAGON_M2_vmac2su_s1
5163 
5164 /* ==========================================================================
5165    Assembly Syntax:       Rdd32=vmpyeh(Rss32,Rtt32):sat
5166    C Intrinsic Prototype: Word64 Q6_P_vmpyeh_PP_sat(Word64 Rss, Word64 Rtt)
5167    Instruction Type:      M
5168    Execution Slots:       SLOT23
5169    ========================================================================== */
5170 
5171 #define Q6_P_vmpyeh_PP_sat __builtin_HEXAGON_M2_vmpy2es_s0
5172 
5173 /* ==========================================================================
5174    Assembly Syntax:       Rdd32=vmpyeh(Rss32,Rtt32):<<1:sat
5175    C Intrinsic Prototype: Word64 Q6_P_vmpyeh_PP_s1_sat(Word64 Rss, Word64 Rtt)
5176    Instruction Type:      M
5177    Execution Slots:       SLOT23
5178    ========================================================================== */
5179 
5180 #define Q6_P_vmpyeh_PP_s1_sat __builtin_HEXAGON_M2_vmpy2es_s1
5181 
5182 /* ==========================================================================
5183    Assembly Syntax:       Rdd32=vmpyh(Rs32,Rt32):sat
5184    C Intrinsic Prototype: Word64 Q6_P_vmpyh_RR_sat(Word32 Rs, Word32 Rt)
5185    Instruction Type:      M
5186    Execution Slots:       SLOT23
5187    ========================================================================== */
5188 
5189 #define Q6_P_vmpyh_RR_sat __builtin_HEXAGON_M2_vmpy2s_s0
5190 
5191 /* ==========================================================================
5192    Assembly Syntax:       Rd32=vmpyh(Rs32,Rt32):rnd:sat
5193    C Intrinsic Prototype: Word32 Q6_R_vmpyh_RR_rnd_sat(Word32 Rs, Word32 Rt)
5194    Instruction Type:      M
5195    Execution Slots:       SLOT23
5196    ========================================================================== */
5197 
5198 #define Q6_R_vmpyh_RR_rnd_sat __builtin_HEXAGON_M2_vmpy2s_s0pack
5199 
5200 /* ==========================================================================
5201    Assembly Syntax:       Rdd32=vmpyh(Rs32,Rt32):<<1:sat
5202    C Intrinsic Prototype: Word64 Q6_P_vmpyh_RR_s1_sat(Word32 Rs, Word32 Rt)
5203    Instruction Type:      M
5204    Execution Slots:       SLOT23
5205    ========================================================================== */
5206 
5207 #define Q6_P_vmpyh_RR_s1_sat __builtin_HEXAGON_M2_vmpy2s_s1
5208 
5209 /* ==========================================================================
5210    Assembly Syntax:       Rd32=vmpyh(Rs32,Rt32):<<1:rnd:sat
5211    C Intrinsic Prototype: Word32 Q6_R_vmpyh_RR_s1_rnd_sat(Word32 Rs, Word32 Rt)
5212    Instruction Type:      M
5213    Execution Slots:       SLOT23
5214    ========================================================================== */
5215 
5216 #define Q6_R_vmpyh_RR_s1_rnd_sat __builtin_HEXAGON_M2_vmpy2s_s1pack
5217 
5218 /* ==========================================================================
5219    Assembly Syntax:       Rdd32=vmpyhsu(Rs32,Rt32):sat
5220    C Intrinsic Prototype: Word64 Q6_P_vmpyhsu_RR_sat(Word32 Rs, Word32 Rt)
5221    Instruction Type:      M
5222    Execution Slots:       SLOT23
5223    ========================================================================== */
5224 
5225 #define Q6_P_vmpyhsu_RR_sat __builtin_HEXAGON_M2_vmpy2su_s0
5226 
5227 /* ==========================================================================
5228    Assembly Syntax:       Rdd32=vmpyhsu(Rs32,Rt32):<<1:sat
5229    C Intrinsic Prototype: Word64 Q6_P_vmpyhsu_RR_s1_sat(Word32 Rs, Word32 Rt)
5230    Instruction Type:      M
5231    Execution Slots:       SLOT23
5232    ========================================================================== */
5233 
5234 #define Q6_P_vmpyhsu_RR_s1_sat __builtin_HEXAGON_M2_vmpy2su_s1
5235 
5236 /* ==========================================================================
5237    Assembly Syntax:       Rd32=vraddh(Rss32,Rtt32)
5238    C Intrinsic Prototype: Word32 Q6_R_vraddh_PP(Word64 Rss, Word64 Rtt)
5239    Instruction Type:      M
5240    Execution Slots:       SLOT23
5241    ========================================================================== */
5242 
5243 #define Q6_R_vraddh_PP __builtin_HEXAGON_M2_vraddh
5244 
5245 /* ==========================================================================
5246    Assembly Syntax:       Rd32=vradduh(Rss32,Rtt32)
5247    C Intrinsic Prototype: Word32 Q6_R_vradduh_PP(Word64 Rss, Word64 Rtt)
5248    Instruction Type:      M
5249    Execution Slots:       SLOT23
5250    ========================================================================== */
5251 
5252 #define Q6_R_vradduh_PP __builtin_HEXAGON_M2_vradduh
5253 
5254 /* ==========================================================================
5255    Assembly Syntax:       Rxx32+=vrcmpyi(Rss32,Rtt32)
5256    C Intrinsic Prototype: Word64 Q6_P_vrcmpyiacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5257    Instruction Type:      M
5258    Execution Slots:       SLOT23
5259    ========================================================================== */
5260 
5261 #define Q6_P_vrcmpyiacc_PP __builtin_HEXAGON_M2_vrcmaci_s0
5262 
5263 /* ==========================================================================
5264    Assembly Syntax:       Rxx32+=vrcmpyi(Rss32,Rtt32*)
5265    C Intrinsic Prototype: Word64 Q6_P_vrcmpyiacc_PP_conj(Word64 Rxx, Word64 Rss, Word64 Rtt)
5266    Instruction Type:      M
5267    Execution Slots:       SLOT23
5268    ========================================================================== */
5269 
5270 #define Q6_P_vrcmpyiacc_PP_conj __builtin_HEXAGON_M2_vrcmaci_s0c
5271 
5272 /* ==========================================================================
5273    Assembly Syntax:       Rxx32+=vrcmpyr(Rss32,Rtt32)
5274    C Intrinsic Prototype: Word64 Q6_P_vrcmpyracc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5275    Instruction Type:      M
5276    Execution Slots:       SLOT23
5277    ========================================================================== */
5278 
5279 #define Q6_P_vrcmpyracc_PP __builtin_HEXAGON_M2_vrcmacr_s0
5280 
5281 /* ==========================================================================
5282    Assembly Syntax:       Rxx32+=vrcmpyr(Rss32,Rtt32*)
5283    C Intrinsic Prototype: Word64 Q6_P_vrcmpyracc_PP_conj(Word64 Rxx, Word64 Rss, Word64 Rtt)
5284    Instruction Type:      M
5285    Execution Slots:       SLOT23
5286    ========================================================================== */
5287 
5288 #define Q6_P_vrcmpyracc_PP_conj __builtin_HEXAGON_M2_vrcmacr_s0c
5289 
5290 /* ==========================================================================
5291    Assembly Syntax:       Rdd32=vrcmpyi(Rss32,Rtt32)
5292    C Intrinsic Prototype: Word64 Q6_P_vrcmpyi_PP(Word64 Rss, Word64 Rtt)
5293    Instruction Type:      M
5294    Execution Slots:       SLOT23
5295    ========================================================================== */
5296 
5297 #define Q6_P_vrcmpyi_PP __builtin_HEXAGON_M2_vrcmpyi_s0
5298 
5299 /* ==========================================================================
5300    Assembly Syntax:       Rdd32=vrcmpyi(Rss32,Rtt32*)
5301    C Intrinsic Prototype: Word64 Q6_P_vrcmpyi_PP_conj(Word64 Rss, Word64 Rtt)
5302    Instruction Type:      M
5303    Execution Slots:       SLOT23
5304    ========================================================================== */
5305 
5306 #define Q6_P_vrcmpyi_PP_conj __builtin_HEXAGON_M2_vrcmpyi_s0c
5307 
5308 /* ==========================================================================
5309    Assembly Syntax:       Rdd32=vrcmpyr(Rss32,Rtt32)
5310    C Intrinsic Prototype: Word64 Q6_P_vrcmpyr_PP(Word64 Rss, Word64 Rtt)
5311    Instruction Type:      M
5312    Execution Slots:       SLOT23
5313    ========================================================================== */
5314 
5315 #define Q6_P_vrcmpyr_PP __builtin_HEXAGON_M2_vrcmpyr_s0
5316 
5317 /* ==========================================================================
5318    Assembly Syntax:       Rdd32=vrcmpyr(Rss32,Rtt32*)
5319    C Intrinsic Prototype: Word64 Q6_P_vrcmpyr_PP_conj(Word64 Rss, Word64 Rtt)
5320    Instruction Type:      M
5321    Execution Slots:       SLOT23
5322    ========================================================================== */
5323 
5324 #define Q6_P_vrcmpyr_PP_conj __builtin_HEXAGON_M2_vrcmpyr_s0c
5325 
5326 /* ==========================================================================
5327    Assembly Syntax:       Rxx32+=vrcmpys(Rss32,Rt32):<<1:sat
5328    C Intrinsic Prototype: Word64 Q6_P_vrcmpysacc_PR_s1_sat(Word64 Rxx, Word64 Rss, Word32 Rt)
5329    Instruction Type:      M
5330    Execution Slots:       SLOT0123
5331    ========================================================================== */
5332 
5333 #define Q6_P_vrcmpysacc_PR_s1_sat __builtin_HEXAGON_M2_vrcmpys_acc_s1
5334 
5335 /* ==========================================================================
5336    Assembly Syntax:       Rdd32=vrcmpys(Rss32,Rt32):<<1:sat
5337    C Intrinsic Prototype: Word64 Q6_P_vrcmpys_PR_s1_sat(Word64 Rss, Word32 Rt)
5338    Instruction Type:      M
5339    Execution Slots:       SLOT0123
5340    ========================================================================== */
5341 
5342 #define Q6_P_vrcmpys_PR_s1_sat __builtin_HEXAGON_M2_vrcmpys_s1
5343 
5344 /* ==========================================================================
5345    Assembly Syntax:       Rd32=vrcmpys(Rss32,Rt32):<<1:rnd:sat
5346    C Intrinsic Prototype: Word32 Q6_R_vrcmpys_PR_s1_rnd_sat(Word64 Rss, Word32 Rt)
5347    Instruction Type:      M
5348    Execution Slots:       SLOT0123
5349    ========================================================================== */
5350 
5351 #define Q6_R_vrcmpys_PR_s1_rnd_sat __builtin_HEXAGON_M2_vrcmpys_s1rp
5352 
5353 /* ==========================================================================
5354    Assembly Syntax:       Rxx32+=vrmpyh(Rss32,Rtt32)
5355    C Intrinsic Prototype: Word64 Q6_P_vrmpyhacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5356    Instruction Type:      M
5357    Execution Slots:       SLOT23
5358    ========================================================================== */
5359 
5360 #define Q6_P_vrmpyhacc_PP __builtin_HEXAGON_M2_vrmac_s0
5361 
5362 /* ==========================================================================
5363    Assembly Syntax:       Rdd32=vrmpyh(Rss32,Rtt32)
5364    C Intrinsic Prototype: Word64 Q6_P_vrmpyh_PP(Word64 Rss, Word64 Rtt)
5365    Instruction Type:      M
5366    Execution Slots:       SLOT23
5367    ========================================================================== */
5368 
5369 #define Q6_P_vrmpyh_PP __builtin_HEXAGON_M2_vrmpy_s0
5370 
5371 /* ==========================================================================
5372    Assembly Syntax:       Rx32^=xor(Rs32,Rt32)
5373    C Intrinsic Prototype: Word32 Q6_R_xorxacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5374    Instruction Type:      M
5375    Execution Slots:       SLOT23
5376    ========================================================================== */
5377 
5378 #define Q6_R_xorxacc_RR __builtin_HEXAGON_M2_xor_xacc
5379 
5380 /* ==========================================================================
5381    Assembly Syntax:       Rx32&=and(Rs32,Rt32)
5382    C Intrinsic Prototype: Word32 Q6_R_andand_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5383    Instruction Type:      M
5384    Execution Slots:       SLOT23
5385    ========================================================================== */
5386 
5387 #define Q6_R_andand_RR __builtin_HEXAGON_M4_and_and
5388 
5389 /* ==========================================================================
5390    Assembly Syntax:       Rx32&=and(Rs32,~Rt32)
5391    C Intrinsic Prototype: Word32 Q6_R_andand_RnR(Word32 Rx, Word32 Rs, Word32 Rt)
5392    Instruction Type:      M
5393    Execution Slots:       SLOT23
5394    ========================================================================== */
5395 
5396 #define Q6_R_andand_RnR __builtin_HEXAGON_M4_and_andn
5397 
5398 /* ==========================================================================
5399    Assembly Syntax:       Rx32&=or(Rs32,Rt32)
5400    C Intrinsic Prototype: Word32 Q6_R_orand_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5401    Instruction Type:      M
5402    Execution Slots:       SLOT23
5403    ========================================================================== */
5404 
5405 #define Q6_R_orand_RR __builtin_HEXAGON_M4_and_or
5406 
5407 /* ==========================================================================
5408    Assembly Syntax:       Rx32&=xor(Rs32,Rt32)
5409    C Intrinsic Prototype: Word32 Q6_R_xorand_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5410    Instruction Type:      M
5411    Execution Slots:       SLOT23
5412    ========================================================================== */
5413 
5414 #define Q6_R_xorand_RR __builtin_HEXAGON_M4_and_xor
5415 
5416 /* ==========================================================================
5417    Assembly Syntax:       Rd32=cmpyiwh(Rss32,Rt32):<<1:rnd:sat
5418    C Intrinsic Prototype: Word32 Q6_R_cmpyiwh_PR_s1_rnd_sat(Word64 Rss, Word32 Rt)
5419    Instruction Type:      S_3op
5420    Execution Slots:       SLOT23
5421    ========================================================================== */
5422 
5423 #define Q6_R_cmpyiwh_PR_s1_rnd_sat __builtin_HEXAGON_M4_cmpyi_wh
5424 
5425 /* ==========================================================================
5426    Assembly Syntax:       Rd32=cmpyiwh(Rss32,Rt32*):<<1:rnd:sat
5427    C Intrinsic Prototype: Word32 Q6_R_cmpyiwh_PR_conj_s1_rnd_sat(Word64 Rss, Word32 Rt)
5428    Instruction Type:      S_3op
5429    Execution Slots:       SLOT23
5430    ========================================================================== */
5431 
5432 #define Q6_R_cmpyiwh_PR_conj_s1_rnd_sat __builtin_HEXAGON_M4_cmpyi_whc
5433 
5434 /* ==========================================================================
5435    Assembly Syntax:       Rd32=cmpyrwh(Rss32,Rt32):<<1:rnd:sat
5436    C Intrinsic Prototype: Word32 Q6_R_cmpyrwh_PR_s1_rnd_sat(Word64 Rss, Word32 Rt)
5437    Instruction Type:      S_3op
5438    Execution Slots:       SLOT23
5439    ========================================================================== */
5440 
5441 #define Q6_R_cmpyrwh_PR_s1_rnd_sat __builtin_HEXAGON_M4_cmpyr_wh
5442 
5443 /* ==========================================================================
5444    Assembly Syntax:       Rd32=cmpyrwh(Rss32,Rt32*):<<1:rnd:sat
5445    C Intrinsic Prototype: Word32 Q6_R_cmpyrwh_PR_conj_s1_rnd_sat(Word64 Rss, Word32 Rt)
5446    Instruction Type:      S_3op
5447    Execution Slots:       SLOT23
5448    ========================================================================== */
5449 
5450 #define Q6_R_cmpyrwh_PR_conj_s1_rnd_sat __builtin_HEXAGON_M4_cmpyr_whc
5451 
5452 /* ==========================================================================
5453    Assembly Syntax:       Rx32+=mpy(Rs32,Rt32):<<1:sat
5454    C Intrinsic Prototype: Word32 Q6_R_mpyacc_RR_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
5455    Instruction Type:      M
5456    Execution Slots:       SLOT23
5457    ========================================================================== */
5458 
5459 #define Q6_R_mpyacc_RR_s1_sat __builtin_HEXAGON_M4_mac_up_s1_sat
5460 
5461 /* ==========================================================================
5462    Assembly Syntax:       Rd32=add(#u6,mpyi(Rs32,#U6))
5463    C Intrinsic Prototype: Word32 Q6_R_add_mpyi_IRI(Word32 Iu6, Word32 Rs, Word32 IU6)
5464    Instruction Type:      ALU64
5465    Execution Slots:       SLOT23
5466    ========================================================================== */
5467 
5468 #define Q6_R_add_mpyi_IRI __builtin_HEXAGON_M4_mpyri_addi
5469 
5470 /* ==========================================================================
5471    Assembly Syntax:       Rd32=add(Ru32,mpyi(Rs32,#u6))
5472    C Intrinsic Prototype: Word32 Q6_R_add_mpyi_RRI(Word32 Ru, Word32 Rs, Word32 Iu6)
5473    Instruction Type:      ALU64
5474    Execution Slots:       SLOT23
5475    ========================================================================== */
5476 
5477 #define Q6_R_add_mpyi_RRI __builtin_HEXAGON_M4_mpyri_addr
5478 
5479 /* ==========================================================================
5480    Assembly Syntax:       Rd32=add(Ru32,mpyi(#u6:2,Rs32))
5481    C Intrinsic Prototype: Word32 Q6_R_add_mpyi_RIR(Word32 Ru, Word32 Iu6_2, Word32 Rs)
5482    Instruction Type:      ALU64
5483    Execution Slots:       SLOT23
5484    ========================================================================== */
5485 
5486 #define Q6_R_add_mpyi_RIR __builtin_HEXAGON_M4_mpyri_addr_u2
5487 
5488 /* ==========================================================================
5489    Assembly Syntax:       Rd32=add(#u6,mpyi(Rs32,Rt32))
5490    C Intrinsic Prototype: Word32 Q6_R_add_mpyi_IRR(Word32 Iu6, Word32 Rs, Word32 Rt)
5491    Instruction Type:      ALU64
5492    Execution Slots:       SLOT23
5493    ========================================================================== */
5494 
5495 #define Q6_R_add_mpyi_IRR __builtin_HEXAGON_M4_mpyrr_addi
5496 
5497 /* ==========================================================================
5498    Assembly Syntax:       Ry32=add(Ru32,mpyi(Ry32,Rs32))
5499    C Intrinsic Prototype: Word32 Q6_R_add_mpyi_RRR(Word32 Ru, Word32 Ry, Word32 Rs)
5500    Instruction Type:      M
5501    Execution Slots:       SLOT23
5502    ========================================================================== */
5503 
5504 #define Q6_R_add_mpyi_RRR __builtin_HEXAGON_M4_mpyrr_addr
5505 
5506 /* ==========================================================================
5507    Assembly Syntax:       Rx32-=mpy(Rs32,Rt32):<<1:sat
5508    C Intrinsic Prototype: Word32 Q6_R_mpynac_RR_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)
5509    Instruction Type:      M
5510    Execution Slots:       SLOT23
5511    ========================================================================== */
5512 
5513 #define Q6_R_mpynac_RR_s1_sat __builtin_HEXAGON_M4_nac_up_s1_sat
5514 
5515 /* ==========================================================================
5516    Assembly Syntax:       Rx32|=and(Rs32,Rt32)
5517    C Intrinsic Prototype: Word32 Q6_R_andor_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5518    Instruction Type:      M
5519    Execution Slots:       SLOT23
5520    ========================================================================== */
5521 
5522 #define Q6_R_andor_RR __builtin_HEXAGON_M4_or_and
5523 
5524 /* ==========================================================================
5525    Assembly Syntax:       Rx32|=and(Rs32,~Rt32)
5526    C Intrinsic Prototype: Word32 Q6_R_andor_RnR(Word32 Rx, Word32 Rs, Word32 Rt)
5527    Instruction Type:      M
5528    Execution Slots:       SLOT23
5529    ========================================================================== */
5530 
5531 #define Q6_R_andor_RnR __builtin_HEXAGON_M4_or_andn
5532 
5533 /* ==========================================================================
5534    Assembly Syntax:       Rx32|=or(Rs32,Rt32)
5535    C Intrinsic Prototype: Word32 Q6_R_oror_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5536    Instruction Type:      M
5537    Execution Slots:       SLOT23
5538    ========================================================================== */
5539 
5540 #define Q6_R_oror_RR __builtin_HEXAGON_M4_or_or
5541 
5542 /* ==========================================================================
5543    Assembly Syntax:       Rx32|=xor(Rs32,Rt32)
5544    C Intrinsic Prototype: Word32 Q6_R_xoror_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5545    Instruction Type:      M
5546    Execution Slots:       SLOT23
5547    ========================================================================== */
5548 
5549 #define Q6_R_xoror_RR __builtin_HEXAGON_M4_or_xor
5550 
5551 /* ==========================================================================
5552    Assembly Syntax:       Rdd32=pmpyw(Rs32,Rt32)
5553    C Intrinsic Prototype: Word64 Q6_P_pmpyw_RR(Word32 Rs, Word32 Rt)
5554    Instruction Type:      M
5555    Execution Slots:       SLOT23
5556    ========================================================================== */
5557 
5558 #define Q6_P_pmpyw_RR __builtin_HEXAGON_M4_pmpyw
5559 
5560 /* ==========================================================================
5561    Assembly Syntax:       Rxx32^=pmpyw(Rs32,Rt32)
5562    C Intrinsic Prototype: Word64 Q6_P_pmpywxacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
5563    Instruction Type:      M
5564    Execution Slots:       SLOT23
5565    ========================================================================== */
5566 
5567 #define Q6_P_pmpywxacc_RR __builtin_HEXAGON_M4_pmpyw_acc
5568 
5569 /* ==========================================================================
5570    Assembly Syntax:       Rdd32=vpmpyh(Rs32,Rt32)
5571    C Intrinsic Prototype: Word64 Q6_P_vpmpyh_RR(Word32 Rs, Word32 Rt)
5572    Instruction Type:      M
5573    Execution Slots:       SLOT23
5574    ========================================================================== */
5575 
5576 #define Q6_P_vpmpyh_RR __builtin_HEXAGON_M4_vpmpyh
5577 
5578 /* ==========================================================================
5579    Assembly Syntax:       Rxx32^=vpmpyh(Rs32,Rt32)
5580    C Intrinsic Prototype: Word64 Q6_P_vpmpyhxacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
5581    Instruction Type:      M
5582    Execution Slots:       SLOT23
5583    ========================================================================== */
5584 
5585 #define Q6_P_vpmpyhxacc_RR __builtin_HEXAGON_M4_vpmpyh_acc
5586 
5587 /* ==========================================================================
5588    Assembly Syntax:       Rxx32+=vrmpyweh(Rss32,Rtt32)
5589    C Intrinsic Prototype: Word64 Q6_P_vrmpywehacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5590    Instruction Type:      M
5591    Execution Slots:       SLOT23
5592    ========================================================================== */
5593 
5594 #define Q6_P_vrmpywehacc_PP __builtin_HEXAGON_M4_vrmpyeh_acc_s0
5595 
5596 /* ==========================================================================
5597    Assembly Syntax:       Rxx32+=vrmpyweh(Rss32,Rtt32):<<1
5598    C Intrinsic Prototype: Word64 Q6_P_vrmpywehacc_PP_s1(Word64 Rxx, Word64 Rss, Word64 Rtt)
5599    Instruction Type:      M
5600    Execution Slots:       SLOT23
5601    ========================================================================== */
5602 
5603 #define Q6_P_vrmpywehacc_PP_s1 __builtin_HEXAGON_M4_vrmpyeh_acc_s1
5604 
5605 /* ==========================================================================
5606    Assembly Syntax:       Rdd32=vrmpyweh(Rss32,Rtt32)
5607    C Intrinsic Prototype: Word64 Q6_P_vrmpyweh_PP(Word64 Rss, Word64 Rtt)
5608    Instruction Type:      M
5609    Execution Slots:       SLOT23
5610    ========================================================================== */
5611 
5612 #define Q6_P_vrmpyweh_PP __builtin_HEXAGON_M4_vrmpyeh_s0
5613 
5614 /* ==========================================================================
5615    Assembly Syntax:       Rdd32=vrmpyweh(Rss32,Rtt32):<<1
5616    C Intrinsic Prototype: Word64 Q6_P_vrmpyweh_PP_s1(Word64 Rss, Word64 Rtt)
5617    Instruction Type:      M
5618    Execution Slots:       SLOT23
5619    ========================================================================== */
5620 
5621 #define Q6_P_vrmpyweh_PP_s1 __builtin_HEXAGON_M4_vrmpyeh_s1
5622 
5623 /* ==========================================================================
5624    Assembly Syntax:       Rxx32+=vrmpywoh(Rss32,Rtt32)
5625    C Intrinsic Prototype: Word64 Q6_P_vrmpywohacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5626    Instruction Type:      M
5627    Execution Slots:       SLOT23
5628    ========================================================================== */
5629 
5630 #define Q6_P_vrmpywohacc_PP __builtin_HEXAGON_M4_vrmpyoh_acc_s0
5631 
5632 /* ==========================================================================
5633    Assembly Syntax:       Rxx32+=vrmpywoh(Rss32,Rtt32):<<1
5634    C Intrinsic Prototype: Word64 Q6_P_vrmpywohacc_PP_s1(Word64 Rxx, Word64 Rss, Word64 Rtt)
5635    Instruction Type:      M
5636    Execution Slots:       SLOT23
5637    ========================================================================== */
5638 
5639 #define Q6_P_vrmpywohacc_PP_s1 __builtin_HEXAGON_M4_vrmpyoh_acc_s1
5640 
5641 /* ==========================================================================
5642    Assembly Syntax:       Rdd32=vrmpywoh(Rss32,Rtt32)
5643    C Intrinsic Prototype: Word64 Q6_P_vrmpywoh_PP(Word64 Rss, Word64 Rtt)
5644    Instruction Type:      M
5645    Execution Slots:       SLOT23
5646    ========================================================================== */
5647 
5648 #define Q6_P_vrmpywoh_PP __builtin_HEXAGON_M4_vrmpyoh_s0
5649 
5650 /* ==========================================================================
5651    Assembly Syntax:       Rdd32=vrmpywoh(Rss32,Rtt32):<<1
5652    C Intrinsic Prototype: Word64 Q6_P_vrmpywoh_PP_s1(Word64 Rss, Word64 Rtt)
5653    Instruction Type:      M
5654    Execution Slots:       SLOT23
5655    ========================================================================== */
5656 
5657 #define Q6_P_vrmpywoh_PP_s1 __builtin_HEXAGON_M4_vrmpyoh_s1
5658 
5659 /* ==========================================================================
5660    Assembly Syntax:       Rx32^=and(Rs32,Rt32)
5661    C Intrinsic Prototype: Word32 Q6_R_andxacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5662    Instruction Type:      M
5663    Execution Slots:       SLOT23
5664    ========================================================================== */
5665 
5666 #define Q6_R_andxacc_RR __builtin_HEXAGON_M4_xor_and
5667 
5668 /* ==========================================================================
5669    Assembly Syntax:       Rx32^=and(Rs32,~Rt32)
5670    C Intrinsic Prototype: Word32 Q6_R_andxacc_RnR(Word32 Rx, Word32 Rs, Word32 Rt)
5671    Instruction Type:      M
5672    Execution Slots:       SLOT23
5673    ========================================================================== */
5674 
5675 #define Q6_R_andxacc_RnR __builtin_HEXAGON_M4_xor_andn
5676 
5677 /* ==========================================================================
5678    Assembly Syntax:       Rx32^=or(Rs32,Rt32)
5679    C Intrinsic Prototype: Word32 Q6_R_orxacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5680    Instruction Type:      M
5681    Execution Slots:       SLOT23
5682    ========================================================================== */
5683 
5684 #define Q6_R_orxacc_RR __builtin_HEXAGON_M4_xor_or
5685 
5686 /* ==========================================================================
5687    Assembly Syntax:       Rxx32^=xor(Rss32,Rtt32)
5688    C Intrinsic Prototype: Word64 Q6_P_xorxacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5689    Instruction Type:      S_3op
5690    Execution Slots:       SLOT23
5691    ========================================================================== */
5692 
5693 #define Q6_P_xorxacc_PP __builtin_HEXAGON_M4_xor_xacc
5694 
5695 /* ==========================================================================
5696    Assembly Syntax:       Rxx32+=vdmpybsu(Rss32,Rtt32):sat
5697    C Intrinsic Prototype: Word64 Q6_P_vdmpybsuacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)
5698    Instruction Type:      M
5699    Execution Slots:       SLOT23
5700    ========================================================================== */
5701 
5702 #define Q6_P_vdmpybsuacc_PP_sat __builtin_HEXAGON_M5_vdmacbsu
5703 
5704 /* ==========================================================================
5705    Assembly Syntax:       Rdd32=vdmpybsu(Rss32,Rtt32):sat
5706    C Intrinsic Prototype: Word64 Q6_P_vdmpybsu_PP_sat(Word64 Rss, Word64 Rtt)
5707    Instruction Type:      M
5708    Execution Slots:       SLOT23
5709    ========================================================================== */
5710 
5711 #define Q6_P_vdmpybsu_PP_sat __builtin_HEXAGON_M5_vdmpybsu
5712 
5713 /* ==========================================================================
5714    Assembly Syntax:       Rxx32+=vmpybsu(Rs32,Rt32)
5715    C Intrinsic Prototype: Word64 Q6_P_vmpybsuacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
5716    Instruction Type:      M
5717    Execution Slots:       SLOT23
5718    ========================================================================== */
5719 
5720 #define Q6_P_vmpybsuacc_RR __builtin_HEXAGON_M5_vmacbsu
5721 
5722 /* ==========================================================================
5723    Assembly Syntax:       Rxx32+=vmpybu(Rs32,Rt32)
5724    C Intrinsic Prototype: Word64 Q6_P_vmpybuacc_RR(Word64 Rxx, Word32 Rs, Word32 Rt)
5725    Instruction Type:      M
5726    Execution Slots:       SLOT23
5727    ========================================================================== */
5728 
5729 #define Q6_P_vmpybuacc_RR __builtin_HEXAGON_M5_vmacbuu
5730 
5731 /* ==========================================================================
5732    Assembly Syntax:       Rdd32=vmpybsu(Rs32,Rt32)
5733    C Intrinsic Prototype: Word64 Q6_P_vmpybsu_RR(Word32 Rs, Word32 Rt)
5734    Instruction Type:      M
5735    Execution Slots:       SLOT23
5736    ========================================================================== */
5737 
5738 #define Q6_P_vmpybsu_RR __builtin_HEXAGON_M5_vmpybsu
5739 
5740 /* ==========================================================================
5741    Assembly Syntax:       Rdd32=vmpybu(Rs32,Rt32)
5742    C Intrinsic Prototype: Word64 Q6_P_vmpybu_RR(Word32 Rs, Word32 Rt)
5743    Instruction Type:      M
5744    Execution Slots:       SLOT23
5745    ========================================================================== */
5746 
5747 #define Q6_P_vmpybu_RR __builtin_HEXAGON_M5_vmpybuu
5748 
5749 /* ==========================================================================
5750    Assembly Syntax:       Rxx32+=vrmpybsu(Rss32,Rtt32)
5751    C Intrinsic Prototype: Word64 Q6_P_vrmpybsuacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5752    Instruction Type:      M
5753    Execution Slots:       SLOT23
5754    ========================================================================== */
5755 
5756 #define Q6_P_vrmpybsuacc_PP __builtin_HEXAGON_M5_vrmacbsu
5757 
5758 /* ==========================================================================
5759    Assembly Syntax:       Rxx32+=vrmpybu(Rss32,Rtt32)
5760    C Intrinsic Prototype: Word64 Q6_P_vrmpybuacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
5761    Instruction Type:      M
5762    Execution Slots:       SLOT23
5763    ========================================================================== */
5764 
5765 #define Q6_P_vrmpybuacc_PP __builtin_HEXAGON_M5_vrmacbuu
5766 
5767 /* ==========================================================================
5768    Assembly Syntax:       Rdd32=vrmpybsu(Rss32,Rtt32)
5769    C Intrinsic Prototype: Word64 Q6_P_vrmpybsu_PP(Word64 Rss, Word64 Rtt)
5770    Instruction Type:      M
5771    Execution Slots:       SLOT23
5772    ========================================================================== */
5773 
5774 #define Q6_P_vrmpybsu_PP __builtin_HEXAGON_M5_vrmpybsu
5775 
5776 /* ==========================================================================
5777    Assembly Syntax:       Rdd32=vrmpybu(Rss32,Rtt32)
5778    C Intrinsic Prototype: Word64 Q6_P_vrmpybu_PP(Word64 Rss, Word64 Rtt)
5779    Instruction Type:      M
5780    Execution Slots:       SLOT23
5781    ========================================================================== */
5782 
5783 #define Q6_P_vrmpybu_PP __builtin_HEXAGON_M5_vrmpybuu
5784 
5785 /* ==========================================================================
5786    Assembly Syntax:       Rd32=addasl(Rt32,Rs32,#u3)
5787    C Intrinsic Prototype: Word32 Q6_R_addasl_RRI(Word32 Rt, Word32 Rs, Word32 Iu3)
5788    Instruction Type:      S_3op
5789    Execution Slots:       SLOT23
5790    ========================================================================== */
5791 
5792 #define Q6_R_addasl_RRI __builtin_HEXAGON_S2_addasl_rrri
5793 
5794 /* ==========================================================================
5795    Assembly Syntax:       Rdd32=asl(Rss32,#u6)
5796    C Intrinsic Prototype: Word64 Q6_P_asl_PI(Word64 Rss, Word32 Iu6)
5797    Instruction Type:      S_2op
5798    Execution Slots:       SLOT23
5799    ========================================================================== */
5800 
5801 #define Q6_P_asl_PI __builtin_HEXAGON_S2_asl_i_p
5802 
5803 /* ==========================================================================
5804    Assembly Syntax:       Rxx32+=asl(Rss32,#u6)
5805    C Intrinsic Prototype: Word64 Q6_P_aslacc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
5806    Instruction Type:      S_2op
5807    Execution Slots:       SLOT23
5808    ========================================================================== */
5809 
5810 #define Q6_P_aslacc_PI __builtin_HEXAGON_S2_asl_i_p_acc
5811 
5812 /* ==========================================================================
5813    Assembly Syntax:       Rxx32&=asl(Rss32,#u6)
5814    C Intrinsic Prototype: Word64 Q6_P_asland_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
5815    Instruction Type:      S_2op
5816    Execution Slots:       SLOT23
5817    ========================================================================== */
5818 
5819 #define Q6_P_asland_PI __builtin_HEXAGON_S2_asl_i_p_and
5820 
5821 /* ==========================================================================
5822    Assembly Syntax:       Rxx32-=asl(Rss32,#u6)
5823    C Intrinsic Prototype: Word64 Q6_P_aslnac_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
5824    Instruction Type:      S_2op
5825    Execution Slots:       SLOT23
5826    ========================================================================== */
5827 
5828 #define Q6_P_aslnac_PI __builtin_HEXAGON_S2_asl_i_p_nac
5829 
5830 /* ==========================================================================
5831    Assembly Syntax:       Rxx32|=asl(Rss32,#u6)
5832    C Intrinsic Prototype: Word64 Q6_P_aslor_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
5833    Instruction Type:      S_2op
5834    Execution Slots:       SLOT23
5835    ========================================================================== */
5836 
5837 #define Q6_P_aslor_PI __builtin_HEXAGON_S2_asl_i_p_or
5838 
5839 /* ==========================================================================
5840    Assembly Syntax:       Rxx32^=asl(Rss32,#u6)
5841    C Intrinsic Prototype: Word64 Q6_P_aslxacc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
5842    Instruction Type:      S_2op
5843    Execution Slots:       SLOT23
5844    ========================================================================== */
5845 
5846 #define Q6_P_aslxacc_PI __builtin_HEXAGON_S2_asl_i_p_xacc
5847 
5848 /* ==========================================================================
5849    Assembly Syntax:       Rd32=asl(Rs32,#u5)
5850    C Intrinsic Prototype: Word32 Q6_R_asl_RI(Word32 Rs, Word32 Iu5)
5851    Instruction Type:      S_2op
5852    Execution Slots:       SLOT23
5853    ========================================================================== */
5854 
5855 #define Q6_R_asl_RI __builtin_HEXAGON_S2_asl_i_r
5856 
5857 /* ==========================================================================
5858    Assembly Syntax:       Rx32+=asl(Rs32,#u5)
5859    C Intrinsic Prototype: Word32 Q6_R_aslacc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
5860    Instruction Type:      S_2op
5861    Execution Slots:       SLOT23
5862    ========================================================================== */
5863 
5864 #define Q6_R_aslacc_RI __builtin_HEXAGON_S2_asl_i_r_acc
5865 
5866 /* ==========================================================================
5867    Assembly Syntax:       Rx32&=asl(Rs32,#u5)
5868    C Intrinsic Prototype: Word32 Q6_R_asland_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
5869    Instruction Type:      S_2op
5870    Execution Slots:       SLOT23
5871    ========================================================================== */
5872 
5873 #define Q6_R_asland_RI __builtin_HEXAGON_S2_asl_i_r_and
5874 
5875 /* ==========================================================================
5876    Assembly Syntax:       Rx32-=asl(Rs32,#u5)
5877    C Intrinsic Prototype: Word32 Q6_R_aslnac_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
5878    Instruction Type:      S_2op
5879    Execution Slots:       SLOT23
5880    ========================================================================== */
5881 
5882 #define Q6_R_aslnac_RI __builtin_HEXAGON_S2_asl_i_r_nac
5883 
5884 /* ==========================================================================
5885    Assembly Syntax:       Rx32|=asl(Rs32,#u5)
5886    C Intrinsic Prototype: Word32 Q6_R_aslor_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
5887    Instruction Type:      S_2op
5888    Execution Slots:       SLOT23
5889    ========================================================================== */
5890 
5891 #define Q6_R_aslor_RI __builtin_HEXAGON_S2_asl_i_r_or
5892 
5893 /* ==========================================================================
5894    Assembly Syntax:       Rd32=asl(Rs32,#u5):sat
5895    C Intrinsic Prototype: Word32 Q6_R_asl_RI_sat(Word32 Rs, Word32 Iu5)
5896    Instruction Type:      S_2op
5897    Execution Slots:       SLOT23
5898    ========================================================================== */
5899 
5900 #define Q6_R_asl_RI_sat __builtin_HEXAGON_S2_asl_i_r_sat
5901 
5902 /* ==========================================================================
5903    Assembly Syntax:       Rx32^=asl(Rs32,#u5)
5904    C Intrinsic Prototype: Word32 Q6_R_aslxacc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
5905    Instruction Type:      S_2op
5906    Execution Slots:       SLOT23
5907    ========================================================================== */
5908 
5909 #define Q6_R_aslxacc_RI __builtin_HEXAGON_S2_asl_i_r_xacc
5910 
5911 /* ==========================================================================
5912    Assembly Syntax:       Rdd32=vaslh(Rss32,#u4)
5913    C Intrinsic Prototype: Word64 Q6_P_vaslh_PI(Word64 Rss, Word32 Iu4)
5914    Instruction Type:      S_2op
5915    Execution Slots:       SLOT23
5916    ========================================================================== */
5917 
5918 #define Q6_P_vaslh_PI __builtin_HEXAGON_S2_asl_i_vh
5919 
5920 /* ==========================================================================
5921    Assembly Syntax:       Rdd32=vaslw(Rss32,#u5)
5922    C Intrinsic Prototype: Word64 Q6_P_vaslw_PI(Word64 Rss, Word32 Iu5)
5923    Instruction Type:      S_2op
5924    Execution Slots:       SLOT23
5925    ========================================================================== */
5926 
5927 #define Q6_P_vaslw_PI __builtin_HEXAGON_S2_asl_i_vw
5928 
5929 /* ==========================================================================
5930    Assembly Syntax:       Rdd32=asl(Rss32,Rt32)
5931    C Intrinsic Prototype: Word64 Q6_P_asl_PR(Word64 Rss, Word32 Rt)
5932    Instruction Type:      S_3op
5933    Execution Slots:       SLOT23
5934    ========================================================================== */
5935 
5936 #define Q6_P_asl_PR __builtin_HEXAGON_S2_asl_r_p
5937 
5938 /* ==========================================================================
5939    Assembly Syntax:       Rxx32+=asl(Rss32,Rt32)
5940    C Intrinsic Prototype: Word64 Q6_P_aslacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
5941    Instruction Type:      S_3op
5942    Execution Slots:       SLOT23
5943    ========================================================================== */
5944 
5945 #define Q6_P_aslacc_PR __builtin_HEXAGON_S2_asl_r_p_acc
5946 
5947 /* ==========================================================================
5948    Assembly Syntax:       Rxx32&=asl(Rss32,Rt32)
5949    C Intrinsic Prototype: Word64 Q6_P_asland_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
5950    Instruction Type:      S_3op
5951    Execution Slots:       SLOT23
5952    ========================================================================== */
5953 
5954 #define Q6_P_asland_PR __builtin_HEXAGON_S2_asl_r_p_and
5955 
5956 /* ==========================================================================
5957    Assembly Syntax:       Rxx32-=asl(Rss32,Rt32)
5958    C Intrinsic Prototype: Word64 Q6_P_aslnac_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
5959    Instruction Type:      S_3op
5960    Execution Slots:       SLOT23
5961    ========================================================================== */
5962 
5963 #define Q6_P_aslnac_PR __builtin_HEXAGON_S2_asl_r_p_nac
5964 
5965 /* ==========================================================================
5966    Assembly Syntax:       Rxx32|=asl(Rss32,Rt32)
5967    C Intrinsic Prototype: Word64 Q6_P_aslor_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
5968    Instruction Type:      S_3op
5969    Execution Slots:       SLOT23
5970    ========================================================================== */
5971 
5972 #define Q6_P_aslor_PR __builtin_HEXAGON_S2_asl_r_p_or
5973 
5974 /* ==========================================================================
5975    Assembly Syntax:       Rxx32^=asl(Rss32,Rt32)
5976    C Intrinsic Prototype: Word64 Q6_P_aslxacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
5977    Instruction Type:      S_3op
5978    Execution Slots:       SLOT23
5979    ========================================================================== */
5980 
5981 #define Q6_P_aslxacc_PR __builtin_HEXAGON_S2_asl_r_p_xor
5982 
5983 /* ==========================================================================
5984    Assembly Syntax:       Rd32=asl(Rs32,Rt32)
5985    C Intrinsic Prototype: Word32 Q6_R_asl_RR(Word32 Rs, Word32 Rt)
5986    Instruction Type:      S_3op
5987    Execution Slots:       SLOT23
5988    ========================================================================== */
5989 
5990 #define Q6_R_asl_RR __builtin_HEXAGON_S2_asl_r_r
5991 
5992 /* ==========================================================================
5993    Assembly Syntax:       Rx32+=asl(Rs32,Rt32)
5994    C Intrinsic Prototype: Word32 Q6_R_aslacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
5995    Instruction Type:      S_3op
5996    Execution Slots:       SLOT23
5997    ========================================================================== */
5998 
5999 #define Q6_R_aslacc_RR __builtin_HEXAGON_S2_asl_r_r_acc
6000 
6001 /* ==========================================================================
6002    Assembly Syntax:       Rx32&=asl(Rs32,Rt32)
6003    C Intrinsic Prototype: Word32 Q6_R_asland_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6004    Instruction Type:      S_3op
6005    Execution Slots:       SLOT23
6006    ========================================================================== */
6007 
6008 #define Q6_R_asland_RR __builtin_HEXAGON_S2_asl_r_r_and
6009 
6010 /* ==========================================================================
6011    Assembly Syntax:       Rx32-=asl(Rs32,Rt32)
6012    C Intrinsic Prototype: Word32 Q6_R_aslnac_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6013    Instruction Type:      S_3op
6014    Execution Slots:       SLOT23
6015    ========================================================================== */
6016 
6017 #define Q6_R_aslnac_RR __builtin_HEXAGON_S2_asl_r_r_nac
6018 
6019 /* ==========================================================================
6020    Assembly Syntax:       Rx32|=asl(Rs32,Rt32)
6021    C Intrinsic Prototype: Word32 Q6_R_aslor_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6022    Instruction Type:      S_3op
6023    Execution Slots:       SLOT23
6024    ========================================================================== */
6025 
6026 #define Q6_R_aslor_RR __builtin_HEXAGON_S2_asl_r_r_or
6027 
6028 /* ==========================================================================
6029    Assembly Syntax:       Rd32=asl(Rs32,Rt32):sat
6030    C Intrinsic Prototype: Word32 Q6_R_asl_RR_sat(Word32 Rs, Word32 Rt)
6031    Instruction Type:      S_3op
6032    Execution Slots:       SLOT23
6033    ========================================================================== */
6034 
6035 #define Q6_R_asl_RR_sat __builtin_HEXAGON_S2_asl_r_r_sat
6036 
6037 /* ==========================================================================
6038    Assembly Syntax:       Rdd32=vaslh(Rss32,Rt32)
6039    C Intrinsic Prototype: Word64 Q6_P_vaslh_PR(Word64 Rss, Word32 Rt)
6040    Instruction Type:      S_3op
6041    Execution Slots:       SLOT23
6042    ========================================================================== */
6043 
6044 #define Q6_P_vaslh_PR __builtin_HEXAGON_S2_asl_r_vh
6045 
6046 /* ==========================================================================
6047    Assembly Syntax:       Rdd32=vaslw(Rss32,Rt32)
6048    C Intrinsic Prototype: Word64 Q6_P_vaslw_PR(Word64 Rss, Word32 Rt)
6049    Instruction Type:      S_3op
6050    Execution Slots:       SLOT23
6051    ========================================================================== */
6052 
6053 #define Q6_P_vaslw_PR __builtin_HEXAGON_S2_asl_r_vw
6054 
6055 /* ==========================================================================
6056    Assembly Syntax:       Rdd32=asr(Rss32,#u6)
6057    C Intrinsic Prototype: Word64 Q6_P_asr_PI(Word64 Rss, Word32 Iu6)
6058    Instruction Type:      S_2op
6059    Execution Slots:       SLOT23
6060    ========================================================================== */
6061 
6062 #define Q6_P_asr_PI __builtin_HEXAGON_S2_asr_i_p
6063 
6064 /* ==========================================================================
6065    Assembly Syntax:       Rxx32+=asr(Rss32,#u6)
6066    C Intrinsic Prototype: Word64 Q6_P_asracc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6067    Instruction Type:      S_2op
6068    Execution Slots:       SLOT23
6069    ========================================================================== */
6070 
6071 #define Q6_P_asracc_PI __builtin_HEXAGON_S2_asr_i_p_acc
6072 
6073 /* ==========================================================================
6074    Assembly Syntax:       Rxx32&=asr(Rss32,#u6)
6075    C Intrinsic Prototype: Word64 Q6_P_asrand_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6076    Instruction Type:      S_2op
6077    Execution Slots:       SLOT23
6078    ========================================================================== */
6079 
6080 #define Q6_P_asrand_PI __builtin_HEXAGON_S2_asr_i_p_and
6081 
6082 /* ==========================================================================
6083    Assembly Syntax:       Rxx32-=asr(Rss32,#u6)
6084    C Intrinsic Prototype: Word64 Q6_P_asrnac_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6085    Instruction Type:      S_2op
6086    Execution Slots:       SLOT23
6087    ========================================================================== */
6088 
6089 #define Q6_P_asrnac_PI __builtin_HEXAGON_S2_asr_i_p_nac
6090 
6091 /* ==========================================================================
6092    Assembly Syntax:       Rxx32|=asr(Rss32,#u6)
6093    C Intrinsic Prototype: Word64 Q6_P_asror_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6094    Instruction Type:      S_2op
6095    Execution Slots:       SLOT23
6096    ========================================================================== */
6097 
6098 #define Q6_P_asror_PI __builtin_HEXAGON_S2_asr_i_p_or
6099 
6100 /* ==========================================================================
6101    Assembly Syntax:       Rdd32=asr(Rss32,#u6):rnd
6102    C Intrinsic Prototype: Word64 Q6_P_asr_PI_rnd(Word64 Rss, Word32 Iu6)
6103    Instruction Type:      S_2op
6104    Execution Slots:       SLOT23
6105    ========================================================================== */
6106 
6107 #define Q6_P_asr_PI_rnd __builtin_HEXAGON_S2_asr_i_p_rnd
6108 
6109 /* ==========================================================================
6110    Assembly Syntax:       Rdd32=asrrnd(Rss32,#u6)
6111    C Intrinsic Prototype: Word64 Q6_P_asrrnd_PI(Word64 Rss, Word32 Iu6)
6112    Instruction Type:      S_2op
6113    Execution Slots:       SLOT0123
6114    ========================================================================== */
6115 
6116 #define Q6_P_asrrnd_PI __builtin_HEXAGON_S2_asr_i_p_rnd_goodsyntax
6117 
6118 /* ==========================================================================
6119    Assembly Syntax:       Rd32=asr(Rs32,#u5)
6120    C Intrinsic Prototype: Word32 Q6_R_asr_RI(Word32 Rs, Word32 Iu5)
6121    Instruction Type:      S_2op
6122    Execution Slots:       SLOT23
6123    ========================================================================== */
6124 
6125 #define Q6_R_asr_RI __builtin_HEXAGON_S2_asr_i_r
6126 
6127 /* ==========================================================================
6128    Assembly Syntax:       Rx32+=asr(Rs32,#u5)
6129    C Intrinsic Prototype: Word32 Q6_R_asracc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6130    Instruction Type:      S_2op
6131    Execution Slots:       SLOT23
6132    ========================================================================== */
6133 
6134 #define Q6_R_asracc_RI __builtin_HEXAGON_S2_asr_i_r_acc
6135 
6136 /* ==========================================================================
6137    Assembly Syntax:       Rx32&=asr(Rs32,#u5)
6138    C Intrinsic Prototype: Word32 Q6_R_asrand_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6139    Instruction Type:      S_2op
6140    Execution Slots:       SLOT23
6141    ========================================================================== */
6142 
6143 #define Q6_R_asrand_RI __builtin_HEXAGON_S2_asr_i_r_and
6144 
6145 /* ==========================================================================
6146    Assembly Syntax:       Rx32-=asr(Rs32,#u5)
6147    C Intrinsic Prototype: Word32 Q6_R_asrnac_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6148    Instruction Type:      S_2op
6149    Execution Slots:       SLOT23
6150    ========================================================================== */
6151 
6152 #define Q6_R_asrnac_RI __builtin_HEXAGON_S2_asr_i_r_nac
6153 
6154 /* ==========================================================================
6155    Assembly Syntax:       Rx32|=asr(Rs32,#u5)
6156    C Intrinsic Prototype: Word32 Q6_R_asror_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6157    Instruction Type:      S_2op
6158    Execution Slots:       SLOT23
6159    ========================================================================== */
6160 
6161 #define Q6_R_asror_RI __builtin_HEXAGON_S2_asr_i_r_or
6162 
6163 /* ==========================================================================
6164    Assembly Syntax:       Rd32=asr(Rs32,#u5):rnd
6165    C Intrinsic Prototype: Word32 Q6_R_asr_RI_rnd(Word32 Rs, Word32 Iu5)
6166    Instruction Type:      S_2op
6167    Execution Slots:       SLOT23
6168    ========================================================================== */
6169 
6170 #define Q6_R_asr_RI_rnd __builtin_HEXAGON_S2_asr_i_r_rnd
6171 
6172 /* ==========================================================================
6173    Assembly Syntax:       Rd32=asrrnd(Rs32,#u5)
6174    C Intrinsic Prototype: Word32 Q6_R_asrrnd_RI(Word32 Rs, Word32 Iu5)
6175    Instruction Type:      S_2op
6176    Execution Slots:       SLOT0123
6177    ========================================================================== */
6178 
6179 #define Q6_R_asrrnd_RI __builtin_HEXAGON_S2_asr_i_r_rnd_goodsyntax
6180 
6181 /* ==========================================================================
6182    Assembly Syntax:       Rd32=vasrw(Rss32,#u5)
6183    C Intrinsic Prototype: Word32 Q6_R_vasrw_PI(Word64 Rss, Word32 Iu5)
6184    Instruction Type:      S_2op
6185    Execution Slots:       SLOT23
6186    ========================================================================== */
6187 
6188 #define Q6_R_vasrw_PI __builtin_HEXAGON_S2_asr_i_svw_trun
6189 
6190 /* ==========================================================================
6191    Assembly Syntax:       Rdd32=vasrh(Rss32,#u4)
6192    C Intrinsic Prototype: Word64 Q6_P_vasrh_PI(Word64 Rss, Word32 Iu4)
6193    Instruction Type:      S_2op
6194    Execution Slots:       SLOT23
6195    ========================================================================== */
6196 
6197 #define Q6_P_vasrh_PI __builtin_HEXAGON_S2_asr_i_vh
6198 
6199 /* ==========================================================================
6200    Assembly Syntax:       Rdd32=vasrw(Rss32,#u5)
6201    C Intrinsic Prototype: Word64 Q6_P_vasrw_PI(Word64 Rss, Word32 Iu5)
6202    Instruction Type:      S_2op
6203    Execution Slots:       SLOT23
6204    ========================================================================== */
6205 
6206 #define Q6_P_vasrw_PI __builtin_HEXAGON_S2_asr_i_vw
6207 
6208 /* ==========================================================================
6209    Assembly Syntax:       Rdd32=asr(Rss32,Rt32)
6210    C Intrinsic Prototype: Word64 Q6_P_asr_PR(Word64 Rss, Word32 Rt)
6211    Instruction Type:      S_3op
6212    Execution Slots:       SLOT23
6213    ========================================================================== */
6214 
6215 #define Q6_P_asr_PR __builtin_HEXAGON_S2_asr_r_p
6216 
6217 /* ==========================================================================
6218    Assembly Syntax:       Rxx32+=asr(Rss32,Rt32)
6219    C Intrinsic Prototype: Word64 Q6_P_asracc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6220    Instruction Type:      S_3op
6221    Execution Slots:       SLOT23
6222    ========================================================================== */
6223 
6224 #define Q6_P_asracc_PR __builtin_HEXAGON_S2_asr_r_p_acc
6225 
6226 /* ==========================================================================
6227    Assembly Syntax:       Rxx32&=asr(Rss32,Rt32)
6228    C Intrinsic Prototype: Word64 Q6_P_asrand_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6229    Instruction Type:      S_3op
6230    Execution Slots:       SLOT23
6231    ========================================================================== */
6232 
6233 #define Q6_P_asrand_PR __builtin_HEXAGON_S2_asr_r_p_and
6234 
6235 /* ==========================================================================
6236    Assembly Syntax:       Rxx32-=asr(Rss32,Rt32)
6237    C Intrinsic Prototype: Word64 Q6_P_asrnac_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6238    Instruction Type:      S_3op
6239    Execution Slots:       SLOT23
6240    ========================================================================== */
6241 
6242 #define Q6_P_asrnac_PR __builtin_HEXAGON_S2_asr_r_p_nac
6243 
6244 /* ==========================================================================
6245    Assembly Syntax:       Rxx32|=asr(Rss32,Rt32)
6246    C Intrinsic Prototype: Word64 Q6_P_asror_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6247    Instruction Type:      S_3op
6248    Execution Slots:       SLOT23
6249    ========================================================================== */
6250 
6251 #define Q6_P_asror_PR __builtin_HEXAGON_S2_asr_r_p_or
6252 
6253 /* ==========================================================================
6254    Assembly Syntax:       Rxx32^=asr(Rss32,Rt32)
6255    C Intrinsic Prototype: Word64 Q6_P_asrxacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6256    Instruction Type:      S_3op
6257    Execution Slots:       SLOT23
6258    ========================================================================== */
6259 
6260 #define Q6_P_asrxacc_PR __builtin_HEXAGON_S2_asr_r_p_xor
6261 
6262 /* ==========================================================================
6263    Assembly Syntax:       Rd32=asr(Rs32,Rt32)
6264    C Intrinsic Prototype: Word32 Q6_R_asr_RR(Word32 Rs, Word32 Rt)
6265    Instruction Type:      S_3op
6266    Execution Slots:       SLOT23
6267    ========================================================================== */
6268 
6269 #define Q6_R_asr_RR __builtin_HEXAGON_S2_asr_r_r
6270 
6271 /* ==========================================================================
6272    Assembly Syntax:       Rx32+=asr(Rs32,Rt32)
6273    C Intrinsic Prototype: Word32 Q6_R_asracc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6274    Instruction Type:      S_3op
6275    Execution Slots:       SLOT23
6276    ========================================================================== */
6277 
6278 #define Q6_R_asracc_RR __builtin_HEXAGON_S2_asr_r_r_acc
6279 
6280 /* ==========================================================================
6281    Assembly Syntax:       Rx32&=asr(Rs32,Rt32)
6282    C Intrinsic Prototype: Word32 Q6_R_asrand_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6283    Instruction Type:      S_3op
6284    Execution Slots:       SLOT23
6285    ========================================================================== */
6286 
6287 #define Q6_R_asrand_RR __builtin_HEXAGON_S2_asr_r_r_and
6288 
6289 /* ==========================================================================
6290    Assembly Syntax:       Rx32-=asr(Rs32,Rt32)
6291    C Intrinsic Prototype: Word32 Q6_R_asrnac_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6292    Instruction Type:      S_3op
6293    Execution Slots:       SLOT23
6294    ========================================================================== */
6295 
6296 #define Q6_R_asrnac_RR __builtin_HEXAGON_S2_asr_r_r_nac
6297 
6298 /* ==========================================================================
6299    Assembly Syntax:       Rx32|=asr(Rs32,Rt32)
6300    C Intrinsic Prototype: Word32 Q6_R_asror_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6301    Instruction Type:      S_3op
6302    Execution Slots:       SLOT23
6303    ========================================================================== */
6304 
6305 #define Q6_R_asror_RR __builtin_HEXAGON_S2_asr_r_r_or
6306 
6307 /* ==========================================================================
6308    Assembly Syntax:       Rd32=asr(Rs32,Rt32):sat
6309    C Intrinsic Prototype: Word32 Q6_R_asr_RR_sat(Word32 Rs, Word32 Rt)
6310    Instruction Type:      S_3op
6311    Execution Slots:       SLOT23
6312    ========================================================================== */
6313 
6314 #define Q6_R_asr_RR_sat __builtin_HEXAGON_S2_asr_r_r_sat
6315 
6316 /* ==========================================================================
6317    Assembly Syntax:       Rd32=vasrw(Rss32,Rt32)
6318    C Intrinsic Prototype: Word32 Q6_R_vasrw_PR(Word64 Rss, Word32 Rt)
6319    Instruction Type:      S_3op
6320    Execution Slots:       SLOT23
6321    ========================================================================== */
6322 
6323 #define Q6_R_vasrw_PR __builtin_HEXAGON_S2_asr_r_svw_trun
6324 
6325 /* ==========================================================================
6326    Assembly Syntax:       Rdd32=vasrh(Rss32,Rt32)
6327    C Intrinsic Prototype: Word64 Q6_P_vasrh_PR(Word64 Rss, Word32 Rt)
6328    Instruction Type:      S_3op
6329    Execution Slots:       SLOT23
6330    ========================================================================== */
6331 
6332 #define Q6_P_vasrh_PR __builtin_HEXAGON_S2_asr_r_vh
6333 
6334 /* ==========================================================================
6335    Assembly Syntax:       Rdd32=vasrw(Rss32,Rt32)
6336    C Intrinsic Prototype: Word64 Q6_P_vasrw_PR(Word64 Rss, Word32 Rt)
6337    Instruction Type:      S_3op
6338    Execution Slots:       SLOT23
6339    ========================================================================== */
6340 
6341 #define Q6_P_vasrw_PR __builtin_HEXAGON_S2_asr_r_vw
6342 
6343 /* ==========================================================================
6344    Assembly Syntax:       Rd32=brev(Rs32)
6345    C Intrinsic Prototype: Word32 Q6_R_brev_R(Word32 Rs)
6346    Instruction Type:      S_2op
6347    Execution Slots:       SLOT23
6348    ========================================================================== */
6349 
6350 #define Q6_R_brev_R __builtin_HEXAGON_S2_brev
6351 
6352 /* ==========================================================================
6353    Assembly Syntax:       Rdd32=brev(Rss32)
6354    C Intrinsic Prototype: Word64 Q6_P_brev_P(Word64 Rss)
6355    Instruction Type:      S_2op
6356    Execution Slots:       SLOT23
6357    ========================================================================== */
6358 
6359 #define Q6_P_brev_P __builtin_HEXAGON_S2_brevp
6360 
6361 /* ==========================================================================
6362    Assembly Syntax:       Rd32=cl0(Rs32)
6363    C Intrinsic Prototype: Word32 Q6_R_cl0_R(Word32 Rs)
6364    Instruction Type:      S_2op
6365    Execution Slots:       SLOT23
6366    ========================================================================== */
6367 
6368 #define Q6_R_cl0_R __builtin_HEXAGON_S2_cl0
6369 
6370 /* ==========================================================================
6371    Assembly Syntax:       Rd32=cl0(Rss32)
6372    C Intrinsic Prototype: Word32 Q6_R_cl0_P(Word64 Rss)
6373    Instruction Type:      S_2op
6374    Execution Slots:       SLOT23
6375    ========================================================================== */
6376 
6377 #define Q6_R_cl0_P __builtin_HEXAGON_S2_cl0p
6378 
6379 /* ==========================================================================
6380    Assembly Syntax:       Rd32=cl1(Rs32)
6381    C Intrinsic Prototype: Word32 Q6_R_cl1_R(Word32 Rs)
6382    Instruction Type:      S_2op
6383    Execution Slots:       SLOT23
6384    ========================================================================== */
6385 
6386 #define Q6_R_cl1_R __builtin_HEXAGON_S2_cl1
6387 
6388 /* ==========================================================================
6389    Assembly Syntax:       Rd32=cl1(Rss32)
6390    C Intrinsic Prototype: Word32 Q6_R_cl1_P(Word64 Rss)
6391    Instruction Type:      S_2op
6392    Execution Slots:       SLOT23
6393    ========================================================================== */
6394 
6395 #define Q6_R_cl1_P __builtin_HEXAGON_S2_cl1p
6396 
6397 /* ==========================================================================
6398    Assembly Syntax:       Rd32=clb(Rs32)
6399    C Intrinsic Prototype: Word32 Q6_R_clb_R(Word32 Rs)
6400    Instruction Type:      S_2op
6401    Execution Slots:       SLOT23
6402    ========================================================================== */
6403 
6404 #define Q6_R_clb_R __builtin_HEXAGON_S2_clb
6405 
6406 /* ==========================================================================
6407    Assembly Syntax:       Rd32=normamt(Rs32)
6408    C Intrinsic Prototype: Word32 Q6_R_normamt_R(Word32 Rs)
6409    Instruction Type:      S_2op
6410    Execution Slots:       SLOT23
6411    ========================================================================== */
6412 
6413 #define Q6_R_normamt_R __builtin_HEXAGON_S2_clbnorm
6414 
6415 /* ==========================================================================
6416    Assembly Syntax:       Rd32=clb(Rss32)
6417    C Intrinsic Prototype: Word32 Q6_R_clb_P(Word64 Rss)
6418    Instruction Type:      S_2op
6419    Execution Slots:       SLOT23
6420    ========================================================================== */
6421 
6422 #define Q6_R_clb_P __builtin_HEXAGON_S2_clbp
6423 
6424 /* ==========================================================================
6425    Assembly Syntax:       Rd32=clrbit(Rs32,#u5)
6426    C Intrinsic Prototype: Word32 Q6_R_clrbit_RI(Word32 Rs, Word32 Iu5)
6427    Instruction Type:      S_2op
6428    Execution Slots:       SLOT23
6429    ========================================================================== */
6430 
6431 #define Q6_R_clrbit_RI __builtin_HEXAGON_S2_clrbit_i
6432 
6433 /* ==========================================================================
6434    Assembly Syntax:       Rd32=clrbit(Rs32,Rt32)
6435    C Intrinsic Prototype: Word32 Q6_R_clrbit_RR(Word32 Rs, Word32 Rt)
6436    Instruction Type:      S_3op
6437    Execution Slots:       SLOT23
6438    ========================================================================== */
6439 
6440 #define Q6_R_clrbit_RR __builtin_HEXAGON_S2_clrbit_r
6441 
6442 /* ==========================================================================
6443    Assembly Syntax:       Rd32=ct0(Rs32)
6444    C Intrinsic Prototype: Word32 Q6_R_ct0_R(Word32 Rs)
6445    Instruction Type:      S_2op
6446    Execution Slots:       SLOT23
6447    ========================================================================== */
6448 
6449 #define Q6_R_ct0_R __builtin_HEXAGON_S2_ct0
6450 
6451 /* ==========================================================================
6452    Assembly Syntax:       Rd32=ct0(Rss32)
6453    C Intrinsic Prototype: Word32 Q6_R_ct0_P(Word64 Rss)
6454    Instruction Type:      S_2op
6455    Execution Slots:       SLOT23
6456    ========================================================================== */
6457 
6458 #define Q6_R_ct0_P __builtin_HEXAGON_S2_ct0p
6459 
6460 /* ==========================================================================
6461    Assembly Syntax:       Rd32=ct1(Rs32)
6462    C Intrinsic Prototype: Word32 Q6_R_ct1_R(Word32 Rs)
6463    Instruction Type:      S_2op
6464    Execution Slots:       SLOT23
6465    ========================================================================== */
6466 
6467 #define Q6_R_ct1_R __builtin_HEXAGON_S2_ct1
6468 
6469 /* ==========================================================================
6470    Assembly Syntax:       Rd32=ct1(Rss32)
6471    C Intrinsic Prototype: Word32 Q6_R_ct1_P(Word64 Rss)
6472    Instruction Type:      S_2op
6473    Execution Slots:       SLOT23
6474    ========================================================================== */
6475 
6476 #define Q6_R_ct1_P __builtin_HEXAGON_S2_ct1p
6477 
6478 /* ==========================================================================
6479    Assembly Syntax:       Rdd32=deinterleave(Rss32)
6480    C Intrinsic Prototype: Word64 Q6_P_deinterleave_P(Word64 Rss)
6481    Instruction Type:      S_2op
6482    Execution Slots:       SLOT23
6483    ========================================================================== */
6484 
6485 #define Q6_P_deinterleave_P __builtin_HEXAGON_S2_deinterleave
6486 
6487 /* ==========================================================================
6488    Assembly Syntax:       Rd32=extractu(Rs32,#u5,#U5)
6489    C Intrinsic Prototype: Word32 Q6_R_extractu_RII(Word32 Rs, Word32 Iu5, Word32 IU5)
6490    Instruction Type:      S_2op
6491    Execution Slots:       SLOT23
6492    ========================================================================== */
6493 
6494 #define Q6_R_extractu_RII __builtin_HEXAGON_S2_extractu
6495 
6496 /* ==========================================================================
6497    Assembly Syntax:       Rd32=extractu(Rs32,Rtt32)
6498    C Intrinsic Prototype: Word32 Q6_R_extractu_RP(Word32 Rs, Word64 Rtt)
6499    Instruction Type:      S_3op
6500    Execution Slots:       SLOT23
6501    ========================================================================== */
6502 
6503 #define Q6_R_extractu_RP __builtin_HEXAGON_S2_extractu_rp
6504 
6505 /* ==========================================================================
6506    Assembly Syntax:       Rdd32=extractu(Rss32,#u6,#U6)
6507    C Intrinsic Prototype: Word64 Q6_P_extractu_PII(Word64 Rss, Word32 Iu6, Word32 IU6)
6508    Instruction Type:      S_2op
6509    Execution Slots:       SLOT23
6510    ========================================================================== */
6511 
6512 #define Q6_P_extractu_PII __builtin_HEXAGON_S2_extractup
6513 
6514 /* ==========================================================================
6515    Assembly Syntax:       Rdd32=extractu(Rss32,Rtt32)
6516    C Intrinsic Prototype: Word64 Q6_P_extractu_PP(Word64 Rss, Word64 Rtt)
6517    Instruction Type:      S_3op
6518    Execution Slots:       SLOT23
6519    ========================================================================== */
6520 
6521 #define Q6_P_extractu_PP __builtin_HEXAGON_S2_extractup_rp
6522 
6523 /* ==========================================================================
6524    Assembly Syntax:       Rx32=insert(Rs32,#u5,#U5)
6525    C Intrinsic Prototype: Word32 Q6_R_insert_RII(Word32 Rx, Word32 Rs, Word32 Iu5, Word32 IU5)
6526    Instruction Type:      S_2op
6527    Execution Slots:       SLOT23
6528    ========================================================================== */
6529 
6530 #define Q6_R_insert_RII __builtin_HEXAGON_S2_insert
6531 
6532 /* ==========================================================================
6533    Assembly Syntax:       Rx32=insert(Rs32,Rtt32)
6534    C Intrinsic Prototype: Word32 Q6_R_insert_RP(Word32 Rx, Word32 Rs, Word64 Rtt)
6535    Instruction Type:      S_3op
6536    Execution Slots:       SLOT23
6537    ========================================================================== */
6538 
6539 #define Q6_R_insert_RP __builtin_HEXAGON_S2_insert_rp
6540 
6541 /* ==========================================================================
6542    Assembly Syntax:       Rxx32=insert(Rss32,#u6,#U6)
6543    C Intrinsic Prototype: Word64 Q6_P_insert_PII(Word64 Rxx, Word64 Rss, Word32 Iu6, Word32 IU6)
6544    Instruction Type:      S_2op
6545    Execution Slots:       SLOT23
6546    ========================================================================== */
6547 
6548 #define Q6_P_insert_PII __builtin_HEXAGON_S2_insertp
6549 
6550 /* ==========================================================================
6551    Assembly Syntax:       Rxx32=insert(Rss32,Rtt32)
6552    C Intrinsic Prototype: Word64 Q6_P_insert_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
6553    Instruction Type:      S_3op
6554    Execution Slots:       SLOT23
6555    ========================================================================== */
6556 
6557 #define Q6_P_insert_PP __builtin_HEXAGON_S2_insertp_rp
6558 
6559 /* ==========================================================================
6560    Assembly Syntax:       Rdd32=interleave(Rss32)
6561    C Intrinsic Prototype: Word64 Q6_P_interleave_P(Word64 Rss)
6562    Instruction Type:      S_2op
6563    Execution Slots:       SLOT23
6564    ========================================================================== */
6565 
6566 #define Q6_P_interleave_P __builtin_HEXAGON_S2_interleave
6567 
6568 /* ==========================================================================
6569    Assembly Syntax:       Rdd32=lfs(Rss32,Rtt32)
6570    C Intrinsic Prototype: Word64 Q6_P_lfs_PP(Word64 Rss, Word64 Rtt)
6571    Instruction Type:      S_3op
6572    Execution Slots:       SLOT23
6573    ========================================================================== */
6574 
6575 #define Q6_P_lfs_PP __builtin_HEXAGON_S2_lfsp
6576 
6577 /* ==========================================================================
6578    Assembly Syntax:       Rdd32=lsl(Rss32,Rt32)
6579    C Intrinsic Prototype: Word64 Q6_P_lsl_PR(Word64 Rss, Word32 Rt)
6580    Instruction Type:      S_3op
6581    Execution Slots:       SLOT23
6582    ========================================================================== */
6583 
6584 #define Q6_P_lsl_PR __builtin_HEXAGON_S2_lsl_r_p
6585 
6586 /* ==========================================================================
6587    Assembly Syntax:       Rxx32+=lsl(Rss32,Rt32)
6588    C Intrinsic Prototype: Word64 Q6_P_lslacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6589    Instruction Type:      S_3op
6590    Execution Slots:       SLOT23
6591    ========================================================================== */
6592 
6593 #define Q6_P_lslacc_PR __builtin_HEXAGON_S2_lsl_r_p_acc
6594 
6595 /* ==========================================================================
6596    Assembly Syntax:       Rxx32&=lsl(Rss32,Rt32)
6597    C Intrinsic Prototype: Word64 Q6_P_lsland_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6598    Instruction Type:      S_3op
6599    Execution Slots:       SLOT23
6600    ========================================================================== */
6601 
6602 #define Q6_P_lsland_PR __builtin_HEXAGON_S2_lsl_r_p_and
6603 
6604 /* ==========================================================================
6605    Assembly Syntax:       Rxx32-=lsl(Rss32,Rt32)
6606    C Intrinsic Prototype: Word64 Q6_P_lslnac_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6607    Instruction Type:      S_3op
6608    Execution Slots:       SLOT23
6609    ========================================================================== */
6610 
6611 #define Q6_P_lslnac_PR __builtin_HEXAGON_S2_lsl_r_p_nac
6612 
6613 /* ==========================================================================
6614    Assembly Syntax:       Rxx32|=lsl(Rss32,Rt32)
6615    C Intrinsic Prototype: Word64 Q6_P_lslor_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6616    Instruction Type:      S_3op
6617    Execution Slots:       SLOT23
6618    ========================================================================== */
6619 
6620 #define Q6_P_lslor_PR __builtin_HEXAGON_S2_lsl_r_p_or
6621 
6622 /* ==========================================================================
6623    Assembly Syntax:       Rxx32^=lsl(Rss32,Rt32)
6624    C Intrinsic Prototype: Word64 Q6_P_lslxacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6625    Instruction Type:      S_3op
6626    Execution Slots:       SLOT23
6627    ========================================================================== */
6628 
6629 #define Q6_P_lslxacc_PR __builtin_HEXAGON_S2_lsl_r_p_xor
6630 
6631 /* ==========================================================================
6632    Assembly Syntax:       Rd32=lsl(Rs32,Rt32)
6633    C Intrinsic Prototype: Word32 Q6_R_lsl_RR(Word32 Rs, Word32 Rt)
6634    Instruction Type:      S_3op
6635    Execution Slots:       SLOT23
6636    ========================================================================== */
6637 
6638 #define Q6_R_lsl_RR __builtin_HEXAGON_S2_lsl_r_r
6639 
6640 /* ==========================================================================
6641    Assembly Syntax:       Rx32+=lsl(Rs32,Rt32)
6642    C Intrinsic Prototype: Word32 Q6_R_lslacc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6643    Instruction Type:      S_3op
6644    Execution Slots:       SLOT23
6645    ========================================================================== */
6646 
6647 #define Q6_R_lslacc_RR __builtin_HEXAGON_S2_lsl_r_r_acc
6648 
6649 /* ==========================================================================
6650    Assembly Syntax:       Rx32&=lsl(Rs32,Rt32)
6651    C Intrinsic Prototype: Word32 Q6_R_lsland_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6652    Instruction Type:      S_3op
6653    Execution Slots:       SLOT23
6654    ========================================================================== */
6655 
6656 #define Q6_R_lsland_RR __builtin_HEXAGON_S2_lsl_r_r_and
6657 
6658 /* ==========================================================================
6659    Assembly Syntax:       Rx32-=lsl(Rs32,Rt32)
6660    C Intrinsic Prototype: Word32 Q6_R_lslnac_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6661    Instruction Type:      S_3op
6662    Execution Slots:       SLOT23
6663    ========================================================================== */
6664 
6665 #define Q6_R_lslnac_RR __builtin_HEXAGON_S2_lsl_r_r_nac
6666 
6667 /* ==========================================================================
6668    Assembly Syntax:       Rx32|=lsl(Rs32,Rt32)
6669    C Intrinsic Prototype: Word32 Q6_R_lslor_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6670    Instruction Type:      S_3op
6671    Execution Slots:       SLOT23
6672    ========================================================================== */
6673 
6674 #define Q6_R_lslor_RR __builtin_HEXAGON_S2_lsl_r_r_or
6675 
6676 /* ==========================================================================
6677    Assembly Syntax:       Rdd32=vlslh(Rss32,Rt32)
6678    C Intrinsic Prototype: Word64 Q6_P_vlslh_PR(Word64 Rss, Word32 Rt)
6679    Instruction Type:      S_3op
6680    Execution Slots:       SLOT23
6681    ========================================================================== */
6682 
6683 #define Q6_P_vlslh_PR __builtin_HEXAGON_S2_lsl_r_vh
6684 
6685 /* ==========================================================================
6686    Assembly Syntax:       Rdd32=vlslw(Rss32,Rt32)
6687    C Intrinsic Prototype: Word64 Q6_P_vlslw_PR(Word64 Rss, Word32 Rt)
6688    Instruction Type:      S_3op
6689    Execution Slots:       SLOT23
6690    ========================================================================== */
6691 
6692 #define Q6_P_vlslw_PR __builtin_HEXAGON_S2_lsl_r_vw
6693 
6694 /* ==========================================================================
6695    Assembly Syntax:       Rdd32=lsr(Rss32,#u6)
6696    C Intrinsic Prototype: Word64 Q6_P_lsr_PI(Word64 Rss, Word32 Iu6)
6697    Instruction Type:      S_2op
6698    Execution Slots:       SLOT23
6699    ========================================================================== */
6700 
6701 #define Q6_P_lsr_PI __builtin_HEXAGON_S2_lsr_i_p
6702 
6703 /* ==========================================================================
6704    Assembly Syntax:       Rxx32+=lsr(Rss32,#u6)
6705    C Intrinsic Prototype: Word64 Q6_P_lsracc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6706    Instruction Type:      S_2op
6707    Execution Slots:       SLOT23
6708    ========================================================================== */
6709 
6710 #define Q6_P_lsracc_PI __builtin_HEXAGON_S2_lsr_i_p_acc
6711 
6712 /* ==========================================================================
6713    Assembly Syntax:       Rxx32&=lsr(Rss32,#u6)
6714    C Intrinsic Prototype: Word64 Q6_P_lsrand_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6715    Instruction Type:      S_2op
6716    Execution Slots:       SLOT23
6717    ========================================================================== */
6718 
6719 #define Q6_P_lsrand_PI __builtin_HEXAGON_S2_lsr_i_p_and
6720 
6721 /* ==========================================================================
6722    Assembly Syntax:       Rxx32-=lsr(Rss32,#u6)
6723    C Intrinsic Prototype: Word64 Q6_P_lsrnac_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6724    Instruction Type:      S_2op
6725    Execution Slots:       SLOT23
6726    ========================================================================== */
6727 
6728 #define Q6_P_lsrnac_PI __builtin_HEXAGON_S2_lsr_i_p_nac
6729 
6730 /* ==========================================================================
6731    Assembly Syntax:       Rxx32|=lsr(Rss32,#u6)
6732    C Intrinsic Prototype: Word64 Q6_P_lsror_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6733    Instruction Type:      S_2op
6734    Execution Slots:       SLOT23
6735    ========================================================================== */
6736 
6737 #define Q6_P_lsror_PI __builtin_HEXAGON_S2_lsr_i_p_or
6738 
6739 /* ==========================================================================
6740    Assembly Syntax:       Rxx32^=lsr(Rss32,#u6)
6741    C Intrinsic Prototype: Word64 Q6_P_lsrxacc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
6742    Instruction Type:      S_2op
6743    Execution Slots:       SLOT23
6744    ========================================================================== */
6745 
6746 #define Q6_P_lsrxacc_PI __builtin_HEXAGON_S2_lsr_i_p_xacc
6747 
6748 /* ==========================================================================
6749    Assembly Syntax:       Rd32=lsr(Rs32,#u5)
6750    C Intrinsic Prototype: Word32 Q6_R_lsr_RI(Word32 Rs, Word32 Iu5)
6751    Instruction Type:      S_2op
6752    Execution Slots:       SLOT23
6753    ========================================================================== */
6754 
6755 #define Q6_R_lsr_RI __builtin_HEXAGON_S2_lsr_i_r
6756 
6757 /* ==========================================================================
6758    Assembly Syntax:       Rx32+=lsr(Rs32,#u5)
6759    C Intrinsic Prototype: Word32 Q6_R_lsracc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6760    Instruction Type:      S_2op
6761    Execution Slots:       SLOT23
6762    ========================================================================== */
6763 
6764 #define Q6_R_lsracc_RI __builtin_HEXAGON_S2_lsr_i_r_acc
6765 
6766 /* ==========================================================================
6767    Assembly Syntax:       Rx32&=lsr(Rs32,#u5)
6768    C Intrinsic Prototype: Word32 Q6_R_lsrand_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6769    Instruction Type:      S_2op
6770    Execution Slots:       SLOT23
6771    ========================================================================== */
6772 
6773 #define Q6_R_lsrand_RI __builtin_HEXAGON_S2_lsr_i_r_and
6774 
6775 /* ==========================================================================
6776    Assembly Syntax:       Rx32-=lsr(Rs32,#u5)
6777    C Intrinsic Prototype: Word32 Q6_R_lsrnac_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6778    Instruction Type:      S_2op
6779    Execution Slots:       SLOT23
6780    ========================================================================== */
6781 
6782 #define Q6_R_lsrnac_RI __builtin_HEXAGON_S2_lsr_i_r_nac
6783 
6784 /* ==========================================================================
6785    Assembly Syntax:       Rx32|=lsr(Rs32,#u5)
6786    C Intrinsic Prototype: Word32 Q6_R_lsror_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6787    Instruction Type:      S_2op
6788    Execution Slots:       SLOT23
6789    ========================================================================== */
6790 
6791 #define Q6_R_lsror_RI __builtin_HEXAGON_S2_lsr_i_r_or
6792 
6793 /* ==========================================================================
6794    Assembly Syntax:       Rx32^=lsr(Rs32,#u5)
6795    C Intrinsic Prototype: Word32 Q6_R_lsrxacc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
6796    Instruction Type:      S_2op
6797    Execution Slots:       SLOT23
6798    ========================================================================== */
6799 
6800 #define Q6_R_lsrxacc_RI __builtin_HEXAGON_S2_lsr_i_r_xacc
6801 
6802 /* ==========================================================================
6803    Assembly Syntax:       Rdd32=vlsrh(Rss32,#u4)
6804    C Intrinsic Prototype: Word64 Q6_P_vlsrh_PI(Word64 Rss, Word32 Iu4)
6805    Instruction Type:      S_2op
6806    Execution Slots:       SLOT23
6807    ========================================================================== */
6808 
6809 #define Q6_P_vlsrh_PI __builtin_HEXAGON_S2_lsr_i_vh
6810 
6811 /* ==========================================================================
6812    Assembly Syntax:       Rdd32=vlsrw(Rss32,#u5)
6813    C Intrinsic Prototype: Word64 Q6_P_vlsrw_PI(Word64 Rss, Word32 Iu5)
6814    Instruction Type:      S_2op
6815    Execution Slots:       SLOT23
6816    ========================================================================== */
6817 
6818 #define Q6_P_vlsrw_PI __builtin_HEXAGON_S2_lsr_i_vw
6819 
6820 /* ==========================================================================
6821    Assembly Syntax:       Rdd32=lsr(Rss32,Rt32)
6822    C Intrinsic Prototype: Word64 Q6_P_lsr_PR(Word64 Rss, Word32 Rt)
6823    Instruction Type:      S_3op
6824    Execution Slots:       SLOT23
6825    ========================================================================== */
6826 
6827 #define Q6_P_lsr_PR __builtin_HEXAGON_S2_lsr_r_p
6828 
6829 /* ==========================================================================
6830    Assembly Syntax:       Rxx32+=lsr(Rss32,Rt32)
6831    C Intrinsic Prototype: Word64 Q6_P_lsracc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6832    Instruction Type:      S_3op
6833    Execution Slots:       SLOT23
6834    ========================================================================== */
6835 
6836 #define Q6_P_lsracc_PR __builtin_HEXAGON_S2_lsr_r_p_acc
6837 
6838 /* ==========================================================================
6839    Assembly Syntax:       Rxx32&=lsr(Rss32,Rt32)
6840    C Intrinsic Prototype: Word64 Q6_P_lsrand_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6841    Instruction Type:      S_3op
6842    Execution Slots:       SLOT23
6843    ========================================================================== */
6844 
6845 #define Q6_P_lsrand_PR __builtin_HEXAGON_S2_lsr_r_p_and
6846 
6847 /* ==========================================================================
6848    Assembly Syntax:       Rxx32-=lsr(Rss32,Rt32)
6849    C Intrinsic Prototype: Word64 Q6_P_lsrnac_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6850    Instruction Type:      S_3op
6851    Execution Slots:       SLOT23
6852    ========================================================================== */
6853 
6854 #define Q6_P_lsrnac_PR __builtin_HEXAGON_S2_lsr_r_p_nac
6855 
6856 /* ==========================================================================
6857    Assembly Syntax:       Rxx32|=lsr(Rss32,Rt32)
6858    C Intrinsic Prototype: Word64 Q6_P_lsror_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6859    Instruction Type:      S_3op
6860    Execution Slots:       SLOT23
6861    ========================================================================== */
6862 
6863 #define Q6_P_lsror_PR __builtin_HEXAGON_S2_lsr_r_p_or
6864 
6865 /* ==========================================================================
6866    Assembly Syntax:       Rxx32^=lsr(Rss32,Rt32)
6867    C Intrinsic Prototype: Word64 Q6_P_lsrxacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
6868    Instruction Type:      S_3op
6869    Execution Slots:       SLOT23
6870    ========================================================================== */
6871 
6872 #define Q6_P_lsrxacc_PR __builtin_HEXAGON_S2_lsr_r_p_xor
6873 
6874 /* ==========================================================================
6875    Assembly Syntax:       Rd32=lsr(Rs32,Rt32)
6876    C Intrinsic Prototype: Word32 Q6_R_lsr_RR(Word32 Rs, Word32 Rt)
6877    Instruction Type:      S_3op
6878    Execution Slots:       SLOT23
6879    ========================================================================== */
6880 
6881 #define Q6_R_lsr_RR __builtin_HEXAGON_S2_lsr_r_r
6882 
6883 /* ==========================================================================
6884    Assembly Syntax:       Rx32+=lsr(Rs32,Rt32)
6885    C Intrinsic Prototype: Word32 Q6_R_lsracc_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6886    Instruction Type:      S_3op
6887    Execution Slots:       SLOT23
6888    ========================================================================== */
6889 
6890 #define Q6_R_lsracc_RR __builtin_HEXAGON_S2_lsr_r_r_acc
6891 
6892 /* ==========================================================================
6893    Assembly Syntax:       Rx32&=lsr(Rs32,Rt32)
6894    C Intrinsic Prototype: Word32 Q6_R_lsrand_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6895    Instruction Type:      S_3op
6896    Execution Slots:       SLOT23
6897    ========================================================================== */
6898 
6899 #define Q6_R_lsrand_RR __builtin_HEXAGON_S2_lsr_r_r_and
6900 
6901 /* ==========================================================================
6902    Assembly Syntax:       Rx32-=lsr(Rs32,Rt32)
6903    C Intrinsic Prototype: Word32 Q6_R_lsrnac_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6904    Instruction Type:      S_3op
6905    Execution Slots:       SLOT23
6906    ========================================================================== */
6907 
6908 #define Q6_R_lsrnac_RR __builtin_HEXAGON_S2_lsr_r_r_nac
6909 
6910 /* ==========================================================================
6911    Assembly Syntax:       Rx32|=lsr(Rs32,Rt32)
6912    C Intrinsic Prototype: Word32 Q6_R_lsror_RR(Word32 Rx, Word32 Rs, Word32 Rt)
6913    Instruction Type:      S_3op
6914    Execution Slots:       SLOT23
6915    ========================================================================== */
6916 
6917 #define Q6_R_lsror_RR __builtin_HEXAGON_S2_lsr_r_r_or
6918 
6919 /* ==========================================================================
6920    Assembly Syntax:       Rdd32=vlsrh(Rss32,Rt32)
6921    C Intrinsic Prototype: Word64 Q6_P_vlsrh_PR(Word64 Rss, Word32 Rt)
6922    Instruction Type:      S_3op
6923    Execution Slots:       SLOT23
6924    ========================================================================== */
6925 
6926 #define Q6_P_vlsrh_PR __builtin_HEXAGON_S2_lsr_r_vh
6927 
6928 /* ==========================================================================
6929    Assembly Syntax:       Rdd32=vlsrw(Rss32,Rt32)
6930    C Intrinsic Prototype: Word64 Q6_P_vlsrw_PR(Word64 Rss, Word32 Rt)
6931    Instruction Type:      S_3op
6932    Execution Slots:       SLOT23
6933    ========================================================================== */
6934 
6935 #define Q6_P_vlsrw_PR __builtin_HEXAGON_S2_lsr_r_vw
6936 
6937 /* ==========================================================================
6938    Assembly Syntax:       Rdd32=packhl(Rs32,Rt32)
6939    C Intrinsic Prototype: Word64 Q6_P_packhl_RR(Word32 Rs, Word32 Rt)
6940    Instruction Type:      ALU32_3op
6941    Execution Slots:       SLOT0123
6942    ========================================================================== */
6943 
6944 #define Q6_P_packhl_RR __builtin_HEXAGON_S2_packhl
6945 
6946 /* ==========================================================================
6947    Assembly Syntax:       Rd32=parity(Rss32,Rtt32)
6948    C Intrinsic Prototype: Word32 Q6_R_parity_PP(Word64 Rss, Word64 Rtt)
6949    Instruction Type:      ALU64
6950    Execution Slots:       SLOT23
6951    ========================================================================== */
6952 
6953 #define Q6_R_parity_PP __builtin_HEXAGON_S2_parityp
6954 
6955 /* ==========================================================================
6956    Assembly Syntax:       Rd32=setbit(Rs32,#u5)
6957    C Intrinsic Prototype: Word32 Q6_R_setbit_RI(Word32 Rs, Word32 Iu5)
6958    Instruction Type:      S_2op
6959    Execution Slots:       SLOT23
6960    ========================================================================== */
6961 
6962 #define Q6_R_setbit_RI __builtin_HEXAGON_S2_setbit_i
6963 
6964 /* ==========================================================================
6965    Assembly Syntax:       Rd32=setbit(Rs32,Rt32)
6966    C Intrinsic Prototype: Word32 Q6_R_setbit_RR(Word32 Rs, Word32 Rt)
6967    Instruction Type:      S_3op
6968    Execution Slots:       SLOT23
6969    ========================================================================== */
6970 
6971 #define Q6_R_setbit_RR __builtin_HEXAGON_S2_setbit_r
6972 
6973 /* ==========================================================================
6974    Assembly Syntax:       Rdd32=shuffeb(Rss32,Rtt32)
6975    C Intrinsic Prototype: Word64 Q6_P_shuffeb_PP(Word64 Rss, Word64 Rtt)
6976    Instruction Type:      S_3op
6977    Execution Slots:       SLOT23
6978    ========================================================================== */
6979 
6980 #define Q6_P_shuffeb_PP __builtin_HEXAGON_S2_shuffeb
6981 
6982 /* ==========================================================================
6983    Assembly Syntax:       Rdd32=shuffeh(Rss32,Rtt32)
6984    C Intrinsic Prototype: Word64 Q6_P_shuffeh_PP(Word64 Rss, Word64 Rtt)
6985    Instruction Type:      S_3op
6986    Execution Slots:       SLOT23
6987    ========================================================================== */
6988 
6989 #define Q6_P_shuffeh_PP __builtin_HEXAGON_S2_shuffeh
6990 
6991 /* ==========================================================================
6992    Assembly Syntax:       Rdd32=shuffob(Rtt32,Rss32)
6993    C Intrinsic Prototype: Word64 Q6_P_shuffob_PP(Word64 Rtt, Word64 Rss)
6994    Instruction Type:      S_3op
6995    Execution Slots:       SLOT23
6996    ========================================================================== */
6997 
6998 #define Q6_P_shuffob_PP __builtin_HEXAGON_S2_shuffob
6999 
7000 /* ==========================================================================
7001    Assembly Syntax:       Rdd32=shuffoh(Rtt32,Rss32)
7002    C Intrinsic Prototype: Word64 Q6_P_shuffoh_PP(Word64 Rtt, Word64 Rss)
7003    Instruction Type:      S_3op
7004    Execution Slots:       SLOT23
7005    ========================================================================== */
7006 
7007 #define Q6_P_shuffoh_PP __builtin_HEXAGON_S2_shuffoh
7008 
7009 /* ==========================================================================
7010    Assembly Syntax:       memb(Rx32++#s4:0:circ(Mu2))=Rt32
7011    C Intrinsic Prototype: void Q6_memb_IMR_circ(void** Rx, Word32 Is4_0, Word32 Mu, Word32 Rt, void* BaseAddress)
7012    Instruction Type:      ST
7013    Execution Slots:       SLOT01
7014    ========================================================================== */
7015 
7016 #define Q6_memb_IMR_circ __builtin_HEXAGON_S2_storerb_pci
7017 
7018 /* ==========================================================================
7019    Assembly Syntax:       memb(Rx32++I:circ(Mu2))=Rt32
7020    C Intrinsic Prototype: void Q6_memb_MR_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)
7021    Instruction Type:      ST
7022    Execution Slots:       SLOT01
7023    ========================================================================== */
7024 
7025 #define Q6_memb_MR_circ __builtin_HEXAGON_S2_storerb_pcr
7026 
7027 /* ==========================================================================
7028    Assembly Syntax:       memd(Rx32++#s4:3:circ(Mu2))=Rtt32
7029    C Intrinsic Prototype: void Q6_memd_IMP_circ(void** Rx, Word32 Is4_3, Word32 Mu, Word64 Rtt, void* BaseAddress)
7030    Instruction Type:      ST
7031    Execution Slots:       SLOT01
7032    ========================================================================== */
7033 
7034 #define Q6_memd_IMP_circ __builtin_HEXAGON_S2_storerd_pci
7035 
7036 /* ==========================================================================
7037    Assembly Syntax:       memd(Rx32++I:circ(Mu2))=Rtt32
7038    C Intrinsic Prototype: void Q6_memd_MP_circ(void** Rx, Word32 Mu, Word64 Rtt, void* BaseAddress)
7039    Instruction Type:      ST
7040    Execution Slots:       SLOT01
7041    ========================================================================== */
7042 
7043 #define Q6_memd_MP_circ __builtin_HEXAGON_S2_storerd_pcr
7044 
7045 /* ==========================================================================
7046    Assembly Syntax:       memh(Rx32++#s4:1:circ(Mu2))=Rt32.h
7047    C Intrinsic Prototype: void Q6_memh_IMRh_circ(void** Rx, Word32 Is4_1, Word32 Mu, Word32 Rt, void* BaseAddress)
7048    Instruction Type:      ST
7049    Execution Slots:       SLOT01
7050    ========================================================================== */
7051 
7052 #define Q6_memh_IMRh_circ __builtin_HEXAGON_S2_storerf_pci
7053 
7054 /* ==========================================================================
7055    Assembly Syntax:       memh(Rx32++I:circ(Mu2))=Rt32.h
7056    C Intrinsic Prototype: void Q6_memh_MRh_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)
7057    Instruction Type:      ST
7058    Execution Slots:       SLOT01
7059    ========================================================================== */
7060 
7061 #define Q6_memh_MRh_circ __builtin_HEXAGON_S2_storerf_pcr
7062 
7063 /* ==========================================================================
7064    Assembly Syntax:       memh(Rx32++#s4:1:circ(Mu2))=Rt32
7065    C Intrinsic Prototype: void Q6_memh_IMR_circ(void** Rx, Word32 Is4_1, Word32 Mu, Word32 Rt, void* BaseAddress)
7066    Instruction Type:      ST
7067    Execution Slots:       SLOT01
7068    ========================================================================== */
7069 
7070 #define Q6_memh_IMR_circ __builtin_HEXAGON_S2_storerh_pci
7071 
7072 /* ==========================================================================
7073    Assembly Syntax:       memh(Rx32++I:circ(Mu2))=Rt32
7074    C Intrinsic Prototype: void Q6_memh_MR_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)
7075    Instruction Type:      ST
7076    Execution Slots:       SLOT01
7077    ========================================================================== */
7078 
7079 #define Q6_memh_MR_circ __builtin_HEXAGON_S2_storerh_pcr
7080 
7081 /* ==========================================================================
7082    Assembly Syntax:       memw(Rx32++#s4:2:circ(Mu2))=Rt32
7083    C Intrinsic Prototype: void Q6_memw_IMR_circ(void** Rx, Word32 Is4_2, Word32 Mu, Word32 Rt, void* BaseAddress)
7084    Instruction Type:      ST
7085    Execution Slots:       SLOT01
7086    ========================================================================== */
7087 
7088 #define Q6_memw_IMR_circ __builtin_HEXAGON_S2_storeri_pci
7089 
7090 /* ==========================================================================
7091    Assembly Syntax:       memw(Rx32++I:circ(Mu2))=Rt32
7092    C Intrinsic Prototype: void Q6_memw_MR_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)
7093    Instruction Type:      ST
7094    Execution Slots:       SLOT01
7095    ========================================================================== */
7096 
7097 #define Q6_memw_MR_circ __builtin_HEXAGON_S2_storeri_pcr
7098 
7099 /* ==========================================================================
7100    Assembly Syntax:       Rd32=vsathb(Rs32)
7101    C Intrinsic Prototype: Word32 Q6_R_vsathb_R(Word32 Rs)
7102    Instruction Type:      S_2op
7103    Execution Slots:       SLOT23
7104    ========================================================================== */
7105 
7106 #define Q6_R_vsathb_R __builtin_HEXAGON_S2_svsathb
7107 
7108 /* ==========================================================================
7109    Assembly Syntax:       Rd32=vsathub(Rs32)
7110    C Intrinsic Prototype: Word32 Q6_R_vsathub_R(Word32 Rs)
7111    Instruction Type:      S_2op
7112    Execution Slots:       SLOT23
7113    ========================================================================== */
7114 
7115 #define Q6_R_vsathub_R __builtin_HEXAGON_S2_svsathub
7116 
7117 /* ==========================================================================
7118    Assembly Syntax:       Rx32=tableidxb(Rs32,#u4,#U5)
7119    C Intrinsic Prototype: Word32 Q6_R_tableidxb_RII(Word32 Rx, Word32 Rs, Word32 Iu4, Word32 IU5)
7120    Instruction Type:      S_2op
7121    Execution Slots:       SLOT0123
7122    ========================================================================== */
7123 
7124 #define Q6_R_tableidxb_RII __builtin_HEXAGON_S2_tableidxb_goodsyntax
7125 
7126 /* ==========================================================================
7127    Assembly Syntax:       Rx32=tableidxd(Rs32,#u4,#U5)
7128    C Intrinsic Prototype: Word32 Q6_R_tableidxd_RII(Word32 Rx, Word32 Rs, Word32 Iu4, Word32 IU5)
7129    Instruction Type:      S_2op
7130    Execution Slots:       SLOT0123
7131    ========================================================================== */
7132 
7133 #define Q6_R_tableidxd_RII __builtin_HEXAGON_S2_tableidxd_goodsyntax
7134 
7135 /* ==========================================================================
7136    Assembly Syntax:       Rx32=tableidxh(Rs32,#u4,#U5)
7137    C Intrinsic Prototype: Word32 Q6_R_tableidxh_RII(Word32 Rx, Word32 Rs, Word32 Iu4, Word32 IU5)
7138    Instruction Type:      S_2op
7139    Execution Slots:       SLOT0123
7140    ========================================================================== */
7141 
7142 #define Q6_R_tableidxh_RII __builtin_HEXAGON_S2_tableidxh_goodsyntax
7143 
7144 /* ==========================================================================
7145    Assembly Syntax:       Rx32=tableidxw(Rs32,#u4,#U5)
7146    C Intrinsic Prototype: Word32 Q6_R_tableidxw_RII(Word32 Rx, Word32 Rs, Word32 Iu4, Word32 IU5)
7147    Instruction Type:      S_2op
7148    Execution Slots:       SLOT0123
7149    ========================================================================== */
7150 
7151 #define Q6_R_tableidxw_RII __builtin_HEXAGON_S2_tableidxw_goodsyntax
7152 
7153 /* ==========================================================================
7154    Assembly Syntax:       Rd32=togglebit(Rs32,#u5)
7155    C Intrinsic Prototype: Word32 Q6_R_togglebit_RI(Word32 Rs, Word32 Iu5)
7156    Instruction Type:      S_2op
7157    Execution Slots:       SLOT23
7158    ========================================================================== */
7159 
7160 #define Q6_R_togglebit_RI __builtin_HEXAGON_S2_togglebit_i
7161 
7162 /* ==========================================================================
7163    Assembly Syntax:       Rd32=togglebit(Rs32,Rt32)
7164    C Intrinsic Prototype: Word32 Q6_R_togglebit_RR(Word32 Rs, Word32 Rt)
7165    Instruction Type:      S_3op
7166    Execution Slots:       SLOT23
7167    ========================================================================== */
7168 
7169 #define Q6_R_togglebit_RR __builtin_HEXAGON_S2_togglebit_r
7170 
7171 /* ==========================================================================
7172    Assembly Syntax:       Pd4=tstbit(Rs32,#u5)
7173    C Intrinsic Prototype: Byte Q6_p_tstbit_RI(Word32 Rs, Word32 Iu5)
7174    Instruction Type:      S_2op
7175    Execution Slots:       SLOT23
7176    ========================================================================== */
7177 
7178 #define Q6_p_tstbit_RI __builtin_HEXAGON_S2_tstbit_i
7179 
7180 /* ==========================================================================
7181    Assembly Syntax:       Pd4=tstbit(Rs32,Rt32)
7182    C Intrinsic Prototype: Byte Q6_p_tstbit_RR(Word32 Rs, Word32 Rt)
7183    Instruction Type:      S_3op
7184    Execution Slots:       SLOT23
7185    ========================================================================== */
7186 
7187 #define Q6_p_tstbit_RR __builtin_HEXAGON_S2_tstbit_r
7188 
7189 /* ==========================================================================
7190    Assembly Syntax:       Rdd32=valignb(Rtt32,Rss32,#u3)
7191    C Intrinsic Prototype: Word64 Q6_P_valignb_PPI(Word64 Rtt, Word64 Rss, Word32 Iu3)
7192    Instruction Type:      S_3op
7193    Execution Slots:       SLOT23
7194    ========================================================================== */
7195 
7196 #define Q6_P_valignb_PPI __builtin_HEXAGON_S2_valignib
7197 
7198 /* ==========================================================================
7199    Assembly Syntax:       Rdd32=valignb(Rtt32,Rss32,Pu4)
7200    C Intrinsic Prototype: Word64 Q6_P_valignb_PPp(Word64 Rtt, Word64 Rss, Byte Pu)
7201    Instruction Type:      S_3op
7202    Execution Slots:       SLOT23
7203    ========================================================================== */
7204 
7205 #define Q6_P_valignb_PPp __builtin_HEXAGON_S2_valignrb
7206 
7207 /* ==========================================================================
7208    Assembly Syntax:       Rdd32=vcnegh(Rss32,Rt32)
7209    C Intrinsic Prototype: Word64 Q6_P_vcnegh_PR(Word64 Rss, Word32 Rt)
7210    Instruction Type:      S_3op
7211    Execution Slots:       SLOT23
7212    ========================================================================== */
7213 
7214 #define Q6_P_vcnegh_PR __builtin_HEXAGON_S2_vcnegh
7215 
7216 /* ==========================================================================
7217    Assembly Syntax:       Rdd32=vcrotate(Rss32,Rt32)
7218    C Intrinsic Prototype: Word64 Q6_P_vcrotate_PR(Word64 Rss, Word32 Rt)
7219    Instruction Type:      S_3op
7220    Execution Slots:       SLOT23
7221    ========================================================================== */
7222 
7223 #define Q6_P_vcrotate_PR __builtin_HEXAGON_S2_vcrotate
7224 
7225 /* ==========================================================================
7226    Assembly Syntax:       Rxx32+=vrcnegh(Rss32,Rt32)
7227    C Intrinsic Prototype: Word64 Q6_P_vrcneghacc_PR(Word64 Rxx, Word64 Rss, Word32 Rt)
7228    Instruction Type:      S_3op
7229    Execution Slots:       SLOT23
7230    ========================================================================== */
7231 
7232 #define Q6_P_vrcneghacc_PR __builtin_HEXAGON_S2_vrcnegh
7233 
7234 /* ==========================================================================
7235    Assembly Syntax:       Rd32=vrndwh(Rss32)
7236    C Intrinsic Prototype: Word32 Q6_R_vrndwh_P(Word64 Rss)
7237    Instruction Type:      S_2op
7238    Execution Slots:       SLOT23
7239    ========================================================================== */
7240 
7241 #define Q6_R_vrndwh_P __builtin_HEXAGON_S2_vrndpackwh
7242 
7243 /* ==========================================================================
7244    Assembly Syntax:       Rd32=vrndwh(Rss32):sat
7245    C Intrinsic Prototype: Word32 Q6_R_vrndwh_P_sat(Word64 Rss)
7246    Instruction Type:      S_2op
7247    Execution Slots:       SLOT23
7248    ========================================================================== */
7249 
7250 #define Q6_R_vrndwh_P_sat __builtin_HEXAGON_S2_vrndpackwhs
7251 
7252 /* ==========================================================================
7253    Assembly Syntax:       Rd32=vsathb(Rss32)
7254    C Intrinsic Prototype: Word32 Q6_R_vsathb_P(Word64 Rss)
7255    Instruction Type:      S_2op
7256    Execution Slots:       SLOT23
7257    ========================================================================== */
7258 
7259 #define Q6_R_vsathb_P __builtin_HEXAGON_S2_vsathb
7260 
7261 /* ==========================================================================
7262    Assembly Syntax:       Rdd32=vsathb(Rss32)
7263    C Intrinsic Prototype: Word64 Q6_P_vsathb_P(Word64 Rss)
7264    Instruction Type:      S_2op
7265    Execution Slots:       SLOT23
7266    ========================================================================== */
7267 
7268 #define Q6_P_vsathb_P __builtin_HEXAGON_S2_vsathb_nopack
7269 
7270 /* ==========================================================================
7271    Assembly Syntax:       Rd32=vsathub(Rss32)
7272    C Intrinsic Prototype: Word32 Q6_R_vsathub_P(Word64 Rss)
7273    Instruction Type:      S_2op
7274    Execution Slots:       SLOT23
7275    ========================================================================== */
7276 
7277 #define Q6_R_vsathub_P __builtin_HEXAGON_S2_vsathub
7278 
7279 /* ==========================================================================
7280    Assembly Syntax:       Rdd32=vsathub(Rss32)
7281    C Intrinsic Prototype: Word64 Q6_P_vsathub_P(Word64 Rss)
7282    Instruction Type:      S_2op
7283    Execution Slots:       SLOT23
7284    ========================================================================== */
7285 
7286 #define Q6_P_vsathub_P __builtin_HEXAGON_S2_vsathub_nopack
7287 
7288 /* ==========================================================================
7289    Assembly Syntax:       Rd32=vsatwh(Rss32)
7290    C Intrinsic Prototype: Word32 Q6_R_vsatwh_P(Word64 Rss)
7291    Instruction Type:      S_2op
7292    Execution Slots:       SLOT23
7293    ========================================================================== */
7294 
7295 #define Q6_R_vsatwh_P __builtin_HEXAGON_S2_vsatwh
7296 
7297 /* ==========================================================================
7298    Assembly Syntax:       Rdd32=vsatwh(Rss32)
7299    C Intrinsic Prototype: Word64 Q6_P_vsatwh_P(Word64 Rss)
7300    Instruction Type:      S_2op
7301    Execution Slots:       SLOT23
7302    ========================================================================== */
7303 
7304 #define Q6_P_vsatwh_P __builtin_HEXAGON_S2_vsatwh_nopack
7305 
7306 /* ==========================================================================
7307    Assembly Syntax:       Rd32=vsatwuh(Rss32)
7308    C Intrinsic Prototype: Word32 Q6_R_vsatwuh_P(Word64 Rss)
7309    Instruction Type:      S_2op
7310    Execution Slots:       SLOT23
7311    ========================================================================== */
7312 
7313 #define Q6_R_vsatwuh_P __builtin_HEXAGON_S2_vsatwuh
7314 
7315 /* ==========================================================================
7316    Assembly Syntax:       Rdd32=vsatwuh(Rss32)
7317    C Intrinsic Prototype: Word64 Q6_P_vsatwuh_P(Word64 Rss)
7318    Instruction Type:      S_2op
7319    Execution Slots:       SLOT23
7320    ========================================================================== */
7321 
7322 #define Q6_P_vsatwuh_P __builtin_HEXAGON_S2_vsatwuh_nopack
7323 
7324 /* ==========================================================================
7325    Assembly Syntax:       Rd32=vsplatb(Rs32)
7326    C Intrinsic Prototype: Word32 Q6_R_vsplatb_R(Word32 Rs)
7327    Instruction Type:      S_2op
7328    Execution Slots:       SLOT23
7329    ========================================================================== */
7330 
7331 #define Q6_R_vsplatb_R __builtin_HEXAGON_S2_vsplatrb
7332 
7333 /* ==========================================================================
7334    Assembly Syntax:       Rdd32=vsplath(Rs32)
7335    C Intrinsic Prototype: Word64 Q6_P_vsplath_R(Word32 Rs)
7336    Instruction Type:      S_2op
7337    Execution Slots:       SLOT23
7338    ========================================================================== */
7339 
7340 #define Q6_P_vsplath_R __builtin_HEXAGON_S2_vsplatrh
7341 
7342 /* ==========================================================================
7343    Assembly Syntax:       Rdd32=vspliceb(Rss32,Rtt32,#u3)
7344    C Intrinsic Prototype: Word64 Q6_P_vspliceb_PPI(Word64 Rss, Word64 Rtt, Word32 Iu3)
7345    Instruction Type:      S_3op
7346    Execution Slots:       SLOT23
7347    ========================================================================== */
7348 
7349 #define Q6_P_vspliceb_PPI __builtin_HEXAGON_S2_vspliceib
7350 
7351 /* ==========================================================================
7352    Assembly Syntax:       Rdd32=vspliceb(Rss32,Rtt32,Pu4)
7353    C Intrinsic Prototype: Word64 Q6_P_vspliceb_PPp(Word64 Rss, Word64 Rtt, Byte Pu)
7354    Instruction Type:      S_3op
7355    Execution Slots:       SLOT23
7356    ========================================================================== */
7357 
7358 #define Q6_P_vspliceb_PPp __builtin_HEXAGON_S2_vsplicerb
7359 
7360 /* ==========================================================================
7361    Assembly Syntax:       Rdd32=vsxtbh(Rs32)
7362    C Intrinsic Prototype: Word64 Q6_P_vsxtbh_R(Word32 Rs)
7363    Instruction Type:      S_2op
7364    Execution Slots:       SLOT23
7365    ========================================================================== */
7366 
7367 #define Q6_P_vsxtbh_R __builtin_HEXAGON_S2_vsxtbh
7368 
7369 /* ==========================================================================
7370    Assembly Syntax:       Rdd32=vsxthw(Rs32)
7371    C Intrinsic Prototype: Word64 Q6_P_vsxthw_R(Word32 Rs)
7372    Instruction Type:      S_2op
7373    Execution Slots:       SLOT23
7374    ========================================================================== */
7375 
7376 #define Q6_P_vsxthw_R __builtin_HEXAGON_S2_vsxthw
7377 
7378 /* ==========================================================================
7379    Assembly Syntax:       Rd32=vtrunehb(Rss32)
7380    C Intrinsic Prototype: Word32 Q6_R_vtrunehb_P(Word64 Rss)
7381    Instruction Type:      S_2op
7382    Execution Slots:       SLOT23
7383    ========================================================================== */
7384 
7385 #define Q6_R_vtrunehb_P __builtin_HEXAGON_S2_vtrunehb
7386 
7387 /* ==========================================================================
7388    Assembly Syntax:       Rdd32=vtrunewh(Rss32,Rtt32)
7389    C Intrinsic Prototype: Word64 Q6_P_vtrunewh_PP(Word64 Rss, Word64 Rtt)
7390    Instruction Type:      S_3op
7391    Execution Slots:       SLOT23
7392    ========================================================================== */
7393 
7394 #define Q6_P_vtrunewh_PP __builtin_HEXAGON_S2_vtrunewh
7395 
7396 /* ==========================================================================
7397    Assembly Syntax:       Rd32=vtrunohb(Rss32)
7398    C Intrinsic Prototype: Word32 Q6_R_vtrunohb_P(Word64 Rss)
7399    Instruction Type:      S_2op
7400    Execution Slots:       SLOT23
7401    ========================================================================== */
7402 
7403 #define Q6_R_vtrunohb_P __builtin_HEXAGON_S2_vtrunohb
7404 
7405 /* ==========================================================================
7406    Assembly Syntax:       Rdd32=vtrunowh(Rss32,Rtt32)
7407    C Intrinsic Prototype: Word64 Q6_P_vtrunowh_PP(Word64 Rss, Word64 Rtt)
7408    Instruction Type:      S_3op
7409    Execution Slots:       SLOT23
7410    ========================================================================== */
7411 
7412 #define Q6_P_vtrunowh_PP __builtin_HEXAGON_S2_vtrunowh
7413 
7414 /* ==========================================================================
7415    Assembly Syntax:       Rdd32=vzxtbh(Rs32)
7416    C Intrinsic Prototype: Word64 Q6_P_vzxtbh_R(Word32 Rs)
7417    Instruction Type:      S_2op
7418    Execution Slots:       SLOT23
7419    ========================================================================== */
7420 
7421 #define Q6_P_vzxtbh_R __builtin_HEXAGON_S2_vzxtbh
7422 
7423 /* ==========================================================================
7424    Assembly Syntax:       Rdd32=vzxthw(Rs32)
7425    C Intrinsic Prototype: Word64 Q6_P_vzxthw_R(Word32 Rs)
7426    Instruction Type:      S_2op
7427    Execution Slots:       SLOT23
7428    ========================================================================== */
7429 
7430 #define Q6_P_vzxthw_R __builtin_HEXAGON_S2_vzxthw
7431 
7432 /* ==========================================================================
7433    Assembly Syntax:       Rd32=add(Rs32,add(Ru32,#s6))
7434    C Intrinsic Prototype: Word32 Q6_R_add_add_RRI(Word32 Rs, Word32 Ru, Word32 Is6)
7435    Instruction Type:      ALU64
7436    Execution Slots:       SLOT23
7437    ========================================================================== */
7438 
7439 #define Q6_R_add_add_RRI __builtin_HEXAGON_S4_addaddi
7440 
7441 /* ==========================================================================
7442    Assembly Syntax:       Rx32=add(#u8,asl(Rx32,#U5))
7443    C Intrinsic Prototype: Word32 Q6_R_add_asl_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7444    Instruction Type:      ALU64
7445    Execution Slots:       SLOT23
7446    ========================================================================== */
7447 
7448 #define Q6_R_add_asl_IRI __builtin_HEXAGON_S4_addi_asl_ri
7449 
7450 /* ==========================================================================
7451    Assembly Syntax:       Rx32=add(#u8,lsr(Rx32,#U5))
7452    C Intrinsic Prototype: Word32 Q6_R_add_lsr_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7453    Instruction Type:      ALU64
7454    Execution Slots:       SLOT23
7455    ========================================================================== */
7456 
7457 #define Q6_R_add_lsr_IRI __builtin_HEXAGON_S4_addi_lsr_ri
7458 
7459 /* ==========================================================================
7460    Assembly Syntax:       Rx32=and(#u8,asl(Rx32,#U5))
7461    C Intrinsic Prototype: Word32 Q6_R_and_asl_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7462    Instruction Type:      ALU64
7463    Execution Slots:       SLOT23
7464    ========================================================================== */
7465 
7466 #define Q6_R_and_asl_IRI __builtin_HEXAGON_S4_andi_asl_ri
7467 
7468 /* ==========================================================================
7469    Assembly Syntax:       Rx32=and(#u8,lsr(Rx32,#U5))
7470    C Intrinsic Prototype: Word32 Q6_R_and_lsr_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7471    Instruction Type:      ALU64
7472    Execution Slots:       SLOT23
7473    ========================================================================== */
7474 
7475 #define Q6_R_and_lsr_IRI __builtin_HEXAGON_S4_andi_lsr_ri
7476 
7477 /* ==========================================================================
7478    Assembly Syntax:       Rd32=add(clb(Rs32),#s6)
7479    C Intrinsic Prototype: Word32 Q6_R_add_clb_RI(Word32 Rs, Word32 Is6)
7480    Instruction Type:      S_2op
7481    Execution Slots:       SLOT23
7482    ========================================================================== */
7483 
7484 #define Q6_R_add_clb_RI __builtin_HEXAGON_S4_clbaddi
7485 
7486 /* ==========================================================================
7487    Assembly Syntax:       Rd32=add(clb(Rss32),#s6)
7488    C Intrinsic Prototype: Word32 Q6_R_add_clb_PI(Word64 Rss, Word32 Is6)
7489    Instruction Type:      S_2op
7490    Execution Slots:       SLOT23
7491    ========================================================================== */
7492 
7493 #define Q6_R_add_clb_PI __builtin_HEXAGON_S4_clbpaddi
7494 
7495 /* ==========================================================================
7496    Assembly Syntax:       Rd32=normamt(Rss32)
7497    C Intrinsic Prototype: Word32 Q6_R_normamt_P(Word64 Rss)
7498    Instruction Type:      S_2op
7499    Execution Slots:       SLOT23
7500    ========================================================================== */
7501 
7502 #define Q6_R_normamt_P __builtin_HEXAGON_S4_clbpnorm
7503 
7504 /* ==========================================================================
7505    Assembly Syntax:       Rd32=extract(Rs32,#u5,#U5)
7506    C Intrinsic Prototype: Word32 Q6_R_extract_RII(Word32 Rs, Word32 Iu5, Word32 IU5)
7507    Instruction Type:      S_2op
7508    Execution Slots:       SLOT23
7509    ========================================================================== */
7510 
7511 #define Q6_R_extract_RII __builtin_HEXAGON_S4_extract
7512 
7513 /* ==========================================================================
7514    Assembly Syntax:       Rd32=extract(Rs32,Rtt32)
7515    C Intrinsic Prototype: Word32 Q6_R_extract_RP(Word32 Rs, Word64 Rtt)
7516    Instruction Type:      S_3op
7517    Execution Slots:       SLOT23
7518    ========================================================================== */
7519 
7520 #define Q6_R_extract_RP __builtin_HEXAGON_S4_extract_rp
7521 
7522 /* ==========================================================================
7523    Assembly Syntax:       Rdd32=extract(Rss32,#u6,#U6)
7524    C Intrinsic Prototype: Word64 Q6_P_extract_PII(Word64 Rss, Word32 Iu6, Word32 IU6)
7525    Instruction Type:      S_2op
7526    Execution Slots:       SLOT23
7527    ========================================================================== */
7528 
7529 #define Q6_P_extract_PII __builtin_HEXAGON_S4_extractp
7530 
7531 /* ==========================================================================
7532    Assembly Syntax:       Rdd32=extract(Rss32,Rtt32)
7533    C Intrinsic Prototype: Word64 Q6_P_extract_PP(Word64 Rss, Word64 Rtt)
7534    Instruction Type:      S_3op
7535    Execution Slots:       SLOT23
7536    ========================================================================== */
7537 
7538 #define Q6_P_extract_PP __builtin_HEXAGON_S4_extractp_rp
7539 
7540 /* ==========================================================================
7541    Assembly Syntax:       Rd32=lsl(#s6,Rt32)
7542    C Intrinsic Prototype: Word32 Q6_R_lsl_IR(Word32 Is6, Word32 Rt)
7543    Instruction Type:      S_3op
7544    Execution Slots:       SLOT23
7545    ========================================================================== */
7546 
7547 #define Q6_R_lsl_IR __builtin_HEXAGON_S4_lsli
7548 
7549 /* ==========================================================================
7550    Assembly Syntax:       Pd4=!tstbit(Rs32,#u5)
7551    C Intrinsic Prototype: Byte Q6_p_not_tstbit_RI(Word32 Rs, Word32 Iu5)
7552    Instruction Type:      S_2op
7553    Execution Slots:       SLOT23
7554    ========================================================================== */
7555 
7556 #define Q6_p_not_tstbit_RI __builtin_HEXAGON_S4_ntstbit_i
7557 
7558 /* ==========================================================================
7559    Assembly Syntax:       Pd4=!tstbit(Rs32,Rt32)
7560    C Intrinsic Prototype: Byte Q6_p_not_tstbit_RR(Word32 Rs, Word32 Rt)
7561    Instruction Type:      S_3op
7562    Execution Slots:       SLOT23
7563    ========================================================================== */
7564 
7565 #define Q6_p_not_tstbit_RR __builtin_HEXAGON_S4_ntstbit_r
7566 
7567 /* ==========================================================================
7568    Assembly Syntax:       Rx32|=and(Rs32,#s10)
7569    C Intrinsic Prototype: Word32 Q6_R_andor_RI(Word32 Rx, Word32 Rs, Word32 Is10)
7570    Instruction Type:      ALU64
7571    Execution Slots:       SLOT23
7572    ========================================================================== */
7573 
7574 #define Q6_R_andor_RI __builtin_HEXAGON_S4_or_andi
7575 
7576 /* ==========================================================================
7577    Assembly Syntax:       Rx32=or(Ru32,and(Rx32,#s10))
7578    C Intrinsic Prototype: Word32 Q6_R_or_and_RRI(Word32 Ru, Word32 Rx, Word32 Is10)
7579    Instruction Type:      ALU64
7580    Execution Slots:       SLOT23
7581    ========================================================================== */
7582 
7583 #define Q6_R_or_and_RRI __builtin_HEXAGON_S4_or_andix
7584 
7585 /* ==========================================================================
7586    Assembly Syntax:       Rx32|=or(Rs32,#s10)
7587    C Intrinsic Prototype: Word32 Q6_R_oror_RI(Word32 Rx, Word32 Rs, Word32 Is10)
7588    Instruction Type:      ALU64
7589    Execution Slots:       SLOT23
7590    ========================================================================== */
7591 
7592 #define Q6_R_oror_RI __builtin_HEXAGON_S4_or_ori
7593 
7594 /* ==========================================================================
7595    Assembly Syntax:       Rx32=or(#u8,asl(Rx32,#U5))
7596    C Intrinsic Prototype: Word32 Q6_R_or_asl_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7597    Instruction Type:      ALU64
7598    Execution Slots:       SLOT23
7599    ========================================================================== */
7600 
7601 #define Q6_R_or_asl_IRI __builtin_HEXAGON_S4_ori_asl_ri
7602 
7603 /* ==========================================================================
7604    Assembly Syntax:       Rx32=or(#u8,lsr(Rx32,#U5))
7605    C Intrinsic Prototype: Word32 Q6_R_or_lsr_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7606    Instruction Type:      ALU64
7607    Execution Slots:       SLOT23
7608    ========================================================================== */
7609 
7610 #define Q6_R_or_lsr_IRI __builtin_HEXAGON_S4_ori_lsr_ri
7611 
7612 /* ==========================================================================
7613    Assembly Syntax:       Rd32=parity(Rs32,Rt32)
7614    C Intrinsic Prototype: Word32 Q6_R_parity_RR(Word32 Rs, Word32 Rt)
7615    Instruction Type:      ALU64
7616    Execution Slots:       SLOT23
7617    ========================================================================== */
7618 
7619 #define Q6_R_parity_RR __builtin_HEXAGON_S4_parity
7620 
7621 /* ==========================================================================
7622    Assembly Syntax:       Rd32=add(Rs32,sub(#s6,Ru32))
7623    C Intrinsic Prototype: Word32 Q6_R_add_sub_RIR(Word32 Rs, Word32 Is6, Word32 Ru)
7624    Instruction Type:      ALU64
7625    Execution Slots:       SLOT23
7626    ========================================================================== */
7627 
7628 #define Q6_R_add_sub_RIR __builtin_HEXAGON_S4_subaddi
7629 
7630 /* ==========================================================================
7631    Assembly Syntax:       Rx32=sub(#u8,asl(Rx32,#U5))
7632    C Intrinsic Prototype: Word32 Q6_R_sub_asl_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7633    Instruction Type:      ALU64
7634    Execution Slots:       SLOT23
7635    ========================================================================== */
7636 
7637 #define Q6_R_sub_asl_IRI __builtin_HEXAGON_S4_subi_asl_ri
7638 
7639 /* ==========================================================================
7640    Assembly Syntax:       Rx32=sub(#u8,lsr(Rx32,#U5))
7641    C Intrinsic Prototype: Word32 Q6_R_sub_lsr_IRI(Word32 Iu8, Word32 Rx, Word32 IU5)
7642    Instruction Type:      ALU64
7643    Execution Slots:       SLOT23
7644    ========================================================================== */
7645 
7646 #define Q6_R_sub_lsr_IRI __builtin_HEXAGON_S4_subi_lsr_ri
7647 
7648 /* ==========================================================================
7649    Assembly Syntax:       Rdd32=vrcrotate(Rss32,Rt32,#u2)
7650    C Intrinsic Prototype: Word64 Q6_P_vrcrotate_PRI(Word64 Rss, Word32 Rt, Word32 Iu2)
7651    Instruction Type:      S_3op
7652    Execution Slots:       SLOT23
7653    ========================================================================== */
7654 
7655 #define Q6_P_vrcrotate_PRI __builtin_HEXAGON_S4_vrcrotate
7656 
7657 /* ==========================================================================
7658    Assembly Syntax:       Rxx32+=vrcrotate(Rss32,Rt32,#u2)
7659    C Intrinsic Prototype: Word64 Q6_P_vrcrotateacc_PRI(Word64 Rxx, Word64 Rss, Word32 Rt, Word32 Iu2)
7660    Instruction Type:      S_3op
7661    Execution Slots:       SLOT23
7662    ========================================================================== */
7663 
7664 #define Q6_P_vrcrotateacc_PRI __builtin_HEXAGON_S4_vrcrotate_acc
7665 
7666 /* ==========================================================================
7667    Assembly Syntax:       Rdd32=vxaddsubh(Rss32,Rtt32):sat
7668    C Intrinsic Prototype: Word64 Q6_P_vxaddsubh_PP_sat(Word64 Rss, Word64 Rtt)
7669    Instruction Type:      S_3op
7670    Execution Slots:       SLOT23
7671    ========================================================================== */
7672 
7673 #define Q6_P_vxaddsubh_PP_sat __builtin_HEXAGON_S4_vxaddsubh
7674 
7675 /* ==========================================================================
7676    Assembly Syntax:       Rdd32=vxaddsubh(Rss32,Rtt32):rnd:>>1:sat
7677    C Intrinsic Prototype: Word64 Q6_P_vxaddsubh_PP_rnd_rs1_sat(Word64 Rss, Word64 Rtt)
7678    Instruction Type:      S_3op
7679    Execution Slots:       SLOT23
7680    ========================================================================== */
7681 
7682 #define Q6_P_vxaddsubh_PP_rnd_rs1_sat __builtin_HEXAGON_S4_vxaddsubhr
7683 
7684 /* ==========================================================================
7685    Assembly Syntax:       Rdd32=vxaddsubw(Rss32,Rtt32):sat
7686    C Intrinsic Prototype: Word64 Q6_P_vxaddsubw_PP_sat(Word64 Rss, Word64 Rtt)
7687    Instruction Type:      S_3op
7688    Execution Slots:       SLOT23
7689    ========================================================================== */
7690 
7691 #define Q6_P_vxaddsubw_PP_sat __builtin_HEXAGON_S4_vxaddsubw
7692 
7693 /* ==========================================================================
7694    Assembly Syntax:       Rdd32=vxsubaddh(Rss32,Rtt32):sat
7695    C Intrinsic Prototype: Word64 Q6_P_vxsubaddh_PP_sat(Word64 Rss, Word64 Rtt)
7696    Instruction Type:      S_3op
7697    Execution Slots:       SLOT23
7698    ========================================================================== */
7699 
7700 #define Q6_P_vxsubaddh_PP_sat __builtin_HEXAGON_S4_vxsubaddh
7701 
7702 /* ==========================================================================
7703    Assembly Syntax:       Rdd32=vxsubaddh(Rss32,Rtt32):rnd:>>1:sat
7704    C Intrinsic Prototype: Word64 Q6_P_vxsubaddh_PP_rnd_rs1_sat(Word64 Rss, Word64 Rtt)
7705    Instruction Type:      S_3op
7706    Execution Slots:       SLOT23
7707    ========================================================================== */
7708 
7709 #define Q6_P_vxsubaddh_PP_rnd_rs1_sat __builtin_HEXAGON_S4_vxsubaddhr
7710 
7711 /* ==========================================================================
7712    Assembly Syntax:       Rdd32=vxsubaddw(Rss32,Rtt32):sat
7713    C Intrinsic Prototype: Word64 Q6_P_vxsubaddw_PP_sat(Word64 Rss, Word64 Rtt)
7714    Instruction Type:      S_3op
7715    Execution Slots:       SLOT23
7716    ========================================================================== */
7717 
7718 #define Q6_P_vxsubaddw_PP_sat __builtin_HEXAGON_S4_vxsubaddw
7719 
7720 /* ==========================================================================
7721    Assembly Syntax:       Rd32=vasrhub(Rss32,#u4):rnd:sat
7722    C Intrinsic Prototype: Word32 Q6_R_vasrhub_PI_rnd_sat(Word64 Rss, Word32 Iu4)
7723    Instruction Type:      S_2op
7724    Execution Slots:       SLOT0123
7725    ========================================================================== */
7726 
7727 #define Q6_R_vasrhub_PI_rnd_sat __builtin_HEXAGON_S5_asrhub_rnd_sat_goodsyntax
7728 
7729 /* ==========================================================================
7730    Assembly Syntax:       Rd32=vasrhub(Rss32,#u4):sat
7731    C Intrinsic Prototype: Word32 Q6_R_vasrhub_PI_sat(Word64 Rss, Word32 Iu4)
7732    Instruction Type:      S_2op
7733    Execution Slots:       SLOT23
7734    ========================================================================== */
7735 
7736 #define Q6_R_vasrhub_PI_sat __builtin_HEXAGON_S5_asrhub_sat
7737 
7738 /* ==========================================================================
7739    Assembly Syntax:       Rd32=popcount(Rss32)
7740    C Intrinsic Prototype: Word32 Q6_R_popcount_P(Word64 Rss)
7741    Instruction Type:      S_2op
7742    Execution Slots:       SLOT23
7743    ========================================================================== */
7744 
7745 #define Q6_R_popcount_P __builtin_HEXAGON_S5_popcountp
7746 
7747 /* ==========================================================================
7748    Assembly Syntax:       Rdd32=vasrh(Rss32,#u4):rnd
7749    C Intrinsic Prototype: Word64 Q6_P_vasrh_PI_rnd(Word64 Rss, Word32 Iu4)
7750    Instruction Type:      S_2op
7751    Execution Slots:       SLOT0123
7752    ========================================================================== */
7753 
7754 #define Q6_P_vasrh_PI_rnd __builtin_HEXAGON_S5_vasrhrnd_goodsyntax
7755 
7756 /* ==========================================================================
7757    Assembly Syntax:       dccleana(Rs32)
7758    C Intrinsic Prototype: void Q6_dccleana_A(Address Rs)
7759    Instruction Type:      ST
7760    Execution Slots:       SLOT0
7761    ========================================================================== */
7762 
7763 #define Q6_dccleana_A __builtin_HEXAGON_Y2_dccleana
7764 
7765 /* ==========================================================================
7766    Assembly Syntax:       dccleaninva(Rs32)
7767    C Intrinsic Prototype: void Q6_dccleaninva_A(Address Rs)
7768    Instruction Type:      ST
7769    Execution Slots:       SLOT0
7770    ========================================================================== */
7771 
7772 #define Q6_dccleaninva_A __builtin_HEXAGON_Y2_dccleaninva
7773 
7774 /* ==========================================================================
7775    Assembly Syntax:       dcfetch(Rs32)
7776    C Intrinsic Prototype: void Q6_dcfetch_A(Address Rs)
7777    Instruction Type:      MAPPING
7778    Execution Slots:       SLOT0123
7779    ========================================================================== */
7780 
7781 #define Q6_dcfetch_A __builtin_HEXAGON_Y2_dcfetch
7782 
7783 /* ==========================================================================
7784    Assembly Syntax:       dcinva(Rs32)
7785    C Intrinsic Prototype: void Q6_dcinva_A(Address Rs)
7786    Instruction Type:      ST
7787    Execution Slots:       SLOT0
7788    ========================================================================== */
7789 
7790 #define Q6_dcinva_A __builtin_HEXAGON_Y2_dcinva
7791 
7792 /* ==========================================================================
7793    Assembly Syntax:       dczeroa(Rs32)
7794    C Intrinsic Prototype: void Q6_dczeroa_A(Address Rs)
7795    Instruction Type:      ST
7796    Execution Slots:       SLOT0
7797    ========================================================================== */
7798 
7799 #define Q6_dczeroa_A __builtin_HEXAGON_Y2_dczeroa
7800 
7801 /* ==========================================================================
7802    Assembly Syntax:       l2fetch(Rs32,Rt32)
7803    C Intrinsic Prototype: void Q6_l2fetch_AR(Address Rs, Word32 Rt)
7804    Instruction Type:      ST
7805    Execution Slots:       SLOT0
7806    ========================================================================== */
7807 
7808 #define Q6_l2fetch_AR __builtin_HEXAGON_Y4_l2fetch
7809 
7810 /* ==========================================================================
7811    Assembly Syntax:       l2fetch(Rs32,Rtt32)
7812    C Intrinsic Prototype: void Q6_l2fetch_AP(Address Rs, Word64 Rtt)
7813    Instruction Type:      ST
7814    Execution Slots:       SLOT0
7815    ========================================================================== */
7816 
7817 #define Q6_l2fetch_AP __builtin_HEXAGON_Y5_l2fetch
7818 
7819 #if __HEXAGON_ARCH__ >= 60
7820 /* ==========================================================================
7821    Assembly Syntax:       Rdd32=rol(Rss32,#u6)
7822    C Intrinsic Prototype: Word64 Q6_P_rol_PI(Word64 Rss, Word32 Iu6)
7823    Instruction Type:      S_2op
7824    Execution Slots:       SLOT23
7825    ========================================================================== */
7826 
7827 #define Q6_P_rol_PI __builtin_HEXAGON_S6_rol_i_p
7828 #endif /* __HEXAGON_ARCH___ >= 60 */
7829 
7830 #if __HEXAGON_ARCH__ >= 60
7831 /* ==========================================================================
7832    Assembly Syntax:       Rxx32+=rol(Rss32,#u6)
7833    C Intrinsic Prototype: Word64 Q6_P_rolacc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
7834    Instruction Type:      S_2op
7835    Execution Slots:       SLOT23
7836    ========================================================================== */
7837 
7838 #define Q6_P_rolacc_PI __builtin_HEXAGON_S6_rol_i_p_acc
7839 #endif /* __HEXAGON_ARCH___ >= 60 */
7840 
7841 #if __HEXAGON_ARCH__ >= 60
7842 /* ==========================================================================
7843    Assembly Syntax:       Rxx32&=rol(Rss32,#u6)
7844    C Intrinsic Prototype: Word64 Q6_P_roland_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
7845    Instruction Type:      S_2op
7846    Execution Slots:       SLOT23
7847    ========================================================================== */
7848 
7849 #define Q6_P_roland_PI __builtin_HEXAGON_S6_rol_i_p_and
7850 #endif /* __HEXAGON_ARCH___ >= 60 */
7851 
7852 #if __HEXAGON_ARCH__ >= 60
7853 /* ==========================================================================
7854    Assembly Syntax:       Rxx32-=rol(Rss32,#u6)
7855    C Intrinsic Prototype: Word64 Q6_P_rolnac_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
7856    Instruction Type:      S_2op
7857    Execution Slots:       SLOT23
7858    ========================================================================== */
7859 
7860 #define Q6_P_rolnac_PI __builtin_HEXAGON_S6_rol_i_p_nac
7861 #endif /* __HEXAGON_ARCH___ >= 60 */
7862 
7863 #if __HEXAGON_ARCH__ >= 60
7864 /* ==========================================================================
7865    Assembly Syntax:       Rxx32|=rol(Rss32,#u6)
7866    C Intrinsic Prototype: Word64 Q6_P_rolor_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
7867    Instruction Type:      S_2op
7868    Execution Slots:       SLOT23
7869    ========================================================================== */
7870 
7871 #define Q6_P_rolor_PI __builtin_HEXAGON_S6_rol_i_p_or
7872 #endif /* __HEXAGON_ARCH___ >= 60 */
7873 
7874 #if __HEXAGON_ARCH__ >= 60
7875 /* ==========================================================================
7876    Assembly Syntax:       Rxx32^=rol(Rss32,#u6)
7877    C Intrinsic Prototype: Word64 Q6_P_rolxacc_PI(Word64 Rxx, Word64 Rss, Word32 Iu6)
7878    Instruction Type:      S_2op
7879    Execution Slots:       SLOT23
7880    ========================================================================== */
7881 
7882 #define Q6_P_rolxacc_PI __builtin_HEXAGON_S6_rol_i_p_xacc
7883 #endif /* __HEXAGON_ARCH___ >= 60 */
7884 
7885 #if __HEXAGON_ARCH__ >= 60
7886 /* ==========================================================================
7887    Assembly Syntax:       Rd32=rol(Rs32,#u5)
7888    C Intrinsic Prototype: Word32 Q6_R_rol_RI(Word32 Rs, Word32 Iu5)
7889    Instruction Type:      S_2op
7890    Execution Slots:       SLOT23
7891    ========================================================================== */
7892 
7893 #define Q6_R_rol_RI __builtin_HEXAGON_S6_rol_i_r
7894 #endif /* __HEXAGON_ARCH___ >= 60 */
7895 
7896 #if __HEXAGON_ARCH__ >= 60
7897 /* ==========================================================================
7898    Assembly Syntax:       Rx32+=rol(Rs32,#u5)
7899    C Intrinsic Prototype: Word32 Q6_R_rolacc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
7900    Instruction Type:      S_2op
7901    Execution Slots:       SLOT23
7902    ========================================================================== */
7903 
7904 #define Q6_R_rolacc_RI __builtin_HEXAGON_S6_rol_i_r_acc
7905 #endif /* __HEXAGON_ARCH___ >= 60 */
7906 
7907 #if __HEXAGON_ARCH__ >= 60
7908 /* ==========================================================================
7909    Assembly Syntax:       Rx32&=rol(Rs32,#u5)
7910    C Intrinsic Prototype: Word32 Q6_R_roland_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
7911    Instruction Type:      S_2op
7912    Execution Slots:       SLOT23
7913    ========================================================================== */
7914 
7915 #define Q6_R_roland_RI __builtin_HEXAGON_S6_rol_i_r_and
7916 #endif /* __HEXAGON_ARCH___ >= 60 */
7917 
7918 #if __HEXAGON_ARCH__ >= 60
7919 /* ==========================================================================
7920    Assembly Syntax:       Rx32-=rol(Rs32,#u5)
7921    C Intrinsic Prototype: Word32 Q6_R_rolnac_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
7922    Instruction Type:      S_2op
7923    Execution Slots:       SLOT23
7924    ========================================================================== */
7925 
7926 #define Q6_R_rolnac_RI __builtin_HEXAGON_S6_rol_i_r_nac
7927 #endif /* __HEXAGON_ARCH___ >= 60 */
7928 
7929 #if __HEXAGON_ARCH__ >= 60
7930 /* ==========================================================================
7931    Assembly Syntax:       Rx32|=rol(Rs32,#u5)
7932    C Intrinsic Prototype: Word32 Q6_R_rolor_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
7933    Instruction Type:      S_2op
7934    Execution Slots:       SLOT23
7935    ========================================================================== */
7936 
7937 #define Q6_R_rolor_RI __builtin_HEXAGON_S6_rol_i_r_or
7938 #endif /* __HEXAGON_ARCH___ >= 60 */
7939 
7940 #if __HEXAGON_ARCH__ >= 60
7941 /* ==========================================================================
7942    Assembly Syntax:       Rx32^=rol(Rs32,#u5)
7943    C Intrinsic Prototype: Word32 Q6_R_rolxacc_RI(Word32 Rx, Word32 Rs, Word32 Iu5)
7944    Instruction Type:      S_2op
7945    Execution Slots:       SLOT23
7946    ========================================================================== */
7947 
7948 #define Q6_R_rolxacc_RI __builtin_HEXAGON_S6_rol_i_r_xacc
7949 #endif /* __HEXAGON_ARCH___ >= 60 */
7950 
7951 #if __HEXAGON_ARCH__ >= 62
7952 /* ==========================================================================
7953    Assembly Syntax:       Rdd32=vabsdiffb(Rtt32,Rss32)
7954    C Intrinsic Prototype: Word64 Q6_P_vabsdiffb_PP(Word64 Rtt, Word64 Rss)
7955    Instruction Type:      M
7956    Execution Slots:       SLOT23
7957    ========================================================================== */
7958 
7959 #define Q6_P_vabsdiffb_PP __builtin_HEXAGON_M6_vabsdiffb
7960 #endif /* __HEXAGON_ARCH___ >= 62 */
7961 
7962 #if __HEXAGON_ARCH__ >= 62
7963 /* ==========================================================================
7964    Assembly Syntax:       Rdd32=vabsdiffub(Rtt32,Rss32)
7965    C Intrinsic Prototype: Word64 Q6_P_vabsdiffub_PP(Word64 Rtt, Word64 Rss)
7966    Instruction Type:      M
7967    Execution Slots:       SLOT23
7968    ========================================================================== */
7969 
7970 #define Q6_P_vabsdiffub_PP __builtin_HEXAGON_M6_vabsdiffub
7971 #endif /* __HEXAGON_ARCH___ >= 62 */
7972 
7973 #if __HEXAGON_ARCH__ >= 62
7974 /* ==========================================================================
7975    Assembly Syntax:       Rdd32=vsplatb(Rs32)
7976    C Intrinsic Prototype: Word64 Q6_P_vsplatb_R(Word32 Rs)
7977    Instruction Type:      S_2op
7978    Execution Slots:       SLOT23
7979    ========================================================================== */
7980 
7981 #define Q6_P_vsplatb_R __builtin_HEXAGON_S6_vsplatrbp
7982 #endif /* __HEXAGON_ARCH___ >= 62 */
7983 
7984 #if __HEXAGON_ARCH__ >= 62
7985 /* ==========================================================================
7986    Assembly Syntax:       Rdd32=vtrunehb(Rss32,Rtt32)
7987    C Intrinsic Prototype: Word64 Q6_P_vtrunehb_PP(Word64 Rss, Word64 Rtt)
7988    Instruction Type:      S_3op
7989    Execution Slots:       SLOT23
7990    ========================================================================== */
7991 
7992 #define Q6_P_vtrunehb_PP __builtin_HEXAGON_S6_vtrunehb_ppp
7993 #endif /* __HEXAGON_ARCH___ >= 62 */
7994 
7995 #if __HEXAGON_ARCH__ >= 62
7996 /* ==========================================================================
7997    Assembly Syntax:       Rdd32=vtrunohb(Rss32,Rtt32)
7998    C Intrinsic Prototype: Word64 Q6_P_vtrunohb_PP(Word64 Rss, Word64 Rtt)
7999    Instruction Type:      S_3op
8000    Execution Slots:       SLOT23
8001    ========================================================================== */
8002 
8003 #define Q6_P_vtrunohb_PP __builtin_HEXAGON_S6_vtrunohb_ppp
8004 #endif /* __HEXAGON_ARCH___ >= 62 */
8005 
8006 #if __HEXAGON_ARCH__ >= 65
8007 /* ==========================================================================
8008    Assembly Syntax:       Pd4=!any8(vcmpb.eq(Rss32,Rtt32))
8009    C Intrinsic Prototype: Byte Q6_p_not_any8_vcmpb_eq_PP(Word64 Rss, Word64 Rtt)
8010    Instruction Type:      ALU64
8011    Execution Slots:       SLOT23
8012    ========================================================================== */
8013 
8014 #define Q6_p_not_any8_vcmpb_eq_PP __builtin_HEXAGON_A6_vcmpbeq_notany
8015 #endif /* __HEXAGON_ARCH___ >= 65 */
8016 
8017 #if __HEXAGON_ARCH__ >= 66
8018 /* ==========================================================================
8019    Assembly Syntax:       Rdd32=dfadd(Rss32,Rtt32)
8020    C Intrinsic Prototype: Float64 Q6_P_dfadd_PP(Float64 Rss, Float64 Rtt)
8021    Instruction Type:      M
8022    Execution Slots:       SLOT23
8023    ========================================================================== */
8024 
8025 #define Q6_P_dfadd_PP __builtin_HEXAGON_F2_dfadd
8026 #endif /* __HEXAGON_ARCH___ >= 66 */
8027 
8028 #if __HEXAGON_ARCH__ >= 66
8029 /* ==========================================================================
8030    Assembly Syntax:       Rdd32=dfsub(Rss32,Rtt32)
8031    C Intrinsic Prototype: Float64 Q6_P_dfsub_PP(Float64 Rss, Float64 Rtt)
8032    Instruction Type:      M
8033    Execution Slots:       SLOT23
8034    ========================================================================== */
8035 
8036 #define Q6_P_dfsub_PP __builtin_HEXAGON_F2_dfsub
8037 #endif /* __HEXAGON_ARCH___ >= 66 */
8038 
8039 #if __HEXAGON_ARCH__ >= 66
8040 /* ==========================================================================
8041    Assembly Syntax:       Rx32-=mpyi(Rs32,Rt32)
8042    C Intrinsic Prototype: Word32 Q6_R_mpyinac_RR(Word32 Rx, Word32 Rs, Word32 Rt)
8043    Instruction Type:      M
8044    Execution Slots:       SLOT23
8045    ========================================================================== */
8046 
8047 #define Q6_R_mpyinac_RR __builtin_HEXAGON_M2_mnaci
8048 #endif /* __HEXAGON_ARCH___ >= 66 */
8049 
8050 #if __HEXAGON_ARCH__ >= 66
8051 /* ==========================================================================
8052    Assembly Syntax:       Rd32=mask(#u5,#U5)
8053    C Intrinsic Prototype: Word32 Q6_R_mask_II(Word32 Iu5, Word32 IU5)
8054    Instruction Type:      S_2op
8055    Execution Slots:       SLOT23
8056    ========================================================================== */
8057 
8058 #define Q6_R_mask_II __builtin_HEXAGON_S2_mask
8059 #endif /* __HEXAGON_ARCH___ >= 66 */
8060 
8061 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8062 /* ==========================================================================
8063    Assembly Syntax:       Rd32=clip(Rs32,#u5)
8064    C Intrinsic Prototype: Word32 Q6_R_clip_RI(Word32 Rs, Word32 Iu5)
8065    Instruction Type:      S_2op
8066    Execution Slots:       SLOT23
8067    ========================================================================== */
8068 
8069 #define Q6_R_clip_RI __builtin_HEXAGON_A7_clip
8070 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8071 
8072 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8073 /* ==========================================================================
8074    Assembly Syntax:       Rdd32=cround(Rss32,#u6)
8075    C Intrinsic Prototype: Word64 Q6_P_cround_PI(Word64 Rss, Word32 Iu6)
8076    Instruction Type:      S_2op
8077    Execution Slots:       SLOT23
8078    ========================================================================== */
8079 
8080 #define Q6_P_cround_PI __builtin_HEXAGON_A7_croundd_ri
8081 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8082 
8083 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8084 /* ==========================================================================
8085    Assembly Syntax:       Rdd32=cround(Rss32,Rt32)
8086    C Intrinsic Prototype: Word64 Q6_P_cround_PR(Word64 Rss, Word32 Rt)
8087    Instruction Type:      S_3op
8088    Execution Slots:       SLOT23
8089    ========================================================================== */
8090 
8091 #define Q6_P_cround_PR __builtin_HEXAGON_A7_croundd_rr
8092 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8093 
8094 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8095 /* ==========================================================================
8096    Assembly Syntax:       Rdd32=vclip(Rss32,#u5)
8097    C Intrinsic Prototype: Word64 Q6_P_vclip_PI(Word64 Rss, Word32 Iu5)
8098    Instruction Type:      S_2op
8099    Execution Slots:       SLOT23
8100    ========================================================================== */
8101 
8102 #define Q6_P_vclip_PI __builtin_HEXAGON_A7_vclip
8103 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8104 
8105 #if __HEXAGON_ARCH__ >= 67
8106 /* ==========================================================================
8107    Assembly Syntax:       Rdd32=dfmax(Rss32,Rtt32)
8108    C Intrinsic Prototype: Float64 Q6_P_dfmax_PP(Float64 Rss, Float64 Rtt)
8109    Instruction Type:      M
8110    Execution Slots:       SLOT23
8111    ========================================================================== */
8112 
8113 #define Q6_P_dfmax_PP __builtin_HEXAGON_F2_dfmax
8114 #endif /* __HEXAGON_ARCH___ >= 67 */
8115 
8116 #if __HEXAGON_ARCH__ >= 67
8117 /* ==========================================================================
8118    Assembly Syntax:       Rdd32=dfmin(Rss32,Rtt32)
8119    C Intrinsic Prototype: Float64 Q6_P_dfmin_PP(Float64 Rss, Float64 Rtt)
8120    Instruction Type:      M
8121    Execution Slots:       SLOT23
8122    ========================================================================== */
8123 
8124 #define Q6_P_dfmin_PP __builtin_HEXAGON_F2_dfmin
8125 #endif /* __HEXAGON_ARCH___ >= 67 */
8126 
8127 #if __HEXAGON_ARCH__ >= 67
8128 /* ==========================================================================
8129    Assembly Syntax:       Rdd32=dfmpyfix(Rss32,Rtt32)
8130    C Intrinsic Prototype: Float64 Q6_P_dfmpyfix_PP(Float64 Rss, Float64 Rtt)
8131    Instruction Type:      M
8132    Execution Slots:       SLOT23
8133    ========================================================================== */
8134 
8135 #define Q6_P_dfmpyfix_PP __builtin_HEXAGON_F2_dfmpyfix
8136 #endif /* __HEXAGON_ARCH___ >= 67 */
8137 
8138 #if __HEXAGON_ARCH__ >= 67
8139 /* ==========================================================================
8140    Assembly Syntax:       Rxx32+=dfmpyhh(Rss32,Rtt32)
8141    C Intrinsic Prototype: Float64 Q6_P_dfmpyhhacc_PP(Float64 Rxx, Float64 Rss, Float64 Rtt)
8142    Instruction Type:      M
8143    Execution Slots:       SLOT23
8144    ========================================================================== */
8145 
8146 #define Q6_P_dfmpyhhacc_PP __builtin_HEXAGON_F2_dfmpyhh
8147 #endif /* __HEXAGON_ARCH___ >= 67 */
8148 
8149 #if __HEXAGON_ARCH__ >= 67
8150 /* ==========================================================================
8151    Assembly Syntax:       Rxx32+=dfmpylh(Rss32,Rtt32)
8152    C Intrinsic Prototype: Float64 Q6_P_dfmpylhacc_PP(Float64 Rxx, Float64 Rss, Float64 Rtt)
8153    Instruction Type:      M
8154    Execution Slots:       SLOT23
8155    ========================================================================== */
8156 
8157 #define Q6_P_dfmpylhacc_PP __builtin_HEXAGON_F2_dfmpylh
8158 #endif /* __HEXAGON_ARCH___ >= 67 */
8159 
8160 #if __HEXAGON_ARCH__ >= 67
8161 /* ==========================================================================
8162    Assembly Syntax:       Rdd32=dfmpyll(Rss32,Rtt32)
8163    C Intrinsic Prototype: Float64 Q6_P_dfmpyll_PP(Float64 Rss, Float64 Rtt)
8164    Instruction Type:      M
8165    Execution Slots:       SLOT23
8166    ========================================================================== */
8167 
8168 #define Q6_P_dfmpyll_PP __builtin_HEXAGON_F2_dfmpyll
8169 #endif /* __HEXAGON_ARCH___ >= 67 */
8170 
8171 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8172 /* ==========================================================================
8173    Assembly Syntax:       Rdd32=cmpyiw(Rss32,Rtt32)
8174    C Intrinsic Prototype: Word64 Q6_P_cmpyiw_PP(Word64 Rss, Word64 Rtt)
8175    Instruction Type:      M
8176    Execution Slots:       SLOT3
8177    ========================================================================== */
8178 
8179 #define Q6_P_cmpyiw_PP __builtin_HEXAGON_M7_dcmpyiw
8180 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8181 
8182 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8183 /* ==========================================================================
8184    Assembly Syntax:       Rxx32+=cmpyiw(Rss32,Rtt32)
8185    C Intrinsic Prototype: Word64 Q6_P_cmpyiwacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
8186    Instruction Type:      M
8187    Execution Slots:       SLOT3
8188    ========================================================================== */
8189 
8190 #define Q6_P_cmpyiwacc_PP __builtin_HEXAGON_M7_dcmpyiw_acc
8191 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8192 
8193 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8194 /* ==========================================================================
8195    Assembly Syntax:       Rdd32=cmpyiw(Rss32,Rtt32*)
8196    C Intrinsic Prototype: Word64 Q6_P_cmpyiw_PP_conj(Word64 Rss, Word64 Rtt)
8197    Instruction Type:      M
8198    Execution Slots:       SLOT3
8199    ========================================================================== */
8200 
8201 #define Q6_P_cmpyiw_PP_conj __builtin_HEXAGON_M7_dcmpyiwc
8202 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8203 
8204 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8205 /* ==========================================================================
8206    Assembly Syntax:       Rxx32+=cmpyiw(Rss32,Rtt32*)
8207    C Intrinsic Prototype: Word64 Q6_P_cmpyiwacc_PP_conj(Word64 Rxx, Word64 Rss, Word64 Rtt)
8208    Instruction Type:      M
8209    Execution Slots:       SLOT3
8210    ========================================================================== */
8211 
8212 #define Q6_P_cmpyiwacc_PP_conj __builtin_HEXAGON_M7_dcmpyiwc_acc
8213 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8214 
8215 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8216 /* ==========================================================================
8217    Assembly Syntax:       Rdd32=cmpyrw(Rss32,Rtt32)
8218    C Intrinsic Prototype: Word64 Q6_P_cmpyrw_PP(Word64 Rss, Word64 Rtt)
8219    Instruction Type:      M
8220    Execution Slots:       SLOT3
8221    ========================================================================== */
8222 
8223 #define Q6_P_cmpyrw_PP __builtin_HEXAGON_M7_dcmpyrw
8224 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8225 
8226 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8227 /* ==========================================================================
8228    Assembly Syntax:       Rxx32+=cmpyrw(Rss32,Rtt32)
8229    C Intrinsic Prototype: Word64 Q6_P_cmpyrwacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
8230    Instruction Type:      M
8231    Execution Slots:       SLOT3
8232    ========================================================================== */
8233 
8234 #define Q6_P_cmpyrwacc_PP __builtin_HEXAGON_M7_dcmpyrw_acc
8235 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8236 
8237 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8238 /* ==========================================================================
8239    Assembly Syntax:       Rdd32=cmpyrw(Rss32,Rtt32*)
8240    C Intrinsic Prototype: Word64 Q6_P_cmpyrw_PP_conj(Word64 Rss, Word64 Rtt)
8241    Instruction Type:      M
8242    Execution Slots:       SLOT3
8243    ========================================================================== */
8244 
8245 #define Q6_P_cmpyrw_PP_conj __builtin_HEXAGON_M7_dcmpyrwc
8246 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8247 
8248 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8249 /* ==========================================================================
8250    Assembly Syntax:       Rxx32+=cmpyrw(Rss32,Rtt32*)
8251    C Intrinsic Prototype: Word64 Q6_P_cmpyrwacc_PP_conj(Word64 Rxx, Word64 Rss, Word64 Rtt)
8252    Instruction Type:      M
8253    Execution Slots:       SLOT3
8254    ========================================================================== */
8255 
8256 #define Q6_P_cmpyrwacc_PP_conj __builtin_HEXAGON_M7_dcmpyrwc_acc
8257 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8258 
8259 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8260 /* ==========================================================================
8261    Assembly Syntax:       Rdd32=vdmpyw(Rss32,Rtt32)
8262    C Intrinsic Prototype: Word64 Q6_P_vdmpyw_PP(Word64 Rss, Word64 Rtt)
8263    Instruction Type:      M
8264    Execution Slots:       SLOT3
8265    ========================================================================== */
8266 
8267 #define Q6_P_vdmpyw_PP __builtin_HEXAGON_M7_vdmpy
8268 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8269 
8270 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8271 /* ==========================================================================
8272    Assembly Syntax:       Rxx32+=vdmpyw(Rss32,Rtt32)
8273    C Intrinsic Prototype: Word64 Q6_P_vdmpywacc_PP(Word64 Rxx, Word64 Rss, Word64 Rtt)
8274    Instruction Type:      M
8275    Execution Slots:       SLOT3
8276    ========================================================================== */
8277 
8278 #define Q6_P_vdmpywacc_PP __builtin_HEXAGON_M7_vdmpy_acc
8279 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8280 
8281 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8282 /* ==========================================================================
8283    Assembly Syntax:       Rd32=cmpyiw(Rss32,Rtt32):<<1:sat
8284    C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_s1_sat(Word64 Rss, Word64 Rtt)
8285    Instruction Type:      M
8286    Execution Slots:       SLOT3
8287    ========================================================================== */
8288 
8289 #define Q6_R_cmpyiw_PP_s1_sat __builtin_HEXAGON_M7_wcmpyiw
8290 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8291 
8292 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8293 /* ==========================================================================
8294    Assembly Syntax:       Rd32=cmpyiw(Rss32,Rtt32):<<1:rnd:sat
8295    C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
8296    Instruction Type:      M
8297    Execution Slots:       SLOT3
8298    ========================================================================== */
8299 
8300 #define Q6_R_cmpyiw_PP_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyiw_rnd
8301 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8302 
8303 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8304 /* ==========================================================================
8305    Assembly Syntax:       Rd32=cmpyiw(Rss32,Rtt32*):<<1:sat
8306    C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_conj_s1_sat(Word64 Rss, Word64 Rtt)
8307    Instruction Type:      M
8308    Execution Slots:       SLOT3
8309    ========================================================================== */
8310 
8311 #define Q6_R_cmpyiw_PP_conj_s1_sat __builtin_HEXAGON_M7_wcmpyiwc
8312 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8313 
8314 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8315 /* ==========================================================================
8316    Assembly Syntax:       Rd32=cmpyiw(Rss32,Rtt32*):<<1:rnd:sat
8317    C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_conj_s1_rnd_sat(Word64 Rss, Word64 Rtt)
8318    Instruction Type:      M
8319    Execution Slots:       SLOT3
8320    ========================================================================== */
8321 
8322 #define Q6_R_cmpyiw_PP_conj_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyiwc_rnd
8323 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8324 
8325 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8326 /* ==========================================================================
8327    Assembly Syntax:       Rd32=cmpyrw(Rss32,Rtt32):<<1:sat
8328    C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_s1_sat(Word64 Rss, Word64 Rtt)
8329    Instruction Type:      M
8330    Execution Slots:       SLOT3
8331    ========================================================================== */
8332 
8333 #define Q6_R_cmpyrw_PP_s1_sat __builtin_HEXAGON_M7_wcmpyrw
8334 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8335 
8336 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8337 /* ==========================================================================
8338    Assembly Syntax:       Rd32=cmpyrw(Rss32,Rtt32):<<1:rnd:sat
8339    C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)
8340    Instruction Type:      M
8341    Execution Slots:       SLOT3
8342    ========================================================================== */
8343 
8344 #define Q6_R_cmpyrw_PP_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyrw_rnd
8345 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8346 
8347 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8348 /* ==========================================================================
8349    Assembly Syntax:       Rd32=cmpyrw(Rss32,Rtt32*):<<1:sat
8350    C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_conj_s1_sat(Word64 Rss, Word64 Rtt)
8351    Instruction Type:      M
8352    Execution Slots:       SLOT3
8353    ========================================================================== */
8354 
8355 #define Q6_R_cmpyrw_PP_conj_s1_sat __builtin_HEXAGON_M7_wcmpyrwc
8356 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8357 
8358 #if __HEXAGON_ARCH__ >= 67 && defined __HEXAGON_AUDIO__
8359 /* ==========================================================================
8360    Assembly Syntax:       Rd32=cmpyrw(Rss32,Rtt32*):<<1:rnd:sat
8361    C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_conj_s1_rnd_sat(Word64 Rss, Word64 Rtt)
8362    Instruction Type:      M
8363    Execution Slots:       SLOT3
8364    ========================================================================== */
8365 
8366 #define Q6_R_cmpyrw_PP_conj_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyrwc_rnd
8367 #endif /* __HEXAGON_ARCH___ >= 67  && defined __HEXAGON_AUDIO__*/
8368 
8369 #if __HEXAGON_ARCH__ >= 68
8370 /* ==========================================================================
8371    Assembly Syntax:       dmlink(Rs32,Rt32)
8372    C Intrinsic Prototype: void Q6_dmlink_AA(Address Rs, Address Rt)
8373    Instruction Type:      ST
8374    Execution Slots:       SLOT0
8375    ========================================================================== */
8376 
8377 #define Q6_dmlink_AA __builtin_HEXAGON_Y6_dmlink
8378 #endif /* __HEXAGON_ARCH___ >= 68 */
8379 
8380 #if __HEXAGON_ARCH__ >= 68
8381 /* ==========================================================================
8382    Assembly Syntax:       Rd32=dmpause
8383    C Intrinsic Prototype: Word32 Q6_R_dmpause()
8384    Instruction Type:      ST
8385    Execution Slots:       SLOT0
8386    ========================================================================== */
8387 
8388 #define Q6_R_dmpause __builtin_HEXAGON_Y6_dmpause
8389 #endif /* __HEXAGON_ARCH___ >= 68 */
8390 
8391 #if __HEXAGON_ARCH__ >= 68
8392 /* ==========================================================================
8393    Assembly Syntax:       Rd32=dmpoll
8394    C Intrinsic Prototype: Word32 Q6_R_dmpoll()
8395    Instruction Type:      ST
8396    Execution Slots:       SLOT0
8397    ========================================================================== */
8398 
8399 #define Q6_R_dmpoll __builtin_HEXAGON_Y6_dmpoll
8400 #endif /* __HEXAGON_ARCH___ >= 68 */
8401 
8402 #if __HEXAGON_ARCH__ >= 68
8403 /* ==========================================================================
8404    Assembly Syntax:       dmresume(Rs32)
8405    C Intrinsic Prototype: void Q6_dmresume_A(Address Rs)
8406    Instruction Type:      ST
8407    Execution Slots:       SLOT0
8408    ========================================================================== */
8409 
8410 #define Q6_dmresume_A __builtin_HEXAGON_Y6_dmresume
8411 #endif /* __HEXAGON_ARCH___ >= 68 */
8412 
8413 #if __HEXAGON_ARCH__ >= 68
8414 /* ==========================================================================
8415    Assembly Syntax:       dmstart(Rs32)
8416    C Intrinsic Prototype: void Q6_dmstart_A(Address Rs)
8417    Instruction Type:      ST
8418    Execution Slots:       SLOT0
8419    ========================================================================== */
8420 
8421 #define Q6_dmstart_A __builtin_HEXAGON_Y6_dmstart
8422 #endif /* __HEXAGON_ARCH___ >= 68 */
8423 
8424 #if __HEXAGON_ARCH__ >= 68
8425 /* ==========================================================================
8426    Assembly Syntax:       Rd32=dmwait
8427    C Intrinsic Prototype: Word32 Q6_R_dmwait()
8428    Instruction Type:      ST
8429    Execution Slots:       SLOT0
8430    ========================================================================== */
8431 
8432 #define Q6_R_dmwait __builtin_HEXAGON_Y6_dmwait
8433 #endif /* __HEXAGON_ARCH___ >= 68 */
8434 
8435 #include <hexagon_circ_brev_intrinsics.h>
8436 #ifdef __HVX__
8437 #include <hvx_hexagon_protos.h>
8438 #endif /* __HVX__ */
8439 #endif
8440