8440 lines · c
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-exception6//7//===----------------------------------------------------------------------===//8// Automatically generated file, do not edit!9//===----------------------------------------------------------------------===//10 11 12 13#ifndef __HEXAGON_PROTOS_H_14#define __HEXAGON_PROTOS_H_ 115 16/* ==========================================================================17 Assembly Syntax: Rd32=abs(Rs32)18 C Intrinsic Prototype: Word32 Q6_R_abs_R(Word32 Rs)19 Instruction Type: S_2op20 Execution Slots: SLOT2321 ========================================================================== */22 23#define Q6_R_abs_R __builtin_HEXAGON_A2_abs24 25/* ==========================================================================26 Assembly Syntax: Rdd32=abs(Rss32)27 C Intrinsic Prototype: Word64 Q6_P_abs_P(Word64 Rss)28 Instruction Type: S_2op29 Execution Slots: SLOT2330 ========================================================================== */31 32#define Q6_P_abs_P __builtin_HEXAGON_A2_absp33 34/* ==========================================================================35 Assembly Syntax: Rd32=abs(Rs32):sat36 C Intrinsic Prototype: Word32 Q6_R_abs_R_sat(Word32 Rs)37 Instruction Type: S_2op38 Execution Slots: SLOT2339 ========================================================================== */40 41#define Q6_R_abs_R_sat __builtin_HEXAGON_A2_abssat42 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_3op47 Execution Slots: SLOT012348 ========================================================================== */49 50#define Q6_R_add_RR __builtin_HEXAGON_A2_add51 52/* ==========================================================================53 Assembly Syntax: Rd32=add(Rt32.h,Rs32.h):<<1654 C Intrinsic Prototype: Word32 Q6_R_add_RhRh_s16(Word32 Rt, Word32 Rs)55 Instruction Type: ALU6456 Execution Slots: SLOT2357 ========================================================================== */58 59#define Q6_R_add_RhRh_s16 __builtin_HEXAGON_A2_addh_h16_hh60 61/* ==========================================================================62 Assembly Syntax: Rd32=add(Rt32.h,Rs32.l):<<1663 C Intrinsic Prototype: Word32 Q6_R_add_RhRl_s16(Word32 Rt, Word32 Rs)64 Instruction Type: ALU6465 Execution Slots: SLOT2366 ========================================================================== */67 68#define Q6_R_add_RhRl_s16 __builtin_HEXAGON_A2_addh_h16_hl69 70/* ==========================================================================71 Assembly Syntax: Rd32=add(Rt32.l,Rs32.h):<<1672 C Intrinsic Prototype: Word32 Q6_R_add_RlRh_s16(Word32 Rt, Word32 Rs)73 Instruction Type: ALU6474 Execution Slots: SLOT2375 ========================================================================== */76 77#define Q6_R_add_RlRh_s16 __builtin_HEXAGON_A2_addh_h16_lh78 79/* ==========================================================================80 Assembly Syntax: Rd32=add(Rt32.l,Rs32.l):<<1681 C Intrinsic Prototype: Word32 Q6_R_add_RlRl_s16(Word32 Rt, Word32 Rs)82 Instruction Type: ALU6483 Execution Slots: SLOT2384 ========================================================================== */85 86#define Q6_R_add_RlRl_s16 __builtin_HEXAGON_A2_addh_h16_ll87 88/* ==========================================================================89 Assembly Syntax: Rd32=add(Rt32.h,Rs32.h):sat:<<1690 C Intrinsic Prototype: Word32 Q6_R_add_RhRh_sat_s16(Word32 Rt, Word32 Rs)91 Instruction Type: ALU6492 Execution Slots: SLOT2393 ========================================================================== */94 95#define Q6_R_add_RhRh_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_hh96 97/* ==========================================================================98 Assembly Syntax: Rd32=add(Rt32.h,Rs32.l):sat:<<1699 C Intrinsic Prototype: Word32 Q6_R_add_RhRl_sat_s16(Word32 Rt, Word32 Rs)100 Instruction Type: ALU64101 Execution Slots: SLOT23102 ========================================================================== */103 104#define Q6_R_add_RhRl_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_hl105 106/* ==========================================================================107 Assembly Syntax: Rd32=add(Rt32.l,Rs32.h):sat:<<16108 C Intrinsic Prototype: Word32 Q6_R_add_RlRh_sat_s16(Word32 Rt, Word32 Rs)109 Instruction Type: ALU64110 Execution Slots: SLOT23111 ========================================================================== */112 113#define Q6_R_add_RlRh_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_lh114 115/* ==========================================================================116 Assembly Syntax: Rd32=add(Rt32.l,Rs32.l):sat:<<16117 C Intrinsic Prototype: Word32 Q6_R_add_RlRl_sat_s16(Word32 Rt, Word32 Rs)118 Instruction Type: ALU64119 Execution Slots: SLOT23120 ========================================================================== */121 122#define Q6_R_add_RlRl_sat_s16 __builtin_HEXAGON_A2_addh_h16_sat_ll123 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: ALU64128 Execution Slots: SLOT23129 ========================================================================== */130 131#define Q6_R_add_RlRh __builtin_HEXAGON_A2_addh_l16_hl132 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: ALU64137 Execution Slots: SLOT23138 ========================================================================== */139 140#define Q6_R_add_RlRl __builtin_HEXAGON_A2_addh_l16_ll141 142/* ==========================================================================143 Assembly Syntax: Rd32=add(Rt32.l,Rs32.h):sat144 C Intrinsic Prototype: Word32 Q6_R_add_RlRh_sat(Word32 Rt, Word32 Rs)145 Instruction Type: ALU64146 Execution Slots: SLOT23147 ========================================================================== */148 149#define Q6_R_add_RlRh_sat __builtin_HEXAGON_A2_addh_l16_sat_hl150 151/* ==========================================================================152 Assembly Syntax: Rd32=add(Rt32.l,Rs32.l):sat153 C Intrinsic Prototype: Word32 Q6_R_add_RlRl_sat(Word32 Rt, Word32 Rs)154 Instruction Type: ALU64155 Execution Slots: SLOT23156 ========================================================================== */157 158#define Q6_R_add_RlRl_sat __builtin_HEXAGON_A2_addh_l16_sat_ll159 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_ADDI164 Execution Slots: SLOT0123165 ========================================================================== */166 167#define Q6_R_add_RI __builtin_HEXAGON_A2_addi168 169/* ==========================================================================170 Assembly Syntax: Rdd32=add(Rss32,Rtt32)171 C Intrinsic Prototype: Word64 Q6_P_add_PP(Word64 Rss, Word64 Rtt)172 Instruction Type: ALU64173 Execution Slots: SLOT23174 ========================================================================== */175 176#define Q6_P_add_PP __builtin_HEXAGON_A2_addp177 178/* ==========================================================================179 Assembly Syntax: Rdd32=add(Rss32,Rtt32):sat180 C Intrinsic Prototype: Word64 Q6_P_add_PP_sat(Word64 Rss, Word64 Rtt)181 Instruction Type: ALU64182 Execution Slots: SLOT23183 ========================================================================== */184 185#define Q6_P_add_PP_sat __builtin_HEXAGON_A2_addpsat186 187/* ==========================================================================188 Assembly Syntax: Rd32=add(Rs32,Rt32):sat189 C Intrinsic Prototype: Word32 Q6_R_add_RR_sat(Word32 Rs, Word32 Rt)190 Instruction Type: ALU32_3op191 Execution Slots: SLOT0123192 ========================================================================== */193 194#define Q6_R_add_RR_sat __builtin_HEXAGON_A2_addsat195 196/* ==========================================================================197 Assembly Syntax: Rdd32=add(Rs32,Rtt32)198 C Intrinsic Prototype: Word64 Q6_P_add_RP(Word32 Rs, Word64 Rtt)199 Instruction Type: ALU64200 Execution Slots: SLOT0123201 ========================================================================== */202 203#define Q6_P_add_RP __builtin_HEXAGON_A2_addsp204 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_3op209 Execution Slots: SLOT0123210 ========================================================================== */211 212#define Q6_R_and_RR __builtin_HEXAGON_A2_and213 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_2op218 Execution Slots: SLOT0123219 ========================================================================== */220 221#define Q6_R_and_RI __builtin_HEXAGON_A2_andir222 223/* ==========================================================================224 Assembly Syntax: Rdd32=and(Rss32,Rtt32)225 C Intrinsic Prototype: Word64 Q6_P_and_PP(Word64 Rss, Word64 Rtt)226 Instruction Type: ALU64227 Execution Slots: SLOT23228 ========================================================================== */229 230#define Q6_P_and_PP __builtin_HEXAGON_A2_andp231 232/* ==========================================================================233 Assembly Syntax: Rd32=aslh(Rs32)234 C Intrinsic Prototype: Word32 Q6_R_aslh_R(Word32 Rs)235 Instruction Type: ALU32_2op236 Execution Slots: SLOT0123237 ========================================================================== */238 239#define Q6_R_aslh_R __builtin_HEXAGON_A2_aslh240 241/* ==========================================================================242 Assembly Syntax: Rd32=asrh(Rs32)243 C Intrinsic Prototype: Word32 Q6_R_asrh_R(Word32 Rs)244 Instruction Type: ALU32_2op245 Execution Slots: SLOT0123246 ========================================================================== */247 248#define Q6_R_asrh_R __builtin_HEXAGON_A2_asrh249 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_3op254 Execution Slots: SLOT0123255 ========================================================================== */256 257#define Q6_R_combine_RhRh __builtin_HEXAGON_A2_combine_hh258 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_3op263 Execution Slots: SLOT0123264 ========================================================================== */265 266#define Q6_R_combine_RhRl __builtin_HEXAGON_A2_combine_hl267 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_3op272 Execution Slots: SLOT0123273 ========================================================================== */274 275#define Q6_R_combine_RlRh __builtin_HEXAGON_A2_combine_lh276 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_3op281 Execution Slots: SLOT0123282 ========================================================================== */283 284#define Q6_R_combine_RlRl __builtin_HEXAGON_A2_combine_ll285 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_2op290 Execution Slots: SLOT0123291 ========================================================================== */292 293#define Q6_P_combine_II __builtin_HEXAGON_A2_combineii294 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_3op299 Execution Slots: SLOT0123300 ========================================================================== */301 302#define Q6_P_combine_RR __builtin_HEXAGON_A2_combinew303 304/* ==========================================================================305 Assembly Syntax: Rd32=max(Rs32,Rt32)306 C Intrinsic Prototype: Word32 Q6_R_max_RR(Word32 Rs, Word32 Rt)307 Instruction Type: ALU64308 Execution Slots: SLOT23309 ========================================================================== */310 311#define Q6_R_max_RR __builtin_HEXAGON_A2_max312 313/* ==========================================================================314 Assembly Syntax: Rdd32=max(Rss32,Rtt32)315 C Intrinsic Prototype: Word64 Q6_P_max_PP(Word64 Rss, Word64 Rtt)316 Instruction Type: ALU64317 Execution Slots: SLOT23318 ========================================================================== */319 320#define Q6_P_max_PP __builtin_HEXAGON_A2_maxp321 322/* ==========================================================================323 Assembly Syntax: Rd32=maxu(Rs32,Rt32)324 C Intrinsic Prototype: UWord32 Q6_R_maxu_RR(Word32 Rs, Word32 Rt)325 Instruction Type: ALU64326 Execution Slots: SLOT23327 ========================================================================== */328 329#define Q6_R_maxu_RR __builtin_HEXAGON_A2_maxu330 331/* ==========================================================================332 Assembly Syntax: Rdd32=maxu(Rss32,Rtt32)333 C Intrinsic Prototype: UWord64 Q6_P_maxu_PP(Word64 Rss, Word64 Rtt)334 Instruction Type: ALU64335 Execution Slots: SLOT23336 ========================================================================== */337 338#define Q6_P_maxu_PP __builtin_HEXAGON_A2_maxup339 340/* ==========================================================================341 Assembly Syntax: Rd32=min(Rt32,Rs32)342 C Intrinsic Prototype: Word32 Q6_R_min_RR(Word32 Rt, Word32 Rs)343 Instruction Type: ALU64344 Execution Slots: SLOT23345 ========================================================================== */346 347#define Q6_R_min_RR __builtin_HEXAGON_A2_min348 349/* ==========================================================================350 Assembly Syntax: Rdd32=min(Rtt32,Rss32)351 C Intrinsic Prototype: Word64 Q6_P_min_PP(Word64 Rtt, Word64 Rss)352 Instruction Type: ALU64353 Execution Slots: SLOT23354 ========================================================================== */355 356#define Q6_P_min_PP __builtin_HEXAGON_A2_minp357 358/* ==========================================================================359 Assembly Syntax: Rd32=minu(Rt32,Rs32)360 C Intrinsic Prototype: UWord32 Q6_R_minu_RR(Word32 Rt, Word32 Rs)361 Instruction Type: ALU64362 Execution Slots: SLOT23363 ========================================================================== */364 365#define Q6_R_minu_RR __builtin_HEXAGON_A2_minu366 367/* ==========================================================================368 Assembly Syntax: Rdd32=minu(Rtt32,Rss32)369 C Intrinsic Prototype: UWord64 Q6_P_minu_PP(Word64 Rtt, Word64 Rss)370 Instruction Type: ALU64371 Execution Slots: SLOT23372 ========================================================================== */373 374#define Q6_P_minu_PP __builtin_HEXAGON_A2_minup375 376/* ==========================================================================377 Assembly Syntax: Rd32=neg(Rs32)378 C Intrinsic Prototype: Word32 Q6_R_neg_R(Word32 Rs)379 Instruction Type: ALU32_2op380 Execution Slots: SLOT0123381 ========================================================================== */382 383#define Q6_R_neg_R __builtin_HEXAGON_A2_neg384 385/* ==========================================================================386 Assembly Syntax: Rdd32=neg(Rss32)387 C Intrinsic Prototype: Word64 Q6_P_neg_P(Word64 Rss)388 Instruction Type: S_2op389 Execution Slots: SLOT23390 ========================================================================== */391 392#define Q6_P_neg_P __builtin_HEXAGON_A2_negp393 394/* ==========================================================================395 Assembly Syntax: Rd32=neg(Rs32):sat396 C Intrinsic Prototype: Word32 Q6_R_neg_R_sat(Word32 Rs)397 Instruction Type: S_2op398 Execution Slots: SLOT23399 ========================================================================== */400 401#define Q6_R_neg_R_sat __builtin_HEXAGON_A2_negsat402 403/* ==========================================================================404 Assembly Syntax: Rd32=not(Rs32)405 C Intrinsic Prototype: Word32 Q6_R_not_R(Word32 Rs)406 Instruction Type: ALU32_2op407 Execution Slots: SLOT0123408 ========================================================================== */409 410#define Q6_R_not_R __builtin_HEXAGON_A2_not411 412/* ==========================================================================413 Assembly Syntax: Rdd32=not(Rss32)414 C Intrinsic Prototype: Word64 Q6_P_not_P(Word64 Rss)415 Instruction Type: S_2op416 Execution Slots: SLOT23417 ========================================================================== */418 419#define Q6_P_not_P __builtin_HEXAGON_A2_notp420 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_3op425 Execution Slots: SLOT0123426 ========================================================================== */427 428#define Q6_R_or_RR __builtin_HEXAGON_A2_or429 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_2op434 Execution Slots: SLOT0123435 ========================================================================== */436 437#define Q6_R_or_RI __builtin_HEXAGON_A2_orir438 439/* ==========================================================================440 Assembly Syntax: Rdd32=or(Rss32,Rtt32)441 C Intrinsic Prototype: Word64 Q6_P_or_PP(Word64 Rss, Word64 Rtt)442 Instruction Type: ALU64443 Execution Slots: SLOT23444 ========================================================================== */445 446#define Q6_P_or_PP __builtin_HEXAGON_A2_orp447 448/* ==========================================================================449 Assembly Syntax: Rd32=round(Rss32):sat450 C Intrinsic Prototype: Word32 Q6_R_round_P_sat(Word64 Rss)451 Instruction Type: S_2op452 Execution Slots: SLOT23453 ========================================================================== */454 455#define Q6_R_round_P_sat __builtin_HEXAGON_A2_roundsat456 457/* ==========================================================================458 Assembly Syntax: Rd32=sat(Rss32)459 C Intrinsic Prototype: Word32 Q6_R_sat_P(Word64 Rss)460 Instruction Type: S_2op461 Execution Slots: SLOT23462 ========================================================================== */463 464#define Q6_R_sat_P __builtin_HEXAGON_A2_sat465 466/* ==========================================================================467 Assembly Syntax: Rd32=satb(Rs32)468 C Intrinsic Prototype: Word32 Q6_R_satb_R(Word32 Rs)469 Instruction Type: S_2op470 Execution Slots: SLOT23471 ========================================================================== */472 473#define Q6_R_satb_R __builtin_HEXAGON_A2_satb474 475/* ==========================================================================476 Assembly Syntax: Rd32=sath(Rs32)477 C Intrinsic Prototype: Word32 Q6_R_sath_R(Word32 Rs)478 Instruction Type: S_2op479 Execution Slots: SLOT23480 ========================================================================== */481 482#define Q6_R_sath_R __builtin_HEXAGON_A2_sath483 484/* ==========================================================================485 Assembly Syntax: Rd32=satub(Rs32)486 C Intrinsic Prototype: Word32 Q6_R_satub_R(Word32 Rs)487 Instruction Type: S_2op488 Execution Slots: SLOT23489 ========================================================================== */490 491#define Q6_R_satub_R __builtin_HEXAGON_A2_satub492 493/* ==========================================================================494 Assembly Syntax: Rd32=satuh(Rs32)495 C Intrinsic Prototype: Word32 Q6_R_satuh_R(Word32 Rs)496 Instruction Type: S_2op497 Execution Slots: SLOT23498 ========================================================================== */499 500#define Q6_R_satuh_R __builtin_HEXAGON_A2_satuh501 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_3op506 Execution Slots: SLOT0123507 ========================================================================== */508 509#define Q6_R_sub_RR __builtin_HEXAGON_A2_sub510 511/* ==========================================================================512 Assembly Syntax: Rd32=sub(Rt32.h,Rs32.h):<<16513 C Intrinsic Prototype: Word32 Q6_R_sub_RhRh_s16(Word32 Rt, Word32 Rs)514 Instruction Type: ALU64515 Execution Slots: SLOT23516 ========================================================================== */517 518#define Q6_R_sub_RhRh_s16 __builtin_HEXAGON_A2_subh_h16_hh519 520/* ==========================================================================521 Assembly Syntax: Rd32=sub(Rt32.h,Rs32.l):<<16522 C Intrinsic Prototype: Word32 Q6_R_sub_RhRl_s16(Word32 Rt, Word32 Rs)523 Instruction Type: ALU64524 Execution Slots: SLOT23525 ========================================================================== */526 527#define Q6_R_sub_RhRl_s16 __builtin_HEXAGON_A2_subh_h16_hl528 529/* ==========================================================================530 Assembly Syntax: Rd32=sub(Rt32.l,Rs32.h):<<16531 C Intrinsic Prototype: Word32 Q6_R_sub_RlRh_s16(Word32 Rt, Word32 Rs)532 Instruction Type: ALU64533 Execution Slots: SLOT23534 ========================================================================== */535 536#define Q6_R_sub_RlRh_s16 __builtin_HEXAGON_A2_subh_h16_lh537 538/* ==========================================================================539 Assembly Syntax: Rd32=sub(Rt32.l,Rs32.l):<<16540 C Intrinsic Prototype: Word32 Q6_R_sub_RlRl_s16(Word32 Rt, Word32 Rs)541 Instruction Type: ALU64542 Execution Slots: SLOT23543 ========================================================================== */544 545#define Q6_R_sub_RlRl_s16 __builtin_HEXAGON_A2_subh_h16_ll546 547/* ==========================================================================548 Assembly Syntax: Rd32=sub(Rt32.h,Rs32.h):sat:<<16549 C Intrinsic Prototype: Word32 Q6_R_sub_RhRh_sat_s16(Word32 Rt, Word32 Rs)550 Instruction Type: ALU64551 Execution Slots: SLOT23552 ========================================================================== */553 554#define Q6_R_sub_RhRh_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_hh555 556/* ==========================================================================557 Assembly Syntax: Rd32=sub(Rt32.h,Rs32.l):sat:<<16558 C Intrinsic Prototype: Word32 Q6_R_sub_RhRl_sat_s16(Word32 Rt, Word32 Rs)559 Instruction Type: ALU64560 Execution Slots: SLOT23561 ========================================================================== */562 563#define Q6_R_sub_RhRl_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_hl564 565/* ==========================================================================566 Assembly Syntax: Rd32=sub(Rt32.l,Rs32.h):sat:<<16567 C Intrinsic Prototype: Word32 Q6_R_sub_RlRh_sat_s16(Word32 Rt, Word32 Rs)568 Instruction Type: ALU64569 Execution Slots: SLOT23570 ========================================================================== */571 572#define Q6_R_sub_RlRh_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_lh573 574/* ==========================================================================575 Assembly Syntax: Rd32=sub(Rt32.l,Rs32.l):sat:<<16576 C Intrinsic Prototype: Word32 Q6_R_sub_RlRl_sat_s16(Word32 Rt, Word32 Rs)577 Instruction Type: ALU64578 Execution Slots: SLOT23579 ========================================================================== */580 581#define Q6_R_sub_RlRl_sat_s16 __builtin_HEXAGON_A2_subh_h16_sat_ll582 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: ALU64587 Execution Slots: SLOT23588 ========================================================================== */589 590#define Q6_R_sub_RlRh __builtin_HEXAGON_A2_subh_l16_hl591 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: ALU64596 Execution Slots: SLOT23597 ========================================================================== */598 599#define Q6_R_sub_RlRl __builtin_HEXAGON_A2_subh_l16_ll600 601/* ==========================================================================602 Assembly Syntax: Rd32=sub(Rt32.l,Rs32.h):sat603 C Intrinsic Prototype: Word32 Q6_R_sub_RlRh_sat(Word32 Rt, Word32 Rs)604 Instruction Type: ALU64605 Execution Slots: SLOT23606 ========================================================================== */607 608#define Q6_R_sub_RlRh_sat __builtin_HEXAGON_A2_subh_l16_sat_hl609 610/* ==========================================================================611 Assembly Syntax: Rd32=sub(Rt32.l,Rs32.l):sat612 C Intrinsic Prototype: Word32 Q6_R_sub_RlRl_sat(Word32 Rt, Word32 Rs)613 Instruction Type: ALU64614 Execution Slots: SLOT23615 ========================================================================== */616 617#define Q6_R_sub_RlRl_sat __builtin_HEXAGON_A2_subh_l16_sat_ll618 619/* ==========================================================================620 Assembly Syntax: Rdd32=sub(Rtt32,Rss32)621 C Intrinsic Prototype: Word64 Q6_P_sub_PP(Word64 Rtt, Word64 Rss)622 Instruction Type: ALU64623 Execution Slots: SLOT23624 ========================================================================== */625 626#define Q6_P_sub_PP __builtin_HEXAGON_A2_subp627 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_2op632 Execution Slots: SLOT0123633 ========================================================================== */634 635#define Q6_R_sub_IR __builtin_HEXAGON_A2_subri636 637/* ==========================================================================638 Assembly Syntax: Rd32=sub(Rt32,Rs32):sat639 C Intrinsic Prototype: Word32 Q6_R_sub_RR_sat(Word32 Rt, Word32 Rs)640 Instruction Type: ALU32_3op641 Execution Slots: SLOT0123642 ========================================================================== */643 644#define Q6_R_sub_RR_sat __builtin_HEXAGON_A2_subsat645 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_3op650 Execution Slots: SLOT0123651 ========================================================================== */652 653#define Q6_R_vaddh_RR __builtin_HEXAGON_A2_svaddh654 655/* ==========================================================================656 Assembly Syntax: Rd32=vaddh(Rs32,Rt32):sat657 C Intrinsic Prototype: Word32 Q6_R_vaddh_RR_sat(Word32 Rs, Word32 Rt)658 Instruction Type: ALU32_3op659 Execution Slots: SLOT0123660 ========================================================================== */661 662#define Q6_R_vaddh_RR_sat __builtin_HEXAGON_A2_svaddhs663 664/* ==========================================================================665 Assembly Syntax: Rd32=vadduh(Rs32,Rt32):sat666 C Intrinsic Prototype: Word32 Q6_R_vadduh_RR_sat(Word32 Rs, Word32 Rt)667 Instruction Type: ALU32_3op668 Execution Slots: SLOT0123669 ========================================================================== */670 671#define Q6_R_vadduh_RR_sat __builtin_HEXAGON_A2_svadduhs672 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_3op677 Execution Slots: SLOT0123678 ========================================================================== */679 680#define Q6_R_vavgh_RR __builtin_HEXAGON_A2_svavgh681 682/* ==========================================================================683 Assembly Syntax: Rd32=vavgh(Rs32,Rt32):rnd684 C Intrinsic Prototype: Word32 Q6_R_vavgh_RR_rnd(Word32 Rs, Word32 Rt)685 Instruction Type: ALU32_3op686 Execution Slots: SLOT0123687 ========================================================================== */688 689#define Q6_R_vavgh_RR_rnd __builtin_HEXAGON_A2_svavghs690 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_3op695 Execution Slots: SLOT0123696 ========================================================================== */697 698#define Q6_R_vnavgh_RR __builtin_HEXAGON_A2_svnavgh699 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_3op704 Execution Slots: SLOT0123705 ========================================================================== */706 707#define Q6_R_vsubh_RR __builtin_HEXAGON_A2_svsubh708 709/* ==========================================================================710 Assembly Syntax: Rd32=vsubh(Rt32,Rs32):sat711 C Intrinsic Prototype: Word32 Q6_R_vsubh_RR_sat(Word32 Rt, Word32 Rs)712 Instruction Type: ALU32_3op713 Execution Slots: SLOT0123714 ========================================================================== */715 716#define Q6_R_vsubh_RR_sat __builtin_HEXAGON_A2_svsubhs717 718/* ==========================================================================719 Assembly Syntax: Rd32=vsubuh(Rt32,Rs32):sat720 C Intrinsic Prototype: Word32 Q6_R_vsubuh_RR_sat(Word32 Rt, Word32 Rs)721 Instruction Type: ALU32_3op722 Execution Slots: SLOT0123723 ========================================================================== */724 725#define Q6_R_vsubuh_RR_sat __builtin_HEXAGON_A2_svsubuhs726 727/* ==========================================================================728 Assembly Syntax: Rd32=swiz(Rs32)729 C Intrinsic Prototype: Word32 Q6_R_swiz_R(Word32 Rs)730 Instruction Type: S_2op731 Execution Slots: SLOT23732 ========================================================================== */733 734#define Q6_R_swiz_R __builtin_HEXAGON_A2_swiz735 736/* ==========================================================================737 Assembly Syntax: Rd32=sxtb(Rs32)738 C Intrinsic Prototype: Word32 Q6_R_sxtb_R(Word32 Rs)739 Instruction Type: ALU32_2op740 Execution Slots: SLOT0123741 ========================================================================== */742 743#define Q6_R_sxtb_R __builtin_HEXAGON_A2_sxtb744 745/* ==========================================================================746 Assembly Syntax: Rd32=sxth(Rs32)747 C Intrinsic Prototype: Word32 Q6_R_sxth_R(Word32 Rs)748 Instruction Type: ALU32_2op749 Execution Slots: SLOT0123750 ========================================================================== */751 752#define Q6_R_sxth_R __builtin_HEXAGON_A2_sxth753 754/* ==========================================================================755 Assembly Syntax: Rdd32=sxtw(Rs32)756 C Intrinsic Prototype: Word64 Q6_P_sxtw_R(Word32 Rs)757 Instruction Type: S_2op758 Execution Slots: SLOT23759 ========================================================================== */760 761#define Q6_P_sxtw_R __builtin_HEXAGON_A2_sxtw762 763/* ==========================================================================764 Assembly Syntax: Rd32=Rs32765 C Intrinsic Prototype: Word32 Q6_R_equals_R(Word32 Rs)766 Instruction Type: ALU32_2op767 Execution Slots: SLOT0123768 ========================================================================== */769 770#define Q6_R_equals_R __builtin_HEXAGON_A2_tfr771 772/* ==========================================================================773 Assembly Syntax: Rx32.h=#u16774 C Intrinsic Prototype: Word32 Q6_Rh_equals_I(Word32 Rx, Word32 Iu16)775 Instruction Type: ALU32_2op776 Execution Slots: SLOT0123777 ========================================================================== */778 779#define Q6_Rh_equals_I __builtin_HEXAGON_A2_tfrih780 781/* ==========================================================================782 Assembly Syntax: Rx32.l=#u16783 C Intrinsic Prototype: Word32 Q6_Rl_equals_I(Word32 Rx, Word32 Iu16)784 Instruction Type: ALU32_2op785 Execution Slots: SLOT0123786 ========================================================================== */787 788#define Q6_Rl_equals_I __builtin_HEXAGON_A2_tfril789 790/* ==========================================================================791 Assembly Syntax: Rdd32=Rss32792 C Intrinsic Prototype: Word64 Q6_P_equals_P(Word64 Rss)793 Instruction Type: ALU32_2op794 Execution Slots: SLOT0123795 ========================================================================== */796 797#define Q6_P_equals_P __builtin_HEXAGON_A2_tfrp798 799/* ==========================================================================800 Assembly Syntax: Rdd32=#s8801 C Intrinsic Prototype: Word64 Q6_P_equals_I(Word32 Is8)802 Instruction Type: ALU64803 Execution Slots: SLOT0123804 ========================================================================== */805 806#define Q6_P_equals_I __builtin_HEXAGON_A2_tfrpi807 808/* ==========================================================================809 Assembly Syntax: Rd32=#s16810 C Intrinsic Prototype: Word32 Q6_R_equals_I(Word32 Is16)811 Instruction Type: ALU32_2op812 Execution Slots: SLOT0123813 ========================================================================== */814 815#define Q6_R_equals_I __builtin_HEXAGON_A2_tfrsi816 817/* ==========================================================================818 Assembly Syntax: Rdd32=vabsh(Rss32)819 C Intrinsic Prototype: Word64 Q6_P_vabsh_P(Word64 Rss)820 Instruction Type: S_2op821 Execution Slots: SLOT23822 ========================================================================== */823 824#define Q6_P_vabsh_P __builtin_HEXAGON_A2_vabsh825 826/* ==========================================================================827 Assembly Syntax: Rdd32=vabsh(Rss32):sat828 C Intrinsic Prototype: Word64 Q6_P_vabsh_P_sat(Word64 Rss)829 Instruction Type: S_2op830 Execution Slots: SLOT23831 ========================================================================== */832 833#define Q6_P_vabsh_P_sat __builtin_HEXAGON_A2_vabshsat834 835/* ==========================================================================836 Assembly Syntax: Rdd32=vabsw(Rss32)837 C Intrinsic Prototype: Word64 Q6_P_vabsw_P(Word64 Rss)838 Instruction Type: S_2op839 Execution Slots: SLOT23840 ========================================================================== */841 842#define Q6_P_vabsw_P __builtin_HEXAGON_A2_vabsw843 844/* ==========================================================================845 Assembly Syntax: Rdd32=vabsw(Rss32):sat846 C Intrinsic Prototype: Word64 Q6_P_vabsw_P_sat(Word64 Rss)847 Instruction Type: S_2op848 Execution Slots: SLOT23849 ========================================================================== */850 851#define Q6_P_vabsw_P_sat __builtin_HEXAGON_A2_vabswsat852 853/* ==========================================================================854 Assembly Syntax: Rdd32=vaddb(Rss32,Rtt32)855 C Intrinsic Prototype: Word64 Q6_P_vaddb_PP(Word64 Rss, Word64 Rtt)856 Instruction Type: MAPPING857 Execution Slots: SLOT0123858 ========================================================================== */859 860#define Q6_P_vaddb_PP __builtin_HEXAGON_A2_vaddb_map861 862/* ==========================================================================863 Assembly Syntax: Rdd32=vaddh(Rss32,Rtt32)864 C Intrinsic Prototype: Word64 Q6_P_vaddh_PP(Word64 Rss, Word64 Rtt)865 Instruction Type: ALU64866 Execution Slots: SLOT23867 ========================================================================== */868 869#define Q6_P_vaddh_PP __builtin_HEXAGON_A2_vaddh870 871/* ==========================================================================872 Assembly Syntax: Rdd32=vaddh(Rss32,Rtt32):sat873 C Intrinsic Prototype: Word64 Q6_P_vaddh_PP_sat(Word64 Rss, Word64 Rtt)874 Instruction Type: ALU64875 Execution Slots: SLOT23876 ========================================================================== */877 878#define Q6_P_vaddh_PP_sat __builtin_HEXAGON_A2_vaddhs879 880/* ==========================================================================881 Assembly Syntax: Rdd32=vaddub(Rss32,Rtt32)882 C Intrinsic Prototype: Word64 Q6_P_vaddub_PP(Word64 Rss, Word64 Rtt)883 Instruction Type: ALU64884 Execution Slots: SLOT23885 ========================================================================== */886 887#define Q6_P_vaddub_PP __builtin_HEXAGON_A2_vaddub888 889/* ==========================================================================890 Assembly Syntax: Rdd32=vaddub(Rss32,Rtt32):sat891 C Intrinsic Prototype: Word64 Q6_P_vaddub_PP_sat(Word64 Rss, Word64 Rtt)892 Instruction Type: ALU64893 Execution Slots: SLOT23894 ========================================================================== */895 896#define Q6_P_vaddub_PP_sat __builtin_HEXAGON_A2_vaddubs897 898/* ==========================================================================899 Assembly Syntax: Rdd32=vadduh(Rss32,Rtt32):sat900 C Intrinsic Prototype: Word64 Q6_P_vadduh_PP_sat(Word64 Rss, Word64 Rtt)901 Instruction Type: ALU64902 Execution Slots: SLOT23903 ========================================================================== */904 905#define Q6_P_vadduh_PP_sat __builtin_HEXAGON_A2_vadduhs906 907/* ==========================================================================908 Assembly Syntax: Rdd32=vaddw(Rss32,Rtt32)909 C Intrinsic Prototype: Word64 Q6_P_vaddw_PP(Word64 Rss, Word64 Rtt)910 Instruction Type: ALU64911 Execution Slots: SLOT23912 ========================================================================== */913 914#define Q6_P_vaddw_PP __builtin_HEXAGON_A2_vaddw915 916/* ==========================================================================917 Assembly Syntax: Rdd32=vaddw(Rss32,Rtt32):sat918 C Intrinsic Prototype: Word64 Q6_P_vaddw_PP_sat(Word64 Rss, Word64 Rtt)919 Instruction Type: ALU64920 Execution Slots: SLOT23921 ========================================================================== */922 923#define Q6_P_vaddw_PP_sat __builtin_HEXAGON_A2_vaddws924 925/* ==========================================================================926 Assembly Syntax: Rdd32=vavgh(Rss32,Rtt32)927 C Intrinsic Prototype: Word64 Q6_P_vavgh_PP(Word64 Rss, Word64 Rtt)928 Instruction Type: ALU64929 Execution Slots: SLOT23930 ========================================================================== */931 932#define Q6_P_vavgh_PP __builtin_HEXAGON_A2_vavgh933 934/* ==========================================================================935 Assembly Syntax: Rdd32=vavgh(Rss32,Rtt32):crnd936 C Intrinsic Prototype: Word64 Q6_P_vavgh_PP_crnd(Word64 Rss, Word64 Rtt)937 Instruction Type: ALU64938 Execution Slots: SLOT23939 ========================================================================== */940 941#define Q6_P_vavgh_PP_crnd __builtin_HEXAGON_A2_vavghcr942 943/* ==========================================================================944 Assembly Syntax: Rdd32=vavgh(Rss32,Rtt32):rnd945 C Intrinsic Prototype: Word64 Q6_P_vavgh_PP_rnd(Word64 Rss, Word64 Rtt)946 Instruction Type: ALU64947 Execution Slots: SLOT23948 ========================================================================== */949 950#define Q6_P_vavgh_PP_rnd __builtin_HEXAGON_A2_vavghr951 952/* ==========================================================================953 Assembly Syntax: Rdd32=vavgub(Rss32,Rtt32)954 C Intrinsic Prototype: Word64 Q6_P_vavgub_PP(Word64 Rss, Word64 Rtt)955 Instruction Type: ALU64956 Execution Slots: SLOT23957 ========================================================================== */958 959#define Q6_P_vavgub_PP __builtin_HEXAGON_A2_vavgub960 961/* ==========================================================================962 Assembly Syntax: Rdd32=vavgub(Rss32,Rtt32):rnd963 C Intrinsic Prototype: Word64 Q6_P_vavgub_PP_rnd(Word64 Rss, Word64 Rtt)964 Instruction Type: ALU64965 Execution Slots: SLOT23966 ========================================================================== */967 968#define Q6_P_vavgub_PP_rnd __builtin_HEXAGON_A2_vavgubr969 970/* ==========================================================================971 Assembly Syntax: Rdd32=vavguh(Rss32,Rtt32)972 C Intrinsic Prototype: Word64 Q6_P_vavguh_PP(Word64 Rss, Word64 Rtt)973 Instruction Type: ALU64974 Execution Slots: SLOT23975 ========================================================================== */976 977#define Q6_P_vavguh_PP __builtin_HEXAGON_A2_vavguh978 979/* ==========================================================================980 Assembly Syntax: Rdd32=vavguh(Rss32,Rtt32):rnd981 C Intrinsic Prototype: Word64 Q6_P_vavguh_PP_rnd(Word64 Rss, Word64 Rtt)982 Instruction Type: ALU64983 Execution Slots: SLOT23984 ========================================================================== */985 986#define Q6_P_vavguh_PP_rnd __builtin_HEXAGON_A2_vavguhr987 988/* ==========================================================================989 Assembly Syntax: Rdd32=vavguw(Rss32,Rtt32)990 C Intrinsic Prototype: Word64 Q6_P_vavguw_PP(Word64 Rss, Word64 Rtt)991 Instruction Type: ALU64992 Execution Slots: SLOT23993 ========================================================================== */994 995#define Q6_P_vavguw_PP __builtin_HEXAGON_A2_vavguw996 997/* ==========================================================================998 Assembly Syntax: Rdd32=vavguw(Rss32,Rtt32):rnd999 C Intrinsic Prototype: Word64 Q6_P_vavguw_PP_rnd(Word64 Rss, Word64 Rtt)1000 Instruction Type: ALU641001 Execution Slots: SLOT231002 ========================================================================== */1003 1004#define Q6_P_vavguw_PP_rnd __builtin_HEXAGON_A2_vavguwr1005 1006/* ==========================================================================1007 Assembly Syntax: Rdd32=vavgw(Rss32,Rtt32)1008 C Intrinsic Prototype: Word64 Q6_P_vavgw_PP(Word64 Rss, Word64 Rtt)1009 Instruction Type: ALU641010 Execution Slots: SLOT231011 ========================================================================== */1012 1013#define Q6_P_vavgw_PP __builtin_HEXAGON_A2_vavgw1014 1015/* ==========================================================================1016 Assembly Syntax: Rdd32=vavgw(Rss32,Rtt32):crnd1017 C Intrinsic Prototype: Word64 Q6_P_vavgw_PP_crnd(Word64 Rss, Word64 Rtt)1018 Instruction Type: ALU641019 Execution Slots: SLOT231020 ========================================================================== */1021 1022#define Q6_P_vavgw_PP_crnd __builtin_HEXAGON_A2_vavgwcr1023 1024/* ==========================================================================1025 Assembly Syntax: Rdd32=vavgw(Rss32,Rtt32):rnd1026 C Intrinsic Prototype: Word64 Q6_P_vavgw_PP_rnd(Word64 Rss, Word64 Rtt)1027 Instruction Type: ALU641028 Execution Slots: SLOT231029 ========================================================================== */1030 1031#define Q6_P_vavgw_PP_rnd __builtin_HEXAGON_A2_vavgwr1032 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: ALU641037 Execution Slots: SLOT231038 ========================================================================== */1039 1040#define Q6_p_vcmpb_eq_PP __builtin_HEXAGON_A2_vcmpbeq1041 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: ALU641046 Execution Slots: SLOT231047 ========================================================================== */1048 1049#define Q6_p_vcmpb_gtu_PP __builtin_HEXAGON_A2_vcmpbgtu1050 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: ALU641055 Execution Slots: SLOT231056 ========================================================================== */1057 1058#define Q6_p_vcmph_eq_PP __builtin_HEXAGON_A2_vcmpheq1059 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: ALU641064 Execution Slots: SLOT231065 ========================================================================== */1066 1067#define Q6_p_vcmph_gt_PP __builtin_HEXAGON_A2_vcmphgt1068 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: ALU641073 Execution Slots: SLOT231074 ========================================================================== */1075 1076#define Q6_p_vcmph_gtu_PP __builtin_HEXAGON_A2_vcmphgtu1077 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: ALU641082 Execution Slots: SLOT231083 ========================================================================== */1084 1085#define Q6_p_vcmpw_eq_PP __builtin_HEXAGON_A2_vcmpweq1086 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: ALU641091 Execution Slots: SLOT231092 ========================================================================== */1093 1094#define Q6_p_vcmpw_gt_PP __builtin_HEXAGON_A2_vcmpwgt1095 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: ALU641100 Execution Slots: SLOT231101 ========================================================================== */1102 1103#define Q6_p_vcmpw_gtu_PP __builtin_HEXAGON_A2_vcmpwgtu1104 1105/* ==========================================================================1106 Assembly Syntax: Rdd32=vconj(Rss32):sat1107 C Intrinsic Prototype: Word64 Q6_P_vconj_P_sat(Word64 Rss)1108 Instruction Type: S_2op1109 Execution Slots: SLOT231110 ========================================================================== */1111 1112#define Q6_P_vconj_P_sat __builtin_HEXAGON_A2_vconj1113 1114/* ==========================================================================1115 Assembly Syntax: Rdd32=vmaxb(Rtt32,Rss32)1116 C Intrinsic Prototype: Word64 Q6_P_vmaxb_PP(Word64 Rtt, Word64 Rss)1117 Instruction Type: ALU641118 Execution Slots: SLOT231119 ========================================================================== */1120 1121#define Q6_P_vmaxb_PP __builtin_HEXAGON_A2_vmaxb1122 1123/* ==========================================================================1124 Assembly Syntax: Rdd32=vmaxh(Rtt32,Rss32)1125 C Intrinsic Prototype: Word64 Q6_P_vmaxh_PP(Word64 Rtt, Word64 Rss)1126 Instruction Type: ALU641127 Execution Slots: SLOT231128 ========================================================================== */1129 1130#define Q6_P_vmaxh_PP __builtin_HEXAGON_A2_vmaxh1131 1132/* ==========================================================================1133 Assembly Syntax: Rdd32=vmaxub(Rtt32,Rss32)1134 C Intrinsic Prototype: Word64 Q6_P_vmaxub_PP(Word64 Rtt, Word64 Rss)1135 Instruction Type: ALU641136 Execution Slots: SLOT231137 ========================================================================== */1138 1139#define Q6_P_vmaxub_PP __builtin_HEXAGON_A2_vmaxub1140 1141/* ==========================================================================1142 Assembly Syntax: Rdd32=vmaxuh(Rtt32,Rss32)1143 C Intrinsic Prototype: Word64 Q6_P_vmaxuh_PP(Word64 Rtt, Word64 Rss)1144 Instruction Type: ALU641145 Execution Slots: SLOT231146 ========================================================================== */1147 1148#define Q6_P_vmaxuh_PP __builtin_HEXAGON_A2_vmaxuh1149 1150/* ==========================================================================1151 Assembly Syntax: Rdd32=vmaxuw(Rtt32,Rss32)1152 C Intrinsic Prototype: Word64 Q6_P_vmaxuw_PP(Word64 Rtt, Word64 Rss)1153 Instruction Type: ALU641154 Execution Slots: SLOT231155 ========================================================================== */1156 1157#define Q6_P_vmaxuw_PP __builtin_HEXAGON_A2_vmaxuw1158 1159/* ==========================================================================1160 Assembly Syntax: Rdd32=vmaxw(Rtt32,Rss32)1161 C Intrinsic Prototype: Word64 Q6_P_vmaxw_PP(Word64 Rtt, Word64 Rss)1162 Instruction Type: ALU641163 Execution Slots: SLOT231164 ========================================================================== */1165 1166#define Q6_P_vmaxw_PP __builtin_HEXAGON_A2_vmaxw1167 1168/* ==========================================================================1169 Assembly Syntax: Rdd32=vminb(Rtt32,Rss32)1170 C Intrinsic Prototype: Word64 Q6_P_vminb_PP(Word64 Rtt, Word64 Rss)1171 Instruction Type: ALU641172 Execution Slots: SLOT231173 ========================================================================== */1174 1175#define Q6_P_vminb_PP __builtin_HEXAGON_A2_vminb1176 1177/* ==========================================================================1178 Assembly Syntax: Rdd32=vminh(Rtt32,Rss32)1179 C Intrinsic Prototype: Word64 Q6_P_vminh_PP(Word64 Rtt, Word64 Rss)1180 Instruction Type: ALU641181 Execution Slots: SLOT231182 ========================================================================== */1183 1184#define Q6_P_vminh_PP __builtin_HEXAGON_A2_vminh1185 1186/* ==========================================================================1187 Assembly Syntax: Rdd32=vminub(Rtt32,Rss32)1188 C Intrinsic Prototype: Word64 Q6_P_vminub_PP(Word64 Rtt, Word64 Rss)1189 Instruction Type: ALU641190 Execution Slots: SLOT231191 ========================================================================== */1192 1193#define Q6_P_vminub_PP __builtin_HEXAGON_A2_vminub1194 1195/* ==========================================================================1196 Assembly Syntax: Rdd32=vminuh(Rtt32,Rss32)1197 C Intrinsic Prototype: Word64 Q6_P_vminuh_PP(Word64 Rtt, Word64 Rss)1198 Instruction Type: ALU641199 Execution Slots: SLOT231200 ========================================================================== */1201 1202#define Q6_P_vminuh_PP __builtin_HEXAGON_A2_vminuh1203 1204/* ==========================================================================1205 Assembly Syntax: Rdd32=vminuw(Rtt32,Rss32)1206 C Intrinsic Prototype: Word64 Q6_P_vminuw_PP(Word64 Rtt, Word64 Rss)1207 Instruction Type: ALU641208 Execution Slots: SLOT231209 ========================================================================== */1210 1211#define Q6_P_vminuw_PP __builtin_HEXAGON_A2_vminuw1212 1213/* ==========================================================================1214 Assembly Syntax: Rdd32=vminw(Rtt32,Rss32)1215 C Intrinsic Prototype: Word64 Q6_P_vminw_PP(Word64 Rtt, Word64 Rss)1216 Instruction Type: ALU641217 Execution Slots: SLOT231218 ========================================================================== */1219 1220#define Q6_P_vminw_PP __builtin_HEXAGON_A2_vminw1221 1222/* ==========================================================================1223 Assembly Syntax: Rdd32=vnavgh(Rtt32,Rss32)1224 C Intrinsic Prototype: Word64 Q6_P_vnavgh_PP(Word64 Rtt, Word64 Rss)1225 Instruction Type: ALU641226 Execution Slots: SLOT231227 ========================================================================== */1228 1229#define Q6_P_vnavgh_PP __builtin_HEXAGON_A2_vnavgh1230 1231/* ==========================================================================1232 Assembly Syntax: Rdd32=vnavgh(Rtt32,Rss32):crnd:sat1233 C Intrinsic Prototype: Word64 Q6_P_vnavgh_PP_crnd_sat(Word64 Rtt, Word64 Rss)1234 Instruction Type: ALU641235 Execution Slots: SLOT231236 ========================================================================== */1237 1238#define Q6_P_vnavgh_PP_crnd_sat __builtin_HEXAGON_A2_vnavghcr1239 1240/* ==========================================================================1241 Assembly Syntax: Rdd32=vnavgh(Rtt32,Rss32):rnd:sat1242 C Intrinsic Prototype: Word64 Q6_P_vnavgh_PP_rnd_sat(Word64 Rtt, Word64 Rss)1243 Instruction Type: ALU641244 Execution Slots: SLOT231245 ========================================================================== */1246 1247#define Q6_P_vnavgh_PP_rnd_sat __builtin_HEXAGON_A2_vnavghr1248 1249/* ==========================================================================1250 Assembly Syntax: Rdd32=vnavgw(Rtt32,Rss32)1251 C Intrinsic Prototype: Word64 Q6_P_vnavgw_PP(Word64 Rtt, Word64 Rss)1252 Instruction Type: ALU641253 Execution Slots: SLOT231254 ========================================================================== */1255 1256#define Q6_P_vnavgw_PP __builtin_HEXAGON_A2_vnavgw1257 1258/* ==========================================================================1259 Assembly Syntax: Rdd32=vnavgw(Rtt32,Rss32):crnd:sat1260 C Intrinsic Prototype: Word64 Q6_P_vnavgw_PP_crnd_sat(Word64 Rtt, Word64 Rss)1261 Instruction Type: ALU641262 Execution Slots: SLOT231263 ========================================================================== */1264 1265#define Q6_P_vnavgw_PP_crnd_sat __builtin_HEXAGON_A2_vnavgwcr1266 1267/* ==========================================================================1268 Assembly Syntax: Rdd32=vnavgw(Rtt32,Rss32):rnd:sat1269 C Intrinsic Prototype: Word64 Q6_P_vnavgw_PP_rnd_sat(Word64 Rtt, Word64 Rss)1270 Instruction Type: ALU641271 Execution Slots: SLOT231272 ========================================================================== */1273 1274#define Q6_P_vnavgw_PP_rnd_sat __builtin_HEXAGON_A2_vnavgwr1275 1276/* ==========================================================================1277 Assembly Syntax: Rdd32=vraddub(Rss32,Rtt32)1278 C Intrinsic Prototype: Word64 Q6_P_vraddub_PP(Word64 Rss, Word64 Rtt)1279 Instruction Type: M1280 Execution Slots: SLOT231281 ========================================================================== */1282 1283#define Q6_P_vraddub_PP __builtin_HEXAGON_A2_vraddub1284 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: M1289 Execution Slots: SLOT231290 ========================================================================== */1291 1292#define Q6_P_vraddubacc_PP __builtin_HEXAGON_A2_vraddub_acc1293 1294/* ==========================================================================1295 Assembly Syntax: Rdd32=vrsadub(Rss32,Rtt32)1296 C Intrinsic Prototype: Word64 Q6_P_vrsadub_PP(Word64 Rss, Word64 Rtt)1297 Instruction Type: M1298 Execution Slots: SLOT231299 ========================================================================== */1300 1301#define Q6_P_vrsadub_PP __builtin_HEXAGON_A2_vrsadub1302 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: M1307 Execution Slots: SLOT231308 ========================================================================== */1309 1310#define Q6_P_vrsadubacc_PP __builtin_HEXAGON_A2_vrsadub_acc1311 1312/* ==========================================================================1313 Assembly Syntax: Rdd32=vsubb(Rss32,Rtt32)1314 C Intrinsic Prototype: Word64 Q6_P_vsubb_PP(Word64 Rss, Word64 Rtt)1315 Instruction Type: MAPPING1316 Execution Slots: SLOT01231317 ========================================================================== */1318 1319#define Q6_P_vsubb_PP __builtin_HEXAGON_A2_vsubb_map1320 1321/* ==========================================================================1322 Assembly Syntax: Rdd32=vsubh(Rtt32,Rss32)1323 C Intrinsic Prototype: Word64 Q6_P_vsubh_PP(Word64 Rtt, Word64 Rss)1324 Instruction Type: ALU641325 Execution Slots: SLOT231326 ========================================================================== */1327 1328#define Q6_P_vsubh_PP __builtin_HEXAGON_A2_vsubh1329 1330/* ==========================================================================1331 Assembly Syntax: Rdd32=vsubh(Rtt32,Rss32):sat1332 C Intrinsic Prototype: Word64 Q6_P_vsubh_PP_sat(Word64 Rtt, Word64 Rss)1333 Instruction Type: ALU641334 Execution Slots: SLOT231335 ========================================================================== */1336 1337#define Q6_P_vsubh_PP_sat __builtin_HEXAGON_A2_vsubhs1338 1339/* ==========================================================================1340 Assembly Syntax: Rdd32=vsubub(Rtt32,Rss32)1341 C Intrinsic Prototype: Word64 Q6_P_vsubub_PP(Word64 Rtt, Word64 Rss)1342 Instruction Type: ALU641343 Execution Slots: SLOT231344 ========================================================================== */1345 1346#define Q6_P_vsubub_PP __builtin_HEXAGON_A2_vsubub1347 1348/* ==========================================================================1349 Assembly Syntax: Rdd32=vsubub(Rtt32,Rss32):sat1350 C Intrinsic Prototype: Word64 Q6_P_vsubub_PP_sat(Word64 Rtt, Word64 Rss)1351 Instruction Type: ALU641352 Execution Slots: SLOT231353 ========================================================================== */1354 1355#define Q6_P_vsubub_PP_sat __builtin_HEXAGON_A2_vsububs1356 1357/* ==========================================================================1358 Assembly Syntax: Rdd32=vsubuh(Rtt32,Rss32):sat1359 C Intrinsic Prototype: Word64 Q6_P_vsubuh_PP_sat(Word64 Rtt, Word64 Rss)1360 Instruction Type: ALU641361 Execution Slots: SLOT231362 ========================================================================== */1363 1364#define Q6_P_vsubuh_PP_sat __builtin_HEXAGON_A2_vsubuhs1365 1366/* ==========================================================================1367 Assembly Syntax: Rdd32=vsubw(Rtt32,Rss32)1368 C Intrinsic Prototype: Word64 Q6_P_vsubw_PP(Word64 Rtt, Word64 Rss)1369 Instruction Type: ALU641370 Execution Slots: SLOT231371 ========================================================================== */1372 1373#define Q6_P_vsubw_PP __builtin_HEXAGON_A2_vsubw1374 1375/* ==========================================================================1376 Assembly Syntax: Rdd32=vsubw(Rtt32,Rss32):sat1377 C Intrinsic Prototype: Word64 Q6_P_vsubw_PP_sat(Word64 Rtt, Word64 Rss)1378 Instruction Type: ALU641379 Execution Slots: SLOT231380 ========================================================================== */1381 1382#define Q6_P_vsubw_PP_sat __builtin_HEXAGON_A2_vsubws1383 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_3op1388 Execution Slots: SLOT01231389 ========================================================================== */1390 1391#define Q6_R_xor_RR __builtin_HEXAGON_A2_xor1392 1393/* ==========================================================================1394 Assembly Syntax: Rdd32=xor(Rss32,Rtt32)1395 C Intrinsic Prototype: Word64 Q6_P_xor_PP(Word64 Rss, Word64 Rtt)1396 Instruction Type: ALU641397 Execution Slots: SLOT231398 ========================================================================== */1399 1400#define Q6_P_xor_PP __builtin_HEXAGON_A2_xorp1401 1402/* ==========================================================================1403 Assembly Syntax: Rd32=zxtb(Rs32)1404 C Intrinsic Prototype: Word32 Q6_R_zxtb_R(Word32 Rs)1405 Instruction Type: ALU32_2op1406 Execution Slots: SLOT01231407 ========================================================================== */1408 1409#define Q6_R_zxtb_R __builtin_HEXAGON_A2_zxtb1410 1411/* ==========================================================================1412 Assembly Syntax: Rd32=zxth(Rs32)1413 C Intrinsic Prototype: Word32 Q6_R_zxth_R(Word32 Rs)1414 Instruction Type: ALU32_2op1415 Execution Slots: SLOT01231416 ========================================================================== */1417 1418#define Q6_R_zxth_R __builtin_HEXAGON_A2_zxth1419 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_3op1424 Execution Slots: SLOT01231425 ========================================================================== */1426 1427#define Q6_R_and_RnR __builtin_HEXAGON_A4_andn1428 1429/* ==========================================================================1430 Assembly Syntax: Rdd32=and(Rtt32,~Rss32)1431 C Intrinsic Prototype: Word64 Q6_P_and_PnP(Word64 Rtt, Word64 Rss)1432 Instruction Type: ALU641433 Execution Slots: SLOT231434 ========================================================================== */1435 1436#define Q6_P_and_PnP __builtin_HEXAGON_A4_andnp1437 1438/* ==========================================================================1439 Assembly Syntax: Rdd32=bitsplit(Rs32,Rt32)1440 C Intrinsic Prototype: Word64 Q6_P_bitsplit_RR(Word32 Rs, Word32 Rt)1441 Instruction Type: ALU641442 Execution Slots: SLOT231443 ========================================================================== */1444 1445#define Q6_P_bitsplit_RR __builtin_HEXAGON_A4_bitsplit1446 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_2op1451 Execution Slots: SLOT231452 ========================================================================== */1453 1454#define Q6_P_bitsplit_RI __builtin_HEXAGON_A4_bitspliti1455 1456/* ==========================================================================1457 Assembly Syntax: Pd4=boundscheck(Rs32,Rtt32)1458 C Intrinsic Prototype: Byte Q6_p_boundscheck_RP(Word32 Rs, Word64 Rtt)1459 Instruction Type: ALU641460 Execution Slots: SLOT01231461 ========================================================================== */1462 1463#define Q6_p_boundscheck_RP __builtin_HEXAGON_A4_boundscheck1464 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_3op1469 Execution Slots: SLOT231470 ========================================================================== */1471 1472#define Q6_p_cmpb_eq_RR __builtin_HEXAGON_A4_cmpbeq1473 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: ALU641478 Execution Slots: SLOT231479 ========================================================================== */1480 1481#define Q6_p_cmpb_eq_RI __builtin_HEXAGON_A4_cmpbeqi1482 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_3op1487 Execution Slots: SLOT231488 ========================================================================== */1489 1490#define Q6_p_cmpb_gt_RR __builtin_HEXAGON_A4_cmpbgt1491 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: ALU641496 Execution Slots: SLOT231497 ========================================================================== */1498 1499#define Q6_p_cmpb_gt_RI __builtin_HEXAGON_A4_cmpbgti1500 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_3op1505 Execution Slots: SLOT231506 ========================================================================== */1507 1508#define Q6_p_cmpb_gtu_RR __builtin_HEXAGON_A4_cmpbgtu1509 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: ALU641514 Execution Slots: SLOT231515 ========================================================================== */1516 1517#define Q6_p_cmpb_gtu_RI __builtin_HEXAGON_A4_cmpbgtui1518 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_3op1523 Execution Slots: SLOT231524 ========================================================================== */1525 1526#define Q6_p_cmph_eq_RR __builtin_HEXAGON_A4_cmpheq1527 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: ALU641532 Execution Slots: SLOT231533 ========================================================================== */1534 1535#define Q6_p_cmph_eq_RI __builtin_HEXAGON_A4_cmpheqi1536 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_3op1541 Execution Slots: SLOT231542 ========================================================================== */1543 1544#define Q6_p_cmph_gt_RR __builtin_HEXAGON_A4_cmphgt1545 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: ALU641550 Execution Slots: SLOT231551 ========================================================================== */1552 1553#define Q6_p_cmph_gt_RI __builtin_HEXAGON_A4_cmphgti1554 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_3op1559 Execution Slots: SLOT231560 ========================================================================== */1561 1562#define Q6_p_cmph_gtu_RR __builtin_HEXAGON_A4_cmphgtu1563 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: ALU641568 Execution Slots: SLOT231569 ========================================================================== */1570 1571#define Q6_p_cmph_gtu_RI __builtin_HEXAGON_A4_cmphgtui1572 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_2op1577 Execution Slots: SLOT01231578 ========================================================================== */1579 1580#define Q6_P_combine_IR __builtin_HEXAGON_A4_combineir1581 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_2op1586 Execution Slots: SLOT01231587 ========================================================================== */1588 1589#define Q6_P_combine_RI __builtin_HEXAGON_A4_combineri1590 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_2op1595 Execution Slots: SLOT231596 ========================================================================== */1597 1598#define Q6_R_cround_RI __builtin_HEXAGON_A4_cround_ri1599 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_3op1604 Execution Slots: SLOT231605 ========================================================================== */1606 1607#define Q6_R_cround_RR __builtin_HEXAGON_A4_cround_rr1608 1609/* ==========================================================================1610 Assembly Syntax: Rd32=modwrap(Rs32,Rt32)1611 C Intrinsic Prototype: Word32 Q6_R_modwrap_RR(Word32 Rs, Word32 Rt)1612 Instruction Type: ALU641613 Execution Slots: SLOT231614 ========================================================================== */1615 1616#define Q6_R_modwrap_RR __builtin_HEXAGON_A4_modwrapu1617 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_3op1622 Execution Slots: SLOT01231623 ========================================================================== */1624 1625#define Q6_R_or_RnR __builtin_HEXAGON_A4_orn1626 1627/* ==========================================================================1628 Assembly Syntax: Rdd32=or(Rtt32,~Rss32)1629 C Intrinsic Prototype: Word64 Q6_P_or_PnP(Word64 Rtt, Word64 Rss)1630 Instruction Type: ALU641631 Execution Slots: SLOT231632 ========================================================================== */1633 1634#define Q6_P_or_PnP __builtin_HEXAGON_A4_ornp1635 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_3op1640 Execution Slots: SLOT01231641 ========================================================================== */1642 1643#define Q6_R_cmp_eq_RR __builtin_HEXAGON_A4_rcmpeq1644 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_2op1649 Execution Slots: SLOT01231650 ========================================================================== */1651 1652#define Q6_R_cmp_eq_RI __builtin_HEXAGON_A4_rcmpeqi1653 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_3op1658 Execution Slots: SLOT01231659 ========================================================================== */1660 1661#define Q6_R_not_cmp_eq_RR __builtin_HEXAGON_A4_rcmpneq1662 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_2op1667 Execution Slots: SLOT01231668 ========================================================================== */1669 1670#define Q6_R_not_cmp_eq_RI __builtin_HEXAGON_A4_rcmpneqi1671 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_2op1676 Execution Slots: SLOT231677 ========================================================================== */1678 1679#define Q6_R_round_RI __builtin_HEXAGON_A4_round_ri1680 1681/* ==========================================================================1682 Assembly Syntax: Rd32=round(Rs32,#u5):sat1683 C Intrinsic Prototype: Word32 Q6_R_round_RI_sat(Word32 Rs, Word32 Iu5)1684 Instruction Type: S_2op1685 Execution Slots: SLOT231686 ========================================================================== */1687 1688#define Q6_R_round_RI_sat __builtin_HEXAGON_A4_round_ri_sat1689 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_3op1694 Execution Slots: SLOT231695 ========================================================================== */1696 1697#define Q6_R_round_RR __builtin_HEXAGON_A4_round_rr1698 1699/* ==========================================================================1700 Assembly Syntax: Rd32=round(Rs32,Rt32):sat1701 C Intrinsic Prototype: Word32 Q6_R_round_RR_sat(Word32 Rs, Word32 Rt)1702 Instruction Type: S_3op1703 Execution Slots: SLOT231704 ========================================================================== */1705 1706#define Q6_R_round_RR_sat __builtin_HEXAGON_A4_round_rr_sat1707 1708/* ==========================================================================1709 Assembly Syntax: Pd4=tlbmatch(Rss32,Rt32)1710 C Intrinsic Prototype: Byte Q6_p_tlbmatch_PR(Word64 Rss, Word32 Rt)1711 Instruction Type: ALU641712 Execution Slots: SLOT231713 ========================================================================== */1714 1715#define Q6_p_tlbmatch_PR __builtin_HEXAGON_A4_tlbmatch1716 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: ALU641721 Execution Slots: SLOT231722 ========================================================================== */1723 1724#define Q6_p_any8_vcmpb_eq_PP __builtin_HEXAGON_A4_vcmpbeq_any1725 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: ALU641730 Execution Slots: SLOT231731 ========================================================================== */1732 1733#define Q6_p_vcmpb_eq_PI __builtin_HEXAGON_A4_vcmpbeqi1734 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: ALU641739 Execution Slots: SLOT231740 ========================================================================== */1741 1742#define Q6_p_vcmpb_gt_PP __builtin_HEXAGON_A4_vcmpbgt1743 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: ALU641748 Execution Slots: SLOT231749 ========================================================================== */1750 1751#define Q6_p_vcmpb_gt_PI __builtin_HEXAGON_A4_vcmpbgti1752 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: ALU641757 Execution Slots: SLOT231758 ========================================================================== */1759 1760#define Q6_p_vcmpb_gtu_PI __builtin_HEXAGON_A4_vcmpbgtui1761 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: ALU641766 Execution Slots: SLOT231767 ========================================================================== */1768 1769#define Q6_p_vcmph_eq_PI __builtin_HEXAGON_A4_vcmpheqi1770 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: ALU641775 Execution Slots: SLOT231776 ========================================================================== */1777 1778#define Q6_p_vcmph_gt_PI __builtin_HEXAGON_A4_vcmphgti1779 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: ALU641784 Execution Slots: SLOT231785 ========================================================================== */1786 1787#define Q6_p_vcmph_gtu_PI __builtin_HEXAGON_A4_vcmphgtui1788 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: ALU641793 Execution Slots: SLOT231794 ========================================================================== */1795 1796#define Q6_p_vcmpw_eq_PI __builtin_HEXAGON_A4_vcmpweqi1797 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: ALU641802 Execution Slots: SLOT231803 ========================================================================== */1804 1805#define Q6_p_vcmpw_gt_PI __builtin_HEXAGON_A4_vcmpwgti1806 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: ALU641811 Execution Slots: SLOT231812 ========================================================================== */1813 1814#define Q6_p_vcmpw_gtu_PI __builtin_HEXAGON_A4_vcmpwgtui1815 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_3op1820 Execution Slots: SLOT231821 ========================================================================== */1822 1823#define Q6_P_vrmaxh_PR __builtin_HEXAGON_A4_vrmaxh1824 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_3op1829 Execution Slots: SLOT231830 ========================================================================== */1831 1832#define Q6_P_vrmaxuh_PR __builtin_HEXAGON_A4_vrmaxuh1833 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_3op1838 Execution Slots: SLOT231839 ========================================================================== */1840 1841#define Q6_P_vrmaxuw_PR __builtin_HEXAGON_A4_vrmaxuw1842 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_3op1847 Execution Slots: SLOT231848 ========================================================================== */1849 1850#define Q6_P_vrmaxw_PR __builtin_HEXAGON_A4_vrmaxw1851 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_3op1856 Execution Slots: SLOT231857 ========================================================================== */1858 1859#define Q6_P_vrminh_PR __builtin_HEXAGON_A4_vrminh1860 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_3op1865 Execution Slots: SLOT231866 ========================================================================== */1867 1868#define Q6_P_vrminuh_PR __builtin_HEXAGON_A4_vrminuh1869 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_3op1874 Execution Slots: SLOT231875 ========================================================================== */1876 1877#define Q6_P_vrminuw_PR __builtin_HEXAGON_A4_vrminuw1878 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_3op1883 Execution Slots: SLOT231884 ========================================================================== */1885 1886#define Q6_P_vrminw_PR __builtin_HEXAGON_A4_vrminw1887 1888/* ==========================================================================1889 Assembly Syntax: Rd32=vaddhub(Rss32,Rtt32):sat1890 C Intrinsic Prototype: Word32 Q6_R_vaddhub_PP_sat(Word64 Rss, Word64 Rtt)1891 Instruction Type: S_3op1892 Execution Slots: SLOT231893 ========================================================================== */1894 1895#define Q6_R_vaddhub_PP_sat __builtin_HEXAGON_A5_vaddhubs1896 1897/* ==========================================================================1898 Assembly Syntax: Pd4=all8(Ps4)1899 C Intrinsic Prototype: Byte Q6_p_all8_p(Byte Ps)1900 Instruction Type: CR1901 Execution Slots: SLOT231902 ========================================================================== */1903 1904#define Q6_p_all8_p __builtin_HEXAGON_C2_all81905 1906/* ==========================================================================1907 Assembly Syntax: Pd4=and(Pt4,Ps4)1908 C Intrinsic Prototype: Byte Q6_p_and_pp(Byte Pt, Byte Ps)1909 Instruction Type: CR1910 Execution Slots: SLOT231911 ========================================================================== */1912 1913#define Q6_p_and_pp __builtin_HEXAGON_C2_and1914 1915/* ==========================================================================1916 Assembly Syntax: Pd4=and(Pt4,!Ps4)1917 C Intrinsic Prototype: Byte Q6_p_and_pnp(Byte Pt, Byte Ps)1918 Instruction Type: CR1919 Execution Slots: SLOT231920 ========================================================================== */1921 1922#define Q6_p_and_pnp __builtin_HEXAGON_C2_andn1923 1924/* ==========================================================================1925 Assembly Syntax: Pd4=any8(Ps4)1926 C Intrinsic Prototype: Byte Q6_p_any8_p(Byte Ps)1927 Instruction Type: CR1928 Execution Slots: SLOT231929 ========================================================================== */1930 1931#define Q6_p_any8_p __builtin_HEXAGON_C2_any81932 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_3op1937 Execution Slots: SLOT231938 ========================================================================== */1939 1940#define Q6_p_bitsclr_RR __builtin_HEXAGON_C2_bitsclr1941 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_2op1946 Execution Slots: SLOT231947 ========================================================================== */1948 1949#define Q6_p_bitsclr_RI __builtin_HEXAGON_C2_bitsclri1950 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_3op1955 Execution Slots: SLOT231956 ========================================================================== */1957 1958#define Q6_p_bitsset_RR __builtin_HEXAGON_C2_bitsset1959 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_3op1964 Execution Slots: SLOT01231965 ========================================================================== */1966 1967#define Q6_p_cmp_eq_RR __builtin_HEXAGON_C2_cmpeq1968 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_2op1973 Execution Slots: SLOT01231974 ========================================================================== */1975 1976#define Q6_p_cmp_eq_RI __builtin_HEXAGON_C2_cmpeqi1977 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: ALU641982 Execution Slots: SLOT231983 ========================================================================== */1984 1985#define Q6_p_cmp_eq_PP __builtin_HEXAGON_C2_cmpeqp1986 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_2op1991 Execution Slots: SLOT01231992 ========================================================================== */1993 1994#define Q6_p_cmp_ge_RI __builtin_HEXAGON_C2_cmpgei1995 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_2op2000 Execution Slots: SLOT01232001 ========================================================================== */2002 2003#define Q6_p_cmp_geu_RI __builtin_HEXAGON_C2_cmpgeui2004 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_3op2009 Execution Slots: SLOT01232010 ========================================================================== */2011 2012#define Q6_p_cmp_gt_RR __builtin_HEXAGON_C2_cmpgt2013 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_2op2018 Execution Slots: SLOT01232019 ========================================================================== */2020 2021#define Q6_p_cmp_gt_RI __builtin_HEXAGON_C2_cmpgti2022 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: ALU642027 Execution Slots: SLOT232028 ========================================================================== */2029 2030#define Q6_p_cmp_gt_PP __builtin_HEXAGON_C2_cmpgtp2031 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_3op2036 Execution Slots: SLOT01232037 ========================================================================== */2038 2039#define Q6_p_cmp_gtu_RR __builtin_HEXAGON_C2_cmpgtu2040 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_2op2045 Execution Slots: SLOT01232046 ========================================================================== */2047 2048#define Q6_p_cmp_gtu_RI __builtin_HEXAGON_C2_cmpgtui2049 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: ALU642054 Execution Slots: SLOT232055 ========================================================================== */2056 2057#define Q6_p_cmp_gtu_PP __builtin_HEXAGON_C2_cmpgtup2058 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_3op2063 Execution Slots: SLOT01232064 ========================================================================== */2065 2066#define Q6_p_cmp_lt_RR __builtin_HEXAGON_C2_cmplt2067 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_3op2072 Execution Slots: SLOT01232073 ========================================================================== */2074 2075#define Q6_p_cmp_ltu_RR __builtin_HEXAGON_C2_cmpltu2076 2077/* ==========================================================================2078 Assembly Syntax: Rdd32=mask(Pt4)2079 C Intrinsic Prototype: Word64 Q6_P_mask_p(Byte Pt)2080 Instruction Type: S_2op2081 Execution Slots: SLOT232082 ========================================================================== */2083 2084#define Q6_P_mask_p __builtin_HEXAGON_C2_mask2085 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_3op2090 Execution Slots: SLOT01232091 ========================================================================== */2092 2093#define Q6_R_mux_pRR __builtin_HEXAGON_C2_mux2094 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_2op2099 Execution Slots: SLOT01232100 ========================================================================== */2101 2102#define Q6_R_mux_pII __builtin_HEXAGON_C2_muxii2103 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_2op2108 Execution Slots: SLOT01232109 ========================================================================== */2110 2111#define Q6_R_mux_pRI __builtin_HEXAGON_C2_muxir2112 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_2op2117 Execution Slots: SLOT01232118 ========================================================================== */2119 2120#define Q6_R_mux_pIR __builtin_HEXAGON_C2_muxri2121 2122/* ==========================================================================2123 Assembly Syntax: Pd4=not(Ps4)2124 C Intrinsic Prototype: Byte Q6_p_not_p(Byte Ps)2125 Instruction Type: CR2126 Execution Slots: SLOT232127 ========================================================================== */2128 2129#define Q6_p_not_p __builtin_HEXAGON_C2_not2130 2131/* ==========================================================================2132 Assembly Syntax: Pd4=or(Pt4,Ps4)2133 C Intrinsic Prototype: Byte Q6_p_or_pp(Byte Pt, Byte Ps)2134 Instruction Type: CR2135 Execution Slots: SLOT232136 ========================================================================== */2137 2138#define Q6_p_or_pp __builtin_HEXAGON_C2_or2139 2140/* ==========================================================================2141 Assembly Syntax: Pd4=or(Pt4,!Ps4)2142 C Intrinsic Prototype: Byte Q6_p_or_pnp(Byte Pt, Byte Ps)2143 Instruction Type: CR2144 Execution Slots: SLOT232145 ========================================================================== */2146 2147#define Q6_p_or_pnp __builtin_HEXAGON_C2_orn2148 2149/* ==========================================================================2150 Assembly Syntax: Pd4=Ps42151 C Intrinsic Prototype: Byte Q6_p_equals_p(Byte Ps)2152 Instruction Type: MAPPING2153 Execution Slots: SLOT01232154 ========================================================================== */2155 2156#define Q6_p_equals_p __builtin_HEXAGON_C2_pxfer_map2157 2158/* ==========================================================================2159 Assembly Syntax: Rd32=Ps42160 C Intrinsic Prototype: Word32 Q6_R_equals_p(Byte Ps)2161 Instruction Type: S_2op2162 Execution Slots: SLOT232163 ========================================================================== */2164 2165#define Q6_R_equals_p __builtin_HEXAGON_C2_tfrpr2166 2167/* ==========================================================================2168 Assembly Syntax: Pd4=Rs322169 C Intrinsic Prototype: Byte Q6_p_equals_R(Word32 Rs)2170 Instruction Type: S_2op2171 Execution Slots: SLOT232172 ========================================================================== */2173 2174#define Q6_p_equals_R __builtin_HEXAGON_C2_tfrrp2175 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_2op2180 Execution Slots: SLOT232181 ========================================================================== */2182 2183#define Q6_R_vitpack_pp __builtin_HEXAGON_C2_vitpack2184 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: ALU642189 Execution Slots: SLOT232190 ========================================================================== */2191 2192#define Q6_P_vmux_pPP __builtin_HEXAGON_C2_vmux2193 2194/* ==========================================================================2195 Assembly Syntax: Pd4=xor(Ps4,Pt4)2196 C Intrinsic Prototype: Byte Q6_p_xor_pp(Byte Ps, Byte Pt)2197 Instruction Type: CR2198 Execution Slots: SLOT232199 ========================================================================== */2200 2201#define Q6_p_xor_pp __builtin_HEXAGON_C2_xor2202 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: CR2207 Execution Slots: SLOT232208 ========================================================================== */2209 2210#define Q6_p_and_and_ppp __builtin_HEXAGON_C4_and_and2211 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: CR2216 Execution Slots: SLOT232217 ========================================================================== */2218 2219#define Q6_p_and_and_ppnp __builtin_HEXAGON_C4_and_andn2220 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: CR2225 Execution Slots: SLOT232226 ========================================================================== */2227 2228#define Q6_p_and_or_ppp __builtin_HEXAGON_C4_and_or2229 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: CR2234 Execution Slots: SLOT232235 ========================================================================== */2236 2237#define Q6_p_and_or_ppnp __builtin_HEXAGON_C4_and_orn2238 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_3op2243 Execution Slots: SLOT01232244 ========================================================================== */2245 2246#define Q6_p_not_cmp_gt_RR __builtin_HEXAGON_C4_cmplte2247 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_2op2252 Execution Slots: SLOT01232253 ========================================================================== */2254 2255#define Q6_p_not_cmp_gt_RI __builtin_HEXAGON_C4_cmpltei2256 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_3op2261 Execution Slots: SLOT01232262 ========================================================================== */2263 2264#define Q6_p_not_cmp_gtu_RR __builtin_HEXAGON_C4_cmplteu2265 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_2op2270 Execution Slots: SLOT01232271 ========================================================================== */2272 2273#define Q6_p_not_cmp_gtu_RI __builtin_HEXAGON_C4_cmplteui2274 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_3op2279 Execution Slots: SLOT01232280 ========================================================================== */2281 2282#define Q6_p_not_cmp_eq_RR __builtin_HEXAGON_C4_cmpneq2283 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_2op2288 Execution Slots: SLOT01232289 ========================================================================== */2290 2291#define Q6_p_not_cmp_eq_RI __builtin_HEXAGON_C4_cmpneqi2292 2293/* ==========================================================================2294 Assembly Syntax: Pd4=fastcorner9(Ps4,Pt4)2295 C Intrinsic Prototype: Byte Q6_p_fastcorner9_pp(Byte Ps, Byte Pt)2296 Instruction Type: CR2297 Execution Slots: SLOT232298 ========================================================================== */2299 2300#define Q6_p_fastcorner9_pp __builtin_HEXAGON_C4_fastcorner92301 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: CR2306 Execution Slots: SLOT232307 ========================================================================== */2308 2309#define Q6_p_not_fastcorner9_pp __builtin_HEXAGON_C4_fastcorner9_not2310 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_3op2315 Execution Slots: SLOT232316 ========================================================================== */2317 2318#define Q6_p_not_bitsclr_RR __builtin_HEXAGON_C4_nbitsclr2319 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_2op2324 Execution Slots: SLOT232325 ========================================================================== */2326 2327#define Q6_p_not_bitsclr_RI __builtin_HEXAGON_C4_nbitsclri2328 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_3op2333 Execution Slots: SLOT232334 ========================================================================== */2335 2336#define Q6_p_not_bitsset_RR __builtin_HEXAGON_C4_nbitsset2337 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: CR2342 Execution Slots: SLOT232343 ========================================================================== */2344 2345#define Q6_p_or_and_ppp __builtin_HEXAGON_C4_or_and2346 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: CR2351 Execution Slots: SLOT232352 ========================================================================== */2353 2354#define Q6_p_or_and_ppnp __builtin_HEXAGON_C4_or_andn2355 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: CR2360 Execution Slots: SLOT232361 ========================================================================== */2362 2363#define Q6_p_or_or_ppp __builtin_HEXAGON_C4_or_or2364 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: CR2369 Execution Slots: SLOT232370 ========================================================================== */2371 2372#define Q6_p_or_or_ppnp __builtin_HEXAGON_C4_or_orn2373 2374/* ==========================================================================2375 Assembly Syntax: Rdd32=convert_d2df(Rss32)2376 C Intrinsic Prototype: Float64 Q6_P_convert_d2df_P(Word64 Rss)2377 Instruction Type: S_2op2378 Execution Slots: SLOT232379 ========================================================================== */2380 2381#define Q6_P_convert_d2df_P __builtin_HEXAGON_F2_conv_d2df2382 2383/* ==========================================================================2384 Assembly Syntax: Rd32=convert_d2sf(Rss32)2385 C Intrinsic Prototype: Float32 Q6_R_convert_d2sf_P(Word64 Rss)2386 Instruction Type: S_2op2387 Execution Slots: SLOT232388 ========================================================================== */2389 2390#define Q6_R_convert_d2sf_P __builtin_HEXAGON_F2_conv_d2sf2391 2392/* ==========================================================================2393 Assembly Syntax: Rdd32=convert_df2d(Rss32)2394 C Intrinsic Prototype: Word64 Q6_P_convert_df2d_P(Float64 Rss)2395 Instruction Type: S_2op2396 Execution Slots: SLOT232397 ========================================================================== */2398 2399#define Q6_P_convert_df2d_P __builtin_HEXAGON_F2_conv_df2d2400 2401/* ==========================================================================2402 Assembly Syntax: Rdd32=convert_df2d(Rss32):chop2403 C Intrinsic Prototype: Word64 Q6_P_convert_df2d_P_chop(Float64 Rss)2404 Instruction Type: S_2op2405 Execution Slots: SLOT232406 ========================================================================== */2407 2408#define Q6_P_convert_df2d_P_chop __builtin_HEXAGON_F2_conv_df2d_chop2409 2410/* ==========================================================================2411 Assembly Syntax: Rd32=convert_df2sf(Rss32)2412 C Intrinsic Prototype: Float32 Q6_R_convert_df2sf_P(Float64 Rss)2413 Instruction Type: S_2op2414 Execution Slots: SLOT232415 ========================================================================== */2416 2417#define Q6_R_convert_df2sf_P __builtin_HEXAGON_F2_conv_df2sf2418 2419/* ==========================================================================2420 Assembly Syntax: Rdd32=convert_df2ud(Rss32)2421 C Intrinsic Prototype: Word64 Q6_P_convert_df2ud_P(Float64 Rss)2422 Instruction Type: S_2op2423 Execution Slots: SLOT232424 ========================================================================== */2425 2426#define Q6_P_convert_df2ud_P __builtin_HEXAGON_F2_conv_df2ud2427 2428/* ==========================================================================2429 Assembly Syntax: Rdd32=convert_df2ud(Rss32):chop2430 C Intrinsic Prototype: Word64 Q6_P_convert_df2ud_P_chop(Float64 Rss)2431 Instruction Type: S_2op2432 Execution Slots: SLOT232433 ========================================================================== */2434 2435#define Q6_P_convert_df2ud_P_chop __builtin_HEXAGON_F2_conv_df2ud_chop2436 2437/* ==========================================================================2438 Assembly Syntax: Rd32=convert_df2uw(Rss32)2439 C Intrinsic Prototype: Word32 Q6_R_convert_df2uw_P(Float64 Rss)2440 Instruction Type: S_2op2441 Execution Slots: SLOT232442 ========================================================================== */2443 2444#define Q6_R_convert_df2uw_P __builtin_HEXAGON_F2_conv_df2uw2445 2446/* ==========================================================================2447 Assembly Syntax: Rd32=convert_df2uw(Rss32):chop2448 C Intrinsic Prototype: Word32 Q6_R_convert_df2uw_P_chop(Float64 Rss)2449 Instruction Type: S_2op2450 Execution Slots: SLOT232451 ========================================================================== */2452 2453#define Q6_R_convert_df2uw_P_chop __builtin_HEXAGON_F2_conv_df2uw_chop2454 2455/* ==========================================================================2456 Assembly Syntax: Rd32=convert_df2w(Rss32)2457 C Intrinsic Prototype: Word32 Q6_R_convert_df2w_P(Float64 Rss)2458 Instruction Type: S_2op2459 Execution Slots: SLOT232460 ========================================================================== */2461 2462#define Q6_R_convert_df2w_P __builtin_HEXAGON_F2_conv_df2w2463 2464/* ==========================================================================2465 Assembly Syntax: Rd32=convert_df2w(Rss32):chop2466 C Intrinsic Prototype: Word32 Q6_R_convert_df2w_P_chop(Float64 Rss)2467 Instruction Type: S_2op2468 Execution Slots: SLOT232469 ========================================================================== */2470 2471#define Q6_R_convert_df2w_P_chop __builtin_HEXAGON_F2_conv_df2w_chop2472 2473/* ==========================================================================2474 Assembly Syntax: Rdd32=convert_sf2d(Rs32)2475 C Intrinsic Prototype: Word64 Q6_P_convert_sf2d_R(Float32 Rs)2476 Instruction Type: S_2op2477 Execution Slots: SLOT232478 ========================================================================== */2479 2480#define Q6_P_convert_sf2d_R __builtin_HEXAGON_F2_conv_sf2d2481 2482/* ==========================================================================2483 Assembly Syntax: Rdd32=convert_sf2d(Rs32):chop2484 C Intrinsic Prototype: Word64 Q6_P_convert_sf2d_R_chop(Float32 Rs)2485 Instruction Type: S_2op2486 Execution Slots: SLOT232487 ========================================================================== */2488 2489#define Q6_P_convert_sf2d_R_chop __builtin_HEXAGON_F2_conv_sf2d_chop2490 2491/* ==========================================================================2492 Assembly Syntax: Rdd32=convert_sf2df(Rs32)2493 C Intrinsic Prototype: Float64 Q6_P_convert_sf2df_R(Float32 Rs)2494 Instruction Type: S_2op2495 Execution Slots: SLOT232496 ========================================================================== */2497 2498#define Q6_P_convert_sf2df_R __builtin_HEXAGON_F2_conv_sf2df2499 2500/* ==========================================================================2501 Assembly Syntax: Rdd32=convert_sf2ud(Rs32)2502 C Intrinsic Prototype: Word64 Q6_P_convert_sf2ud_R(Float32 Rs)2503 Instruction Type: S_2op2504 Execution Slots: SLOT232505 ========================================================================== */2506 2507#define Q6_P_convert_sf2ud_R __builtin_HEXAGON_F2_conv_sf2ud2508 2509/* ==========================================================================2510 Assembly Syntax: Rdd32=convert_sf2ud(Rs32):chop2511 C Intrinsic Prototype: Word64 Q6_P_convert_sf2ud_R_chop(Float32 Rs)2512 Instruction Type: S_2op2513 Execution Slots: SLOT232514 ========================================================================== */2515 2516#define Q6_P_convert_sf2ud_R_chop __builtin_HEXAGON_F2_conv_sf2ud_chop2517 2518/* ==========================================================================2519 Assembly Syntax: Rd32=convert_sf2uw(Rs32)2520 C Intrinsic Prototype: Word32 Q6_R_convert_sf2uw_R(Float32 Rs)2521 Instruction Type: S_2op2522 Execution Slots: SLOT232523 ========================================================================== */2524 2525#define Q6_R_convert_sf2uw_R __builtin_HEXAGON_F2_conv_sf2uw2526 2527/* ==========================================================================2528 Assembly Syntax: Rd32=convert_sf2uw(Rs32):chop2529 C Intrinsic Prototype: Word32 Q6_R_convert_sf2uw_R_chop(Float32 Rs)2530 Instruction Type: S_2op2531 Execution Slots: SLOT232532 ========================================================================== */2533 2534#define Q6_R_convert_sf2uw_R_chop __builtin_HEXAGON_F2_conv_sf2uw_chop2535 2536/* ==========================================================================2537 Assembly Syntax: Rd32=convert_sf2w(Rs32)2538 C Intrinsic Prototype: Word32 Q6_R_convert_sf2w_R(Float32 Rs)2539 Instruction Type: S_2op2540 Execution Slots: SLOT232541 ========================================================================== */2542 2543#define Q6_R_convert_sf2w_R __builtin_HEXAGON_F2_conv_sf2w2544 2545/* ==========================================================================2546 Assembly Syntax: Rd32=convert_sf2w(Rs32):chop2547 C Intrinsic Prototype: Word32 Q6_R_convert_sf2w_R_chop(Float32 Rs)2548 Instruction Type: S_2op2549 Execution Slots: SLOT232550 ========================================================================== */2551 2552#define Q6_R_convert_sf2w_R_chop __builtin_HEXAGON_F2_conv_sf2w_chop2553 2554/* ==========================================================================2555 Assembly Syntax: Rdd32=convert_ud2df(Rss32)2556 C Intrinsic Prototype: Float64 Q6_P_convert_ud2df_P(Word64 Rss)2557 Instruction Type: S_2op2558 Execution Slots: SLOT232559 ========================================================================== */2560 2561#define Q6_P_convert_ud2df_P __builtin_HEXAGON_F2_conv_ud2df2562 2563/* ==========================================================================2564 Assembly Syntax: Rd32=convert_ud2sf(Rss32)2565 C Intrinsic Prototype: Float32 Q6_R_convert_ud2sf_P(Word64 Rss)2566 Instruction Type: S_2op2567 Execution Slots: SLOT232568 ========================================================================== */2569 2570#define Q6_R_convert_ud2sf_P __builtin_HEXAGON_F2_conv_ud2sf2571 2572/* ==========================================================================2573 Assembly Syntax: Rdd32=convert_uw2df(Rs32)2574 C Intrinsic Prototype: Float64 Q6_P_convert_uw2df_R(Word32 Rs)2575 Instruction Type: S_2op2576 Execution Slots: SLOT232577 ========================================================================== */2578 2579#define Q6_P_convert_uw2df_R __builtin_HEXAGON_F2_conv_uw2df2580 2581/* ==========================================================================2582 Assembly Syntax: Rd32=convert_uw2sf(Rs32)2583 C Intrinsic Prototype: Float32 Q6_R_convert_uw2sf_R(Word32 Rs)2584 Instruction Type: S_2op2585 Execution Slots: SLOT232586 ========================================================================== */2587 2588#define Q6_R_convert_uw2sf_R __builtin_HEXAGON_F2_conv_uw2sf2589 2590/* ==========================================================================2591 Assembly Syntax: Rdd32=convert_w2df(Rs32)2592 C Intrinsic Prototype: Float64 Q6_P_convert_w2df_R(Word32 Rs)2593 Instruction Type: S_2op2594 Execution Slots: SLOT232595 ========================================================================== */2596 2597#define Q6_P_convert_w2df_R __builtin_HEXAGON_F2_conv_w2df2598 2599/* ==========================================================================2600 Assembly Syntax: Rd32=convert_w2sf(Rs32)2601 C Intrinsic Prototype: Float32 Q6_R_convert_w2sf_R(Word32 Rs)2602 Instruction Type: S_2op2603 Execution Slots: SLOT232604 ========================================================================== */2605 2606#define Q6_R_convert_w2sf_R __builtin_HEXAGON_F2_conv_w2sf2607 2608/* ==========================================================================2609 Assembly Syntax: Pd4=dfclass(Rss32,#u5)2610 C Intrinsic Prototype: Byte Q6_p_dfclass_PI(Float64 Rss, Word32 Iu5)2611 Instruction Type: ALU642612 Execution Slots: SLOT232613 ========================================================================== */2614 2615#define Q6_p_dfclass_PI __builtin_HEXAGON_F2_dfclass2616 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: ALU642621 Execution Slots: SLOT232622 ========================================================================== */2623 2624#define Q6_p_dfcmp_eq_PP __builtin_HEXAGON_F2_dfcmpeq2625 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: ALU642630 Execution Slots: SLOT232631 ========================================================================== */2632 2633#define Q6_p_dfcmp_ge_PP __builtin_HEXAGON_F2_dfcmpge2634 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: ALU642639 Execution Slots: SLOT232640 ========================================================================== */2641 2642#define Q6_p_dfcmp_gt_PP __builtin_HEXAGON_F2_dfcmpgt2643 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: ALU642648 Execution Slots: SLOT232649 ========================================================================== */2650 2651#define Q6_p_dfcmp_uo_PP __builtin_HEXAGON_F2_dfcmpuo2652 2653/* ==========================================================================2654 Assembly Syntax: Rdd32=dfmake(#u10):neg2655 C Intrinsic Prototype: Float64 Q6_P_dfmake_I_neg(Word32 Iu10)2656 Instruction Type: ALU642657 Execution Slots: SLOT232658 ========================================================================== */2659 2660#define Q6_P_dfmake_I_neg __builtin_HEXAGON_F2_dfimm_n2661 2662/* ==========================================================================2663 Assembly Syntax: Rdd32=dfmake(#u10):pos2664 C Intrinsic Prototype: Float64 Q6_P_dfmake_I_pos(Word32 Iu10)2665 Instruction Type: ALU642666 Execution Slots: SLOT232667 ========================================================================== */2668 2669#define Q6_P_dfmake_I_pos __builtin_HEXAGON_F2_dfimm_p2670 2671/* ==========================================================================2672 Assembly Syntax: Rd32=sfadd(Rs32,Rt32)2673 C Intrinsic Prototype: Float32 Q6_R_sfadd_RR(Float32 Rs, Float32 Rt)2674 Instruction Type: M2675 Execution Slots: SLOT232676 ========================================================================== */2677 2678#define Q6_R_sfadd_RR __builtin_HEXAGON_F2_sfadd2679 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_2op2684 Execution Slots: SLOT232685 ========================================================================== */2686 2687#define Q6_p_sfclass_RI __builtin_HEXAGON_F2_sfclass2688 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_3op2693 Execution Slots: SLOT232694 ========================================================================== */2695 2696#define Q6_p_sfcmp_eq_RR __builtin_HEXAGON_F2_sfcmpeq2697 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_3op2702 Execution Slots: SLOT232703 ========================================================================== */2704 2705#define Q6_p_sfcmp_ge_RR __builtin_HEXAGON_F2_sfcmpge2706 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_3op2711 Execution Slots: SLOT232712 ========================================================================== */2713 2714#define Q6_p_sfcmp_gt_RR __builtin_HEXAGON_F2_sfcmpgt2715 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_3op2720 Execution Slots: SLOT232721 ========================================================================== */2722 2723#define Q6_p_sfcmp_uo_RR __builtin_HEXAGON_F2_sfcmpuo2724 2725/* ==========================================================================2726 Assembly Syntax: Rd32=sffixupd(Rs32,Rt32)2727 C Intrinsic Prototype: Float32 Q6_R_sffixupd_RR(Float32 Rs, Float32 Rt)2728 Instruction Type: M2729 Execution Slots: SLOT232730 ========================================================================== */2731 2732#define Q6_R_sffixupd_RR __builtin_HEXAGON_F2_sffixupd2733 2734/* ==========================================================================2735 Assembly Syntax: Rd32=sffixupn(Rs32,Rt32)2736 C Intrinsic Prototype: Float32 Q6_R_sffixupn_RR(Float32 Rs, Float32 Rt)2737 Instruction Type: M2738 Execution Slots: SLOT232739 ========================================================================== */2740 2741#define Q6_R_sffixupn_RR __builtin_HEXAGON_F2_sffixupn2742 2743/* ==========================================================================2744 Assembly Syntax: Rd32=sffixupr(Rs32)2745 C Intrinsic Prototype: Float32 Q6_R_sffixupr_R(Float32 Rs)2746 Instruction Type: S_2op2747 Execution Slots: SLOT232748 ========================================================================== */2749 2750#define Q6_R_sffixupr_R __builtin_HEXAGON_F2_sffixupr2751 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: M2756 Execution Slots: SLOT232757 ========================================================================== */2758 2759#define Q6_R_sfmpyacc_RR __builtin_HEXAGON_F2_sffma2760 2761/* ==========================================================================2762 Assembly Syntax: Rx32+=sfmpy(Rs32,Rt32):lib2763 C Intrinsic Prototype: Float32 Q6_R_sfmpyacc_RR_lib(Float32 Rx, Float32 Rs, Float32 Rt)2764 Instruction Type: M2765 Execution Slots: SLOT232766 ========================================================================== */2767 2768#define Q6_R_sfmpyacc_RR_lib __builtin_HEXAGON_F2_sffma_lib2769 2770/* ==========================================================================2771 Assembly Syntax: Rx32+=sfmpy(Rs32,Rt32,Pu4):scale2772 C Intrinsic Prototype: Float32 Q6_R_sfmpyacc_RRp_scale(Float32 Rx, Float32 Rs, Float32 Rt, Byte Pu)2773 Instruction Type: M2774 Execution Slots: SLOT232775 ========================================================================== */2776 2777#define Q6_R_sfmpyacc_RRp_scale __builtin_HEXAGON_F2_sffma_sc2778 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: M2783 Execution Slots: SLOT232784 ========================================================================== */2785 2786#define Q6_R_sfmpynac_RR __builtin_HEXAGON_F2_sffms2787 2788/* ==========================================================================2789 Assembly Syntax: Rx32-=sfmpy(Rs32,Rt32):lib2790 C Intrinsic Prototype: Float32 Q6_R_sfmpynac_RR_lib(Float32 Rx, Float32 Rs, Float32 Rt)2791 Instruction Type: M2792 Execution Slots: SLOT232793 ========================================================================== */2794 2795#define Q6_R_sfmpynac_RR_lib __builtin_HEXAGON_F2_sffms_lib2796 2797/* ==========================================================================2798 Assembly Syntax: Rd32=sfmake(#u10):neg2799 C Intrinsic Prototype: Float32 Q6_R_sfmake_I_neg(Word32 Iu10)2800 Instruction Type: ALU642801 Execution Slots: SLOT232802 ========================================================================== */2803 2804#define Q6_R_sfmake_I_neg __builtin_HEXAGON_F2_sfimm_n2805 2806/* ==========================================================================2807 Assembly Syntax: Rd32=sfmake(#u10):pos2808 C Intrinsic Prototype: Float32 Q6_R_sfmake_I_pos(Word32 Iu10)2809 Instruction Type: ALU642810 Execution Slots: SLOT232811 ========================================================================== */2812 2813#define Q6_R_sfmake_I_pos __builtin_HEXAGON_F2_sfimm_p2814 2815/* ==========================================================================2816 Assembly Syntax: Rd32=sfmax(Rs32,Rt32)2817 C Intrinsic Prototype: Float32 Q6_R_sfmax_RR(Float32 Rs, Float32 Rt)2818 Instruction Type: M2819 Execution Slots: SLOT232820 ========================================================================== */2821 2822#define Q6_R_sfmax_RR __builtin_HEXAGON_F2_sfmax2823 2824/* ==========================================================================2825 Assembly Syntax: Rd32=sfmin(Rs32,Rt32)2826 C Intrinsic Prototype: Float32 Q6_R_sfmin_RR(Float32 Rs, Float32 Rt)2827 Instruction Type: M2828 Execution Slots: SLOT232829 ========================================================================== */2830 2831#define Q6_R_sfmin_RR __builtin_HEXAGON_F2_sfmin2832 2833/* ==========================================================================2834 Assembly Syntax: Rd32=sfmpy(Rs32,Rt32)2835 C Intrinsic Prototype: Float32 Q6_R_sfmpy_RR(Float32 Rs, Float32 Rt)2836 Instruction Type: M2837 Execution Slots: SLOT232838 ========================================================================== */2839 2840#define Q6_R_sfmpy_RR __builtin_HEXAGON_F2_sfmpy2841 2842/* ==========================================================================2843 Assembly Syntax: Rd32=sfsub(Rs32,Rt32)2844 C Intrinsic Prototype: Float32 Q6_R_sfsub_RR(Float32 Rs, Float32 Rt)2845 Instruction Type: M2846 Execution Slots: SLOT232847 ========================================================================== */2848 2849#define Q6_R_sfsub_RR __builtin_HEXAGON_F2_sfsub2850 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: LD2855 Execution Slots: SLOT012856 ========================================================================== */2857 2858#define Q6_R_memb_IM_circ __builtin_HEXAGON_L2_loadrb_pci2859 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: LD2864 Execution Slots: SLOT012865 ========================================================================== */2866 2867#define Q6_R_memb_M_circ __builtin_HEXAGON_L2_loadrb_pcr2868 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: LD2873 Execution Slots: SLOT012874 ========================================================================== */2875 2876#define Q6_P_memd_IM_circ __builtin_HEXAGON_L2_loadrd_pci2877 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: LD2882 Execution Slots: SLOT012883 ========================================================================== */2884 2885#define Q6_P_memd_M_circ __builtin_HEXAGON_L2_loadrd_pcr2886 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: LD2891 Execution Slots: SLOT012892 ========================================================================== */2893 2894#define Q6_R_memh_IM_circ __builtin_HEXAGON_L2_loadrh_pci2895 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: LD2900 Execution Slots: SLOT012901 ========================================================================== */2902 2903#define Q6_R_memh_M_circ __builtin_HEXAGON_L2_loadrh_pcr2904 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: LD2909 Execution Slots: SLOT012910 ========================================================================== */2911 2912#define Q6_R_memw_IM_circ __builtin_HEXAGON_L2_loadri_pci2913 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: LD2918 Execution Slots: SLOT012919 ========================================================================== */2920 2921#define Q6_R_memw_M_circ __builtin_HEXAGON_L2_loadri_pcr2922 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: LD2927 Execution Slots: SLOT012928 ========================================================================== */2929 2930#define Q6_R_memub_IM_circ __builtin_HEXAGON_L2_loadrub_pci2931 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: LD2936 Execution Slots: SLOT012937 ========================================================================== */2938 2939#define Q6_R_memub_M_circ __builtin_HEXAGON_L2_loadrub_pcr2940 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: LD2945 Execution Slots: SLOT012946 ========================================================================== */2947 2948#define Q6_R_memuh_IM_circ __builtin_HEXAGON_L2_loadruh_pci2949 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: LD2954 Execution Slots: SLOT012955 ========================================================================== */2956 2957#define Q6_R_memuh_M_circ __builtin_HEXAGON_L2_loadruh_pcr2958 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: M2963 Execution Slots: SLOT232964 ========================================================================== */2965 2966#define Q6_R_addacc_RR __builtin_HEXAGON_M2_acci2967 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: M2972 Execution Slots: SLOT232973 ========================================================================== */2974 2975#define Q6_R_addacc_RI __builtin_HEXAGON_M2_accii2976 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: M2981 Execution Slots: SLOT232982 ========================================================================== */2983 2984#define Q6_P_cmpyiacc_RR __builtin_HEXAGON_M2_cmaci_s02985 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: M2990 Execution Slots: SLOT232991 ========================================================================== */2992 2993#define Q6_P_cmpyracc_RR __builtin_HEXAGON_M2_cmacr_s02994 2995/* ==========================================================================2996 Assembly Syntax: Rxx32+=cmpy(Rs32,Rt32):sat2997 C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)2998 Instruction Type: M2999 Execution Slots: SLOT233000 ========================================================================== */3001 3002#define Q6_P_cmpyacc_RR_sat __builtin_HEXAGON_M2_cmacs_s03003 3004/* ==========================================================================3005 Assembly Syntax: Rxx32+=cmpy(Rs32,Rt32):<<1:sat3006 C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3007 Instruction Type: M3008 Execution Slots: SLOT233009 ========================================================================== */3010 3011#define Q6_P_cmpyacc_RR_s1_sat __builtin_HEXAGON_M2_cmacs_s13012 3013/* ==========================================================================3014 Assembly Syntax: Rxx32+=cmpy(Rs32,Rt32*):sat3015 C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_conj_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3016 Instruction Type: M3017 Execution Slots: SLOT233018 ========================================================================== */3019 3020#define Q6_P_cmpyacc_RR_conj_sat __builtin_HEXAGON_M2_cmacsc_s03021 3022/* ==========================================================================3023 Assembly Syntax: Rxx32+=cmpy(Rs32,Rt32*):<<1:sat3024 C Intrinsic Prototype: Word64 Q6_P_cmpyacc_RR_conj_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3025 Instruction Type: M3026 Execution Slots: SLOT233027 ========================================================================== */3028 3029#define Q6_P_cmpyacc_RR_conj_s1_sat __builtin_HEXAGON_M2_cmacsc_s13030 3031/* ==========================================================================3032 Assembly Syntax: Rdd32=cmpyi(Rs32,Rt32)3033 C Intrinsic Prototype: Word64 Q6_P_cmpyi_RR(Word32 Rs, Word32 Rt)3034 Instruction Type: M3035 Execution Slots: SLOT233036 ========================================================================== */3037 3038#define Q6_P_cmpyi_RR __builtin_HEXAGON_M2_cmpyi_s03039 3040/* ==========================================================================3041 Assembly Syntax: Rdd32=cmpyr(Rs32,Rt32)3042 C Intrinsic Prototype: Word64 Q6_P_cmpyr_RR(Word32 Rs, Word32 Rt)3043 Instruction Type: M3044 Execution Slots: SLOT233045 ========================================================================== */3046 3047#define Q6_P_cmpyr_RR __builtin_HEXAGON_M2_cmpyr_s03048 3049/* ==========================================================================3050 Assembly Syntax: Rd32=cmpy(Rs32,Rt32):rnd:sat3051 C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_rnd_sat(Word32 Rs, Word32 Rt)3052 Instruction Type: M3053 Execution Slots: SLOT233054 ========================================================================== */3055 3056#define Q6_R_cmpy_RR_rnd_sat __builtin_HEXAGON_M2_cmpyrs_s03057 3058/* ==========================================================================3059 Assembly Syntax: Rd32=cmpy(Rs32,Rt32):<<1:rnd:sat3060 C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_s1_rnd_sat(Word32 Rs, Word32 Rt)3061 Instruction Type: M3062 Execution Slots: SLOT233063 ========================================================================== */3064 3065#define Q6_R_cmpy_RR_s1_rnd_sat __builtin_HEXAGON_M2_cmpyrs_s13066 3067/* ==========================================================================3068 Assembly Syntax: Rd32=cmpy(Rs32,Rt32*):rnd:sat3069 C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_conj_rnd_sat(Word32 Rs, Word32 Rt)3070 Instruction Type: M3071 Execution Slots: SLOT233072 ========================================================================== */3073 3074#define Q6_R_cmpy_RR_conj_rnd_sat __builtin_HEXAGON_M2_cmpyrsc_s03075 3076/* ==========================================================================3077 Assembly Syntax: Rd32=cmpy(Rs32,Rt32*):<<1:rnd:sat3078 C Intrinsic Prototype: Word32 Q6_R_cmpy_RR_conj_s1_rnd_sat(Word32 Rs, Word32 Rt)3079 Instruction Type: M3080 Execution Slots: SLOT233081 ========================================================================== */3082 3083#define Q6_R_cmpy_RR_conj_s1_rnd_sat __builtin_HEXAGON_M2_cmpyrsc_s13084 3085/* ==========================================================================3086 Assembly Syntax: Rdd32=cmpy(Rs32,Rt32):sat3087 C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_sat(Word32 Rs, Word32 Rt)3088 Instruction Type: M3089 Execution Slots: SLOT233090 ========================================================================== */3091 3092#define Q6_P_cmpy_RR_sat __builtin_HEXAGON_M2_cmpys_s03093 3094/* ==========================================================================3095 Assembly Syntax: Rdd32=cmpy(Rs32,Rt32):<<1:sat3096 C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_s1_sat(Word32 Rs, Word32 Rt)3097 Instruction Type: M3098 Execution Slots: SLOT233099 ========================================================================== */3100 3101#define Q6_P_cmpy_RR_s1_sat __builtin_HEXAGON_M2_cmpys_s13102 3103/* ==========================================================================3104 Assembly Syntax: Rdd32=cmpy(Rs32,Rt32*):sat3105 C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_conj_sat(Word32 Rs, Word32 Rt)3106 Instruction Type: M3107 Execution Slots: SLOT233108 ========================================================================== */3109 3110#define Q6_P_cmpy_RR_conj_sat __builtin_HEXAGON_M2_cmpysc_s03111 3112/* ==========================================================================3113 Assembly Syntax: Rdd32=cmpy(Rs32,Rt32*):<<1:sat3114 C Intrinsic Prototype: Word64 Q6_P_cmpy_RR_conj_s1_sat(Word32 Rs, Word32 Rt)3115 Instruction Type: M3116 Execution Slots: SLOT233117 ========================================================================== */3118 3119#define Q6_P_cmpy_RR_conj_s1_sat __builtin_HEXAGON_M2_cmpysc_s13120 3121/* ==========================================================================3122 Assembly Syntax: Rxx32-=cmpy(Rs32,Rt32):sat3123 C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3124 Instruction Type: M3125 Execution Slots: SLOT233126 ========================================================================== */3127 3128#define Q6_P_cmpynac_RR_sat __builtin_HEXAGON_M2_cnacs_s03129 3130/* ==========================================================================3131 Assembly Syntax: Rxx32-=cmpy(Rs32,Rt32):<<1:sat3132 C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3133 Instruction Type: M3134 Execution Slots: SLOT233135 ========================================================================== */3136 3137#define Q6_P_cmpynac_RR_s1_sat __builtin_HEXAGON_M2_cnacs_s13138 3139/* ==========================================================================3140 Assembly Syntax: Rxx32-=cmpy(Rs32,Rt32*):sat3141 C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_conj_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3142 Instruction Type: M3143 Execution Slots: SLOT233144 ========================================================================== */3145 3146#define Q6_P_cmpynac_RR_conj_sat __builtin_HEXAGON_M2_cnacsc_s03147 3148/* ==========================================================================3149 Assembly Syntax: Rxx32-=cmpy(Rs32,Rt32*):<<1:sat3150 C Intrinsic Prototype: Word64 Q6_P_cmpynac_RR_conj_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)3151 Instruction Type: M3152 Execution Slots: SLOT233153 ========================================================================== */3154 3155#define Q6_P_cmpynac_RR_conj_s1_sat __builtin_HEXAGON_M2_cnacsc_s13156 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: M3161 Execution Slots: SLOT233162 ========================================================================== */3163 3164#define Q6_P_mpyacc_RR __builtin_HEXAGON_M2_dpmpyss_acc_s03165 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: M3170 Execution Slots: SLOT233171 ========================================================================== */3172 3173#define Q6_P_mpynac_RR __builtin_HEXAGON_M2_dpmpyss_nac_s03174 3175/* ==========================================================================3176 Assembly Syntax: Rd32=mpy(Rs32,Rt32):rnd3177 C Intrinsic Prototype: Word32 Q6_R_mpy_RR_rnd(Word32 Rs, Word32 Rt)3178 Instruction Type: M3179 Execution Slots: SLOT233180 ========================================================================== */3181 3182#define Q6_R_mpy_RR_rnd __builtin_HEXAGON_M2_dpmpyss_rnd_s03183 3184/* ==========================================================================3185 Assembly Syntax: Rdd32=mpy(Rs32,Rt32)3186 C Intrinsic Prototype: Word64 Q6_P_mpy_RR(Word32 Rs, Word32 Rt)3187 Instruction Type: M3188 Execution Slots: SLOT233189 ========================================================================== */3190 3191#define Q6_P_mpy_RR __builtin_HEXAGON_M2_dpmpyss_s03192 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: M3197 Execution Slots: SLOT233198 ========================================================================== */3199 3200#define Q6_P_mpyuacc_RR __builtin_HEXAGON_M2_dpmpyuu_acc_s03201 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: M3206 Execution Slots: SLOT233207 ========================================================================== */3208 3209#define Q6_P_mpyunac_RR __builtin_HEXAGON_M2_dpmpyuu_nac_s03210 3211/* ==========================================================================3212 Assembly Syntax: Rdd32=mpyu(Rs32,Rt32)3213 C Intrinsic Prototype: UWord64 Q6_P_mpyu_RR(Word32 Rs, Word32 Rt)3214 Instruction Type: M3215 Execution Slots: SLOT233216 ========================================================================== */3217 3218#define Q6_P_mpyu_RR __builtin_HEXAGON_M2_dpmpyuu_s03219 3220/* ==========================================================================3221 Assembly Syntax: Rd32=mpy(Rs32,Rt32.h):<<1:rnd:sat3222 C Intrinsic Prototype: Word32 Q6_R_mpy_RRh_s1_rnd_sat(Word32 Rs, Word32 Rt)3223 Instruction Type: M3224 Execution Slots: SLOT233225 ========================================================================== */3226 3227#define Q6_R_mpy_RRh_s1_rnd_sat __builtin_HEXAGON_M2_hmmpyh_rs13228 3229/* ==========================================================================3230 Assembly Syntax: Rd32=mpy(Rs32,Rt32.h):<<1:sat3231 C Intrinsic Prototype: Word32 Q6_R_mpy_RRh_s1_sat(Word32 Rs, Word32 Rt)3232 Instruction Type: M3233 Execution Slots: SLOT233234 ========================================================================== */3235 3236#define Q6_R_mpy_RRh_s1_sat __builtin_HEXAGON_M2_hmmpyh_s13237 3238/* ==========================================================================3239 Assembly Syntax: Rd32=mpy(Rs32,Rt32.l):<<1:rnd:sat3240 C Intrinsic Prototype: Word32 Q6_R_mpy_RRl_s1_rnd_sat(Word32 Rs, Word32 Rt)3241 Instruction Type: M3242 Execution Slots: SLOT233243 ========================================================================== */3244 3245#define Q6_R_mpy_RRl_s1_rnd_sat __builtin_HEXAGON_M2_hmmpyl_rs13246 3247/* ==========================================================================3248 Assembly Syntax: Rd32=mpy(Rs32,Rt32.l):<<1:sat3249 C Intrinsic Prototype: Word32 Q6_R_mpy_RRl_s1_sat(Word32 Rs, Word32 Rt)3250 Instruction Type: M3251 Execution Slots: SLOT233252 ========================================================================== */3253 3254#define Q6_R_mpy_RRl_s1_sat __builtin_HEXAGON_M2_hmmpyl_s13255 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: M3260 Execution Slots: SLOT233261 ========================================================================== */3262 3263#define Q6_R_mpyiacc_RR __builtin_HEXAGON_M2_maci3264 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: M3269 Execution Slots: SLOT233270 ========================================================================== */3271 3272#define Q6_R_mpyinac_RI __builtin_HEXAGON_M2_macsin3273 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: M3278 Execution Slots: SLOT233279 ========================================================================== */3280 3281#define Q6_R_mpyiacc_RI __builtin_HEXAGON_M2_macsip3282 3283/* ==========================================================================3284 Assembly Syntax: Rxx32+=vmpywoh(Rss32,Rtt32):rnd:sat3285 C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3286 Instruction Type: M3287 Execution Slots: SLOT233288 ========================================================================== */3289 3290#define Q6_P_vmpywohacc_PP_rnd_sat __builtin_HEXAGON_M2_mmachs_rs03291 3292/* ==========================================================================3293 Assembly Syntax: Rxx32+=vmpywoh(Rss32,Rtt32):<<1:rnd:sat3294 C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3295 Instruction Type: M3296 Execution Slots: SLOT233297 ========================================================================== */3298 3299#define Q6_P_vmpywohacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmachs_rs13300 3301/* ==========================================================================3302 Assembly Syntax: Rxx32+=vmpywoh(Rss32,Rtt32):sat3303 C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3304 Instruction Type: M3305 Execution Slots: SLOT233306 ========================================================================== */3307 3308#define Q6_P_vmpywohacc_PP_sat __builtin_HEXAGON_M2_mmachs_s03309 3310/* ==========================================================================3311 Assembly Syntax: Rxx32+=vmpywoh(Rss32,Rtt32):<<1:sat3312 C Intrinsic Prototype: Word64 Q6_P_vmpywohacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3313 Instruction Type: M3314 Execution Slots: SLOT233315 ========================================================================== */3316 3317#define Q6_P_vmpywohacc_PP_s1_sat __builtin_HEXAGON_M2_mmachs_s13318 3319/* ==========================================================================3320 Assembly Syntax: Rxx32+=vmpyweh(Rss32,Rtt32):rnd:sat3321 C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3322 Instruction Type: M3323 Execution Slots: SLOT233324 ========================================================================== */3325 3326#define Q6_P_vmpywehacc_PP_rnd_sat __builtin_HEXAGON_M2_mmacls_rs03327 3328/* ==========================================================================3329 Assembly Syntax: Rxx32+=vmpyweh(Rss32,Rtt32):<<1:rnd:sat3330 C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3331 Instruction Type: M3332 Execution Slots: SLOT233333 ========================================================================== */3334 3335#define Q6_P_vmpywehacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmacls_rs13336 3337/* ==========================================================================3338 Assembly Syntax: Rxx32+=vmpyweh(Rss32,Rtt32):sat3339 C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3340 Instruction Type: M3341 Execution Slots: SLOT233342 ========================================================================== */3343 3344#define Q6_P_vmpywehacc_PP_sat __builtin_HEXAGON_M2_mmacls_s03345 3346/* ==========================================================================3347 Assembly Syntax: Rxx32+=vmpyweh(Rss32,Rtt32):<<1:sat3348 C Intrinsic Prototype: Word64 Q6_P_vmpywehacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3349 Instruction Type: M3350 Execution Slots: SLOT233351 ========================================================================== */3352 3353#define Q6_P_vmpywehacc_PP_s1_sat __builtin_HEXAGON_M2_mmacls_s13354 3355/* ==========================================================================3356 Assembly Syntax: Rxx32+=vmpywouh(Rss32,Rtt32):rnd:sat3357 C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3358 Instruction Type: M3359 Execution Slots: SLOT233360 ========================================================================== */3361 3362#define Q6_P_vmpywouhacc_PP_rnd_sat __builtin_HEXAGON_M2_mmacuhs_rs03363 3364/* ==========================================================================3365 Assembly Syntax: Rxx32+=vmpywouh(Rss32,Rtt32):<<1:rnd:sat3366 C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3367 Instruction Type: M3368 Execution Slots: SLOT233369 ========================================================================== */3370 3371#define Q6_P_vmpywouhacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmacuhs_rs13372 3373/* ==========================================================================3374 Assembly Syntax: Rxx32+=vmpywouh(Rss32,Rtt32):sat3375 C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3376 Instruction Type: M3377 Execution Slots: SLOT233378 ========================================================================== */3379 3380#define Q6_P_vmpywouhacc_PP_sat __builtin_HEXAGON_M2_mmacuhs_s03381 3382/* ==========================================================================3383 Assembly Syntax: Rxx32+=vmpywouh(Rss32,Rtt32):<<1:sat3384 C Intrinsic Prototype: Word64 Q6_P_vmpywouhacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3385 Instruction Type: M3386 Execution Slots: SLOT233387 ========================================================================== */3388 3389#define Q6_P_vmpywouhacc_PP_s1_sat __builtin_HEXAGON_M2_mmacuhs_s13390 3391/* ==========================================================================3392 Assembly Syntax: Rxx32+=vmpyweuh(Rss32,Rtt32):rnd:sat3393 C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3394 Instruction Type: M3395 Execution Slots: SLOT233396 ========================================================================== */3397 3398#define Q6_P_vmpyweuhacc_PP_rnd_sat __builtin_HEXAGON_M2_mmaculs_rs03399 3400/* ==========================================================================3401 Assembly Syntax: Rxx32+=vmpyweuh(Rss32,Rtt32):<<1:rnd:sat3402 C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_s1_rnd_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3403 Instruction Type: M3404 Execution Slots: SLOT233405 ========================================================================== */3406 3407#define Q6_P_vmpyweuhacc_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmaculs_rs13408 3409/* ==========================================================================3410 Assembly Syntax: Rxx32+=vmpyweuh(Rss32,Rtt32):sat3411 C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3412 Instruction Type: M3413 Execution Slots: SLOT233414 ========================================================================== */3415 3416#define Q6_P_vmpyweuhacc_PP_sat __builtin_HEXAGON_M2_mmaculs_s03417 3418/* ==========================================================================3419 Assembly Syntax: Rxx32+=vmpyweuh(Rss32,Rtt32):<<1:sat3420 C Intrinsic Prototype: Word64 Q6_P_vmpyweuhacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)3421 Instruction Type: M3422 Execution Slots: SLOT233423 ========================================================================== */3424 3425#define Q6_P_vmpyweuhacc_PP_s1_sat __builtin_HEXAGON_M2_mmaculs_s13426 3427/* ==========================================================================3428 Assembly Syntax: Rdd32=vmpywoh(Rss32,Rtt32):rnd:sat3429 C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_rnd_sat(Word64 Rss, Word64 Rtt)3430 Instruction Type: M3431 Execution Slots: SLOT233432 ========================================================================== */3433 3434#define Q6_P_vmpywoh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyh_rs03435 3436/* ==========================================================================3437 Assembly Syntax: Rdd32=vmpywoh(Rss32,Rtt32):<<1:rnd:sat3438 C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)3439 Instruction Type: M3440 Execution Slots: SLOT233441 ========================================================================== */3442 3443#define Q6_P_vmpywoh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyh_rs13444 3445/* ==========================================================================3446 Assembly Syntax: Rdd32=vmpywoh(Rss32,Rtt32):sat3447 C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_sat(Word64 Rss, Word64 Rtt)3448 Instruction Type: M3449 Execution Slots: SLOT233450 ========================================================================== */3451 3452#define Q6_P_vmpywoh_PP_sat __builtin_HEXAGON_M2_mmpyh_s03453 3454/* ==========================================================================3455 Assembly Syntax: Rdd32=vmpywoh(Rss32,Rtt32):<<1:sat3456 C Intrinsic Prototype: Word64 Q6_P_vmpywoh_PP_s1_sat(Word64 Rss, Word64 Rtt)3457 Instruction Type: M3458 Execution Slots: SLOT233459 ========================================================================== */3460 3461#define Q6_P_vmpywoh_PP_s1_sat __builtin_HEXAGON_M2_mmpyh_s13462 3463/* ==========================================================================3464 Assembly Syntax: Rdd32=vmpyweh(Rss32,Rtt32):rnd:sat3465 C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_rnd_sat(Word64 Rss, Word64 Rtt)3466 Instruction Type: M3467 Execution Slots: SLOT233468 ========================================================================== */3469 3470#define Q6_P_vmpyweh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyl_rs03471 3472/* ==========================================================================3473 Assembly Syntax: Rdd32=vmpyweh(Rss32,Rtt32):<<1:rnd:sat3474 C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)3475 Instruction Type: M3476 Execution Slots: SLOT233477 ========================================================================== */3478 3479#define Q6_P_vmpyweh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyl_rs13480 3481/* ==========================================================================3482 Assembly Syntax: Rdd32=vmpyweh(Rss32,Rtt32):sat3483 C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_sat(Word64 Rss, Word64 Rtt)3484 Instruction Type: M3485 Execution Slots: SLOT233486 ========================================================================== */3487 3488#define Q6_P_vmpyweh_PP_sat __builtin_HEXAGON_M2_mmpyl_s03489 3490/* ==========================================================================3491 Assembly Syntax: Rdd32=vmpyweh(Rss32,Rtt32):<<1:sat3492 C Intrinsic Prototype: Word64 Q6_P_vmpyweh_PP_s1_sat(Word64 Rss, Word64 Rtt)3493 Instruction Type: M3494 Execution Slots: SLOT233495 ========================================================================== */3496 3497#define Q6_P_vmpyweh_PP_s1_sat __builtin_HEXAGON_M2_mmpyl_s13498 3499/* ==========================================================================3500 Assembly Syntax: Rdd32=vmpywouh(Rss32,Rtt32):rnd:sat3501 C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_rnd_sat(Word64 Rss, Word64 Rtt)3502 Instruction Type: M3503 Execution Slots: SLOT233504 ========================================================================== */3505 3506#define Q6_P_vmpywouh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyuh_rs03507 3508/* ==========================================================================3509 Assembly Syntax: Rdd32=vmpywouh(Rss32,Rtt32):<<1:rnd:sat3510 C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)3511 Instruction Type: M3512 Execution Slots: SLOT233513 ========================================================================== */3514 3515#define Q6_P_vmpywouh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyuh_rs13516 3517/* ==========================================================================3518 Assembly Syntax: Rdd32=vmpywouh(Rss32,Rtt32):sat3519 C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_sat(Word64 Rss, Word64 Rtt)3520 Instruction Type: M3521 Execution Slots: SLOT233522 ========================================================================== */3523 3524#define Q6_P_vmpywouh_PP_sat __builtin_HEXAGON_M2_mmpyuh_s03525 3526/* ==========================================================================3527 Assembly Syntax: Rdd32=vmpywouh(Rss32,Rtt32):<<1:sat3528 C Intrinsic Prototype: Word64 Q6_P_vmpywouh_PP_s1_sat(Word64 Rss, Word64 Rtt)3529 Instruction Type: M3530 Execution Slots: SLOT233531 ========================================================================== */3532 3533#define Q6_P_vmpywouh_PP_s1_sat __builtin_HEXAGON_M2_mmpyuh_s13534 3535/* ==========================================================================3536 Assembly Syntax: Rdd32=vmpyweuh(Rss32,Rtt32):rnd:sat3537 C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_rnd_sat(Word64 Rss, Word64 Rtt)3538 Instruction Type: M3539 Execution Slots: SLOT233540 ========================================================================== */3541 3542#define Q6_P_vmpyweuh_PP_rnd_sat __builtin_HEXAGON_M2_mmpyul_rs03543 3544/* ==========================================================================3545 Assembly Syntax: Rdd32=vmpyweuh(Rss32,Rtt32):<<1:rnd:sat3546 C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)3547 Instruction Type: M3548 Execution Slots: SLOT233549 ========================================================================== */3550 3551#define Q6_P_vmpyweuh_PP_s1_rnd_sat __builtin_HEXAGON_M2_mmpyul_rs13552 3553/* ==========================================================================3554 Assembly Syntax: Rdd32=vmpyweuh(Rss32,Rtt32):sat3555 C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_sat(Word64 Rss, Word64 Rtt)3556 Instruction Type: M3557 Execution Slots: SLOT233558 ========================================================================== */3559 3560#define Q6_P_vmpyweuh_PP_sat __builtin_HEXAGON_M2_mmpyul_s03561 3562/* ==========================================================================3563 Assembly Syntax: Rdd32=vmpyweuh(Rss32,Rtt32):<<1:sat3564 C Intrinsic Prototype: Word64 Q6_P_vmpyweuh_PP_s1_sat(Word64 Rss, Word64 Rtt)3565 Instruction Type: M3566 Execution Slots: SLOT233567 ========================================================================== */3568 3569#define Q6_P_vmpyweuh_PP_s1_sat __builtin_HEXAGON_M2_mmpyul_s13570 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: M3575 Execution Slots: SLOT233576 ========================================================================== */3577 3578#define Q6_R_mpyacc_RhRh __builtin_HEXAGON_M2_mpy_acc_hh_s03579 3580/* ==========================================================================3581 Assembly Syntax: Rx32+=mpy(Rs32.h,Rt32.h):<<13582 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)3583 Instruction Type: M3584 Execution Slots: SLOT233585 ========================================================================== */3586 3587#define Q6_R_mpyacc_RhRh_s1 __builtin_HEXAGON_M2_mpy_acc_hh_s13588 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: M3593 Execution Slots: SLOT233594 ========================================================================== */3595 3596#define Q6_R_mpyacc_RhRl __builtin_HEXAGON_M2_mpy_acc_hl_s03597 3598/* ==========================================================================3599 Assembly Syntax: Rx32+=mpy(Rs32.h,Rt32.l):<<13600 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)3601 Instruction Type: M3602 Execution Slots: SLOT233603 ========================================================================== */3604 3605#define Q6_R_mpyacc_RhRl_s1 __builtin_HEXAGON_M2_mpy_acc_hl_s13606 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: M3611 Execution Slots: SLOT233612 ========================================================================== */3613 3614#define Q6_R_mpyacc_RlRh __builtin_HEXAGON_M2_mpy_acc_lh_s03615 3616/* ==========================================================================3617 Assembly Syntax: Rx32+=mpy(Rs32.l,Rt32.h):<<13618 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)3619 Instruction Type: M3620 Execution Slots: SLOT233621 ========================================================================== */3622 3623#define Q6_R_mpyacc_RlRh_s1 __builtin_HEXAGON_M2_mpy_acc_lh_s13624 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: M3629 Execution Slots: SLOT233630 ========================================================================== */3631 3632#define Q6_R_mpyacc_RlRl __builtin_HEXAGON_M2_mpy_acc_ll_s03633 3634/* ==========================================================================3635 Assembly Syntax: Rx32+=mpy(Rs32.l,Rt32.l):<<13636 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)3637 Instruction Type: M3638 Execution Slots: SLOT233639 ========================================================================== */3640 3641#define Q6_R_mpyacc_RlRl_s1 __builtin_HEXAGON_M2_mpy_acc_ll_s13642 3643/* ==========================================================================3644 Assembly Syntax: Rx32+=mpy(Rs32.h,Rt32.h):sat3645 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)3646 Instruction Type: M3647 Execution Slots: SLOT233648 ========================================================================== */3649 3650#define Q6_R_mpyacc_RhRh_sat __builtin_HEXAGON_M2_mpy_acc_sat_hh_s03651 3652/* ==========================================================================3653 Assembly Syntax: Rx32+=mpy(Rs32.h,Rt32.h):<<1:sat3654 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3655 Instruction Type: M3656 Execution Slots: SLOT233657 ========================================================================== */3658 3659#define Q6_R_mpyacc_RhRh_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_hh_s13660 3661/* ==========================================================================3662 Assembly Syntax: Rx32+=mpy(Rs32.h,Rt32.l):sat3663 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)3664 Instruction Type: M3665 Execution Slots: SLOT233666 ========================================================================== */3667 3668#define Q6_R_mpyacc_RhRl_sat __builtin_HEXAGON_M2_mpy_acc_sat_hl_s03669 3670/* ==========================================================================3671 Assembly Syntax: Rx32+=mpy(Rs32.h,Rt32.l):<<1:sat3672 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RhRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3673 Instruction Type: M3674 Execution Slots: SLOT233675 ========================================================================== */3676 3677#define Q6_R_mpyacc_RhRl_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_hl_s13678 3679/* ==========================================================================3680 Assembly Syntax: Rx32+=mpy(Rs32.l,Rt32.h):sat3681 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)3682 Instruction Type: M3683 Execution Slots: SLOT233684 ========================================================================== */3685 3686#define Q6_R_mpyacc_RlRh_sat __builtin_HEXAGON_M2_mpy_acc_sat_lh_s03687 3688/* ==========================================================================3689 Assembly Syntax: Rx32+=mpy(Rs32.l,Rt32.h):<<1:sat3690 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3691 Instruction Type: M3692 Execution Slots: SLOT233693 ========================================================================== */3694 3695#define Q6_R_mpyacc_RlRh_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_lh_s13696 3697/* ==========================================================================3698 Assembly Syntax: Rx32+=mpy(Rs32.l,Rt32.l):sat3699 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)3700 Instruction Type: M3701 Execution Slots: SLOT233702 ========================================================================== */3703 3704#define Q6_R_mpyacc_RlRl_sat __builtin_HEXAGON_M2_mpy_acc_sat_ll_s03705 3706/* ==========================================================================3707 Assembly Syntax: Rx32+=mpy(Rs32.l,Rt32.l):<<1:sat3708 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RlRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3709 Instruction Type: M3710 Execution Slots: SLOT233711 ========================================================================== */3712 3713#define Q6_R_mpyacc_RlRl_s1_sat __builtin_HEXAGON_M2_mpy_acc_sat_ll_s13714 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: M3719 Execution Slots: SLOT233720 ========================================================================== */3721 3722#define Q6_R_mpy_RhRh __builtin_HEXAGON_M2_mpy_hh_s03723 3724/* ==========================================================================3725 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):<<13726 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1(Word32 Rs, Word32 Rt)3727 Instruction Type: M3728 Execution Slots: SLOT233729 ========================================================================== */3730 3731#define Q6_R_mpy_RhRh_s1 __builtin_HEXAGON_M2_mpy_hh_s13732 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: M3737 Execution Slots: SLOT233738 ========================================================================== */3739 3740#define Q6_R_mpy_RhRl __builtin_HEXAGON_M2_mpy_hl_s03741 3742/* ==========================================================================3743 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):<<13744 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1(Word32 Rs, Word32 Rt)3745 Instruction Type: M3746 Execution Slots: SLOT233747 ========================================================================== */3748 3749#define Q6_R_mpy_RhRl_s1 __builtin_HEXAGON_M2_mpy_hl_s13750 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: M3755 Execution Slots: SLOT233756 ========================================================================== */3757 3758#define Q6_R_mpy_RlRh __builtin_HEXAGON_M2_mpy_lh_s03759 3760/* ==========================================================================3761 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):<<13762 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1(Word32 Rs, Word32 Rt)3763 Instruction Type: M3764 Execution Slots: SLOT233765 ========================================================================== */3766 3767#define Q6_R_mpy_RlRh_s1 __builtin_HEXAGON_M2_mpy_lh_s13768 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: M3773 Execution Slots: SLOT233774 ========================================================================== */3775 3776#define Q6_R_mpy_RlRl __builtin_HEXAGON_M2_mpy_ll_s03777 3778/* ==========================================================================3779 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):<<13780 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1(Word32 Rs, Word32 Rt)3781 Instruction Type: M3782 Execution Slots: SLOT233783 ========================================================================== */3784 3785#define Q6_R_mpy_RlRl_s1 __builtin_HEXAGON_M2_mpy_ll_s13786 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: M3791 Execution Slots: SLOT233792 ========================================================================== */3793 3794#define Q6_R_mpynac_RhRh __builtin_HEXAGON_M2_mpy_nac_hh_s03795 3796/* ==========================================================================3797 Assembly Syntax: Rx32-=mpy(Rs32.h,Rt32.h):<<13798 C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)3799 Instruction Type: M3800 Execution Slots: SLOT233801 ========================================================================== */3802 3803#define Q6_R_mpynac_RhRh_s1 __builtin_HEXAGON_M2_mpy_nac_hh_s13804 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: M3809 Execution Slots: SLOT233810 ========================================================================== */3811 3812#define Q6_R_mpynac_RhRl __builtin_HEXAGON_M2_mpy_nac_hl_s03813 3814/* ==========================================================================3815 Assembly Syntax: Rx32-=mpy(Rs32.h,Rt32.l):<<13816 C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)3817 Instruction Type: M3818 Execution Slots: SLOT233819 ========================================================================== */3820 3821#define Q6_R_mpynac_RhRl_s1 __builtin_HEXAGON_M2_mpy_nac_hl_s13822 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: M3827 Execution Slots: SLOT233828 ========================================================================== */3829 3830#define Q6_R_mpynac_RlRh __builtin_HEXAGON_M2_mpy_nac_lh_s03831 3832/* ==========================================================================3833 Assembly Syntax: Rx32-=mpy(Rs32.l,Rt32.h):<<13834 C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)3835 Instruction Type: M3836 Execution Slots: SLOT233837 ========================================================================== */3838 3839#define Q6_R_mpynac_RlRh_s1 __builtin_HEXAGON_M2_mpy_nac_lh_s13840 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: M3845 Execution Slots: SLOT233846 ========================================================================== */3847 3848#define Q6_R_mpynac_RlRl __builtin_HEXAGON_M2_mpy_nac_ll_s03849 3850/* ==========================================================================3851 Assembly Syntax: Rx32-=mpy(Rs32.l,Rt32.l):<<13852 C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)3853 Instruction Type: M3854 Execution Slots: SLOT233855 ========================================================================== */3856 3857#define Q6_R_mpynac_RlRl_s1 __builtin_HEXAGON_M2_mpy_nac_ll_s13858 3859/* ==========================================================================3860 Assembly Syntax: Rx32-=mpy(Rs32.h,Rt32.h):sat3861 C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)3862 Instruction Type: M3863 Execution Slots: SLOT233864 ========================================================================== */3865 3866#define Q6_R_mpynac_RhRh_sat __builtin_HEXAGON_M2_mpy_nac_sat_hh_s03867 3868/* ==========================================================================3869 Assembly Syntax: Rx32-=mpy(Rs32.h,Rt32.h):<<1:sat3870 C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3871 Instruction Type: M3872 Execution Slots: SLOT233873 ========================================================================== */3874 3875#define Q6_R_mpynac_RhRh_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_hh_s13876 3877/* ==========================================================================3878 Assembly Syntax: Rx32-=mpy(Rs32.h,Rt32.l):sat3879 C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)3880 Instruction Type: M3881 Execution Slots: SLOT233882 ========================================================================== */3883 3884#define Q6_R_mpynac_RhRl_sat __builtin_HEXAGON_M2_mpy_nac_sat_hl_s03885 3886/* ==========================================================================3887 Assembly Syntax: Rx32-=mpy(Rs32.h,Rt32.l):<<1:sat3888 C Intrinsic Prototype: Word32 Q6_R_mpynac_RhRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3889 Instruction Type: M3890 Execution Slots: SLOT233891 ========================================================================== */3892 3893#define Q6_R_mpynac_RhRl_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_hl_s13894 3895/* ==========================================================================3896 Assembly Syntax: Rx32-=mpy(Rs32.l,Rt32.h):sat3897 C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh_sat(Word32 Rx, Word32 Rs, Word32 Rt)3898 Instruction Type: M3899 Execution Slots: SLOT233900 ========================================================================== */3901 3902#define Q6_R_mpynac_RlRh_sat __builtin_HEXAGON_M2_mpy_nac_sat_lh_s03903 3904/* ==========================================================================3905 Assembly Syntax: Rx32-=mpy(Rs32.l,Rt32.h):<<1:sat3906 C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRh_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3907 Instruction Type: M3908 Execution Slots: SLOT233909 ========================================================================== */3910 3911#define Q6_R_mpynac_RlRh_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_lh_s13912 3913/* ==========================================================================3914 Assembly Syntax: Rx32-=mpy(Rs32.l,Rt32.l):sat3915 C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl_sat(Word32 Rx, Word32 Rs, Word32 Rt)3916 Instruction Type: M3917 Execution Slots: SLOT233918 ========================================================================== */3919 3920#define Q6_R_mpynac_RlRl_sat __builtin_HEXAGON_M2_mpy_nac_sat_ll_s03921 3922/* ==========================================================================3923 Assembly Syntax: Rx32-=mpy(Rs32.l,Rt32.l):<<1:sat3924 C Intrinsic Prototype: Word32 Q6_R_mpynac_RlRl_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)3925 Instruction Type: M3926 Execution Slots: SLOT233927 ========================================================================== */3928 3929#define Q6_R_mpynac_RlRl_s1_sat __builtin_HEXAGON_M2_mpy_nac_sat_ll_s13930 3931/* ==========================================================================3932 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):rnd3933 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_rnd(Word32 Rs, Word32 Rt)3934 Instruction Type: M3935 Execution Slots: SLOT233936 ========================================================================== */3937 3938#define Q6_R_mpy_RhRh_rnd __builtin_HEXAGON_M2_mpy_rnd_hh_s03939 3940/* ==========================================================================3941 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):<<1:rnd3942 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1_rnd(Word32 Rs, Word32 Rt)3943 Instruction Type: M3944 Execution Slots: SLOT233945 ========================================================================== */3946 3947#define Q6_R_mpy_RhRh_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_hh_s13948 3949/* ==========================================================================3950 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):rnd3951 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_rnd(Word32 Rs, Word32 Rt)3952 Instruction Type: M3953 Execution Slots: SLOT233954 ========================================================================== */3955 3956#define Q6_R_mpy_RhRl_rnd __builtin_HEXAGON_M2_mpy_rnd_hl_s03957 3958/* ==========================================================================3959 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):<<1:rnd3960 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1_rnd(Word32 Rs, Word32 Rt)3961 Instruction Type: M3962 Execution Slots: SLOT233963 ========================================================================== */3964 3965#define Q6_R_mpy_RhRl_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_hl_s13966 3967/* ==========================================================================3968 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):rnd3969 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_rnd(Word32 Rs, Word32 Rt)3970 Instruction Type: M3971 Execution Slots: SLOT233972 ========================================================================== */3973 3974#define Q6_R_mpy_RlRh_rnd __builtin_HEXAGON_M2_mpy_rnd_lh_s03975 3976/* ==========================================================================3977 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):<<1:rnd3978 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1_rnd(Word32 Rs, Word32 Rt)3979 Instruction Type: M3980 Execution Slots: SLOT233981 ========================================================================== */3982 3983#define Q6_R_mpy_RlRh_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_lh_s13984 3985/* ==========================================================================3986 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):rnd3987 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_rnd(Word32 Rs, Word32 Rt)3988 Instruction Type: M3989 Execution Slots: SLOT233990 ========================================================================== */3991 3992#define Q6_R_mpy_RlRl_rnd __builtin_HEXAGON_M2_mpy_rnd_ll_s03993 3994/* ==========================================================================3995 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):<<1:rnd3996 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1_rnd(Word32 Rs, Word32 Rt)3997 Instruction Type: M3998 Execution Slots: SLOT233999 ========================================================================== */4000 4001#define Q6_R_mpy_RlRl_s1_rnd __builtin_HEXAGON_M2_mpy_rnd_ll_s14002 4003/* ==========================================================================4004 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):sat4005 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_sat(Word32 Rs, Word32 Rt)4006 Instruction Type: M4007 Execution Slots: SLOT234008 ========================================================================== */4009 4010#define Q6_R_mpy_RhRh_sat __builtin_HEXAGON_M2_mpy_sat_hh_s04011 4012/* ==========================================================================4013 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):<<1:sat4014 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1_sat(Word32 Rs, Word32 Rt)4015 Instruction Type: M4016 Execution Slots: SLOT234017 ========================================================================== */4018 4019#define Q6_R_mpy_RhRh_s1_sat __builtin_HEXAGON_M2_mpy_sat_hh_s14020 4021/* ==========================================================================4022 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):sat4023 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_sat(Word32 Rs, Word32 Rt)4024 Instruction Type: M4025 Execution Slots: SLOT234026 ========================================================================== */4027 4028#define Q6_R_mpy_RhRl_sat __builtin_HEXAGON_M2_mpy_sat_hl_s04029 4030/* ==========================================================================4031 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):<<1:sat4032 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1_sat(Word32 Rs, Word32 Rt)4033 Instruction Type: M4034 Execution Slots: SLOT234035 ========================================================================== */4036 4037#define Q6_R_mpy_RhRl_s1_sat __builtin_HEXAGON_M2_mpy_sat_hl_s14038 4039/* ==========================================================================4040 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):sat4041 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_sat(Word32 Rs, Word32 Rt)4042 Instruction Type: M4043 Execution Slots: SLOT234044 ========================================================================== */4045 4046#define Q6_R_mpy_RlRh_sat __builtin_HEXAGON_M2_mpy_sat_lh_s04047 4048/* ==========================================================================4049 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):<<1:sat4050 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1_sat(Word32 Rs, Word32 Rt)4051 Instruction Type: M4052 Execution Slots: SLOT234053 ========================================================================== */4054 4055#define Q6_R_mpy_RlRh_s1_sat __builtin_HEXAGON_M2_mpy_sat_lh_s14056 4057/* ==========================================================================4058 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):sat4059 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_sat(Word32 Rs, Word32 Rt)4060 Instruction Type: M4061 Execution Slots: SLOT234062 ========================================================================== */4063 4064#define Q6_R_mpy_RlRl_sat __builtin_HEXAGON_M2_mpy_sat_ll_s04065 4066/* ==========================================================================4067 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):<<1:sat4068 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1_sat(Word32 Rs, Word32 Rt)4069 Instruction Type: M4070 Execution Slots: SLOT234071 ========================================================================== */4072 4073#define Q6_R_mpy_RlRl_s1_sat __builtin_HEXAGON_M2_mpy_sat_ll_s14074 4075/* ==========================================================================4076 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):rnd:sat4077 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_rnd_sat(Word32 Rs, Word32 Rt)4078 Instruction Type: M4079 Execution Slots: SLOT234080 ========================================================================== */4081 4082#define Q6_R_mpy_RhRh_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s04083 4084/* ==========================================================================4085 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.h):<<1:rnd:sat4086 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRh_s1_rnd_sat(Word32 Rs, Word32 Rt)4087 Instruction Type: M4088 Execution Slots: SLOT234089 ========================================================================== */4090 4091#define Q6_R_mpy_RhRh_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hh_s14092 4093/* ==========================================================================4094 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):rnd:sat4095 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_rnd_sat(Word32 Rs, Word32 Rt)4096 Instruction Type: M4097 Execution Slots: SLOT234098 ========================================================================== */4099 4100#define Q6_R_mpy_RhRl_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s04101 4102/* ==========================================================================4103 Assembly Syntax: Rd32=mpy(Rs32.h,Rt32.l):<<1:rnd:sat4104 C Intrinsic Prototype: Word32 Q6_R_mpy_RhRl_s1_rnd_sat(Word32 Rs, Word32 Rt)4105 Instruction Type: M4106 Execution Slots: SLOT234107 ========================================================================== */4108 4109#define Q6_R_mpy_RhRl_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_hl_s14110 4111/* ==========================================================================4112 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):rnd:sat4113 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_rnd_sat(Word32 Rs, Word32 Rt)4114 Instruction Type: M4115 Execution Slots: SLOT234116 ========================================================================== */4117 4118#define Q6_R_mpy_RlRh_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s04119 4120/* ==========================================================================4121 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.h):<<1:rnd:sat4122 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRh_s1_rnd_sat(Word32 Rs, Word32 Rt)4123 Instruction Type: M4124 Execution Slots: SLOT234125 ========================================================================== */4126 4127#define Q6_R_mpy_RlRh_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_lh_s14128 4129/* ==========================================================================4130 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):rnd:sat4131 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_rnd_sat(Word32 Rs, Word32 Rt)4132 Instruction Type: M4133 Execution Slots: SLOT234134 ========================================================================== */4135 4136#define Q6_R_mpy_RlRl_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s04137 4138/* ==========================================================================4139 Assembly Syntax: Rd32=mpy(Rs32.l,Rt32.l):<<1:rnd:sat4140 C Intrinsic Prototype: Word32 Q6_R_mpy_RlRl_s1_rnd_sat(Word32 Rs, Word32 Rt)4141 Instruction Type: M4142 Execution Slots: SLOT234143 ========================================================================== */4144 4145#define Q6_R_mpy_RlRl_s1_rnd_sat __builtin_HEXAGON_M2_mpy_sat_rnd_ll_s14146 4147/* ==========================================================================4148 Assembly Syntax: Rd32=mpy(Rs32,Rt32)4149 C Intrinsic Prototype: Word32 Q6_R_mpy_RR(Word32 Rs, Word32 Rt)4150 Instruction Type: M4151 Execution Slots: SLOT234152 ========================================================================== */4153 4154#define Q6_R_mpy_RR __builtin_HEXAGON_M2_mpy_up4155 4156/* ==========================================================================4157 Assembly Syntax: Rd32=mpy(Rs32,Rt32):<<14158 C Intrinsic Prototype: Word32 Q6_R_mpy_RR_s1(Word32 Rs, Word32 Rt)4159 Instruction Type: M4160 Execution Slots: SLOT234161 ========================================================================== */4162 4163#define Q6_R_mpy_RR_s1 __builtin_HEXAGON_M2_mpy_up_s14164 4165/* ==========================================================================4166 Assembly Syntax: Rd32=mpy(Rs32,Rt32):<<1:sat4167 C Intrinsic Prototype: Word32 Q6_R_mpy_RR_s1_sat(Word32 Rs, Word32 Rt)4168 Instruction Type: M4169 Execution Slots: SLOT234170 ========================================================================== */4171 4172#define Q6_R_mpy_RR_s1_sat __builtin_HEXAGON_M2_mpy_up_s1_sat4173 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: M4178 Execution Slots: SLOT234179 ========================================================================== */4180 4181#define Q6_P_mpyacc_RhRh __builtin_HEXAGON_M2_mpyd_acc_hh_s04182 4183/* ==========================================================================4184 Assembly Syntax: Rxx32+=mpy(Rs32.h,Rt32.h):<<14185 C Intrinsic Prototype: Word64 Q6_P_mpyacc_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4186 Instruction Type: M4187 Execution Slots: SLOT234188 ========================================================================== */4189 4190#define Q6_P_mpyacc_RhRh_s1 __builtin_HEXAGON_M2_mpyd_acc_hh_s14191 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: M4196 Execution Slots: SLOT234197 ========================================================================== */4198 4199#define Q6_P_mpyacc_RhRl __builtin_HEXAGON_M2_mpyd_acc_hl_s04200 4201/* ==========================================================================4202 Assembly Syntax: Rxx32+=mpy(Rs32.h,Rt32.l):<<14203 C Intrinsic Prototype: Word64 Q6_P_mpyacc_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4204 Instruction Type: M4205 Execution Slots: SLOT234206 ========================================================================== */4207 4208#define Q6_P_mpyacc_RhRl_s1 __builtin_HEXAGON_M2_mpyd_acc_hl_s14209 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: M4214 Execution Slots: SLOT234215 ========================================================================== */4216 4217#define Q6_P_mpyacc_RlRh __builtin_HEXAGON_M2_mpyd_acc_lh_s04218 4219/* ==========================================================================4220 Assembly Syntax: Rxx32+=mpy(Rs32.l,Rt32.h):<<14221 C Intrinsic Prototype: Word64 Q6_P_mpyacc_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4222 Instruction Type: M4223 Execution Slots: SLOT234224 ========================================================================== */4225 4226#define Q6_P_mpyacc_RlRh_s1 __builtin_HEXAGON_M2_mpyd_acc_lh_s14227 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: M4232 Execution Slots: SLOT234233 ========================================================================== */4234 4235#define Q6_P_mpyacc_RlRl __builtin_HEXAGON_M2_mpyd_acc_ll_s04236 4237/* ==========================================================================4238 Assembly Syntax: Rxx32+=mpy(Rs32.l,Rt32.l):<<14239 C Intrinsic Prototype: Word64 Q6_P_mpyacc_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4240 Instruction Type: M4241 Execution Slots: SLOT234242 ========================================================================== */4243 4244#define Q6_P_mpyacc_RlRl_s1 __builtin_HEXAGON_M2_mpyd_acc_ll_s14245 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: M4250 Execution Slots: SLOT234251 ========================================================================== */4252 4253#define Q6_P_mpy_RhRh __builtin_HEXAGON_M2_mpyd_hh_s04254 4255/* ==========================================================================4256 Assembly Syntax: Rdd32=mpy(Rs32.h,Rt32.h):<<14257 C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh_s1(Word32 Rs, Word32 Rt)4258 Instruction Type: M4259 Execution Slots: SLOT234260 ========================================================================== */4261 4262#define Q6_P_mpy_RhRh_s1 __builtin_HEXAGON_M2_mpyd_hh_s14263 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: M4268 Execution Slots: SLOT234269 ========================================================================== */4270 4271#define Q6_P_mpy_RhRl __builtin_HEXAGON_M2_mpyd_hl_s04272 4273/* ==========================================================================4274 Assembly Syntax: Rdd32=mpy(Rs32.h,Rt32.l):<<14275 C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl_s1(Word32 Rs, Word32 Rt)4276 Instruction Type: M4277 Execution Slots: SLOT234278 ========================================================================== */4279 4280#define Q6_P_mpy_RhRl_s1 __builtin_HEXAGON_M2_mpyd_hl_s14281 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: M4286 Execution Slots: SLOT234287 ========================================================================== */4288 4289#define Q6_P_mpy_RlRh __builtin_HEXAGON_M2_mpyd_lh_s04290 4291/* ==========================================================================4292 Assembly Syntax: Rdd32=mpy(Rs32.l,Rt32.h):<<14293 C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh_s1(Word32 Rs, Word32 Rt)4294 Instruction Type: M4295 Execution Slots: SLOT234296 ========================================================================== */4297 4298#define Q6_P_mpy_RlRh_s1 __builtin_HEXAGON_M2_mpyd_lh_s14299 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: M4304 Execution Slots: SLOT234305 ========================================================================== */4306 4307#define Q6_P_mpy_RlRl __builtin_HEXAGON_M2_mpyd_ll_s04308 4309/* ==========================================================================4310 Assembly Syntax: Rdd32=mpy(Rs32.l,Rt32.l):<<14311 C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl_s1(Word32 Rs, Word32 Rt)4312 Instruction Type: M4313 Execution Slots: SLOT234314 ========================================================================== */4315 4316#define Q6_P_mpy_RlRl_s1 __builtin_HEXAGON_M2_mpyd_ll_s14317 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: M4322 Execution Slots: SLOT234323 ========================================================================== */4324 4325#define Q6_P_mpynac_RhRh __builtin_HEXAGON_M2_mpyd_nac_hh_s04326 4327/* ==========================================================================4328 Assembly Syntax: Rxx32-=mpy(Rs32.h,Rt32.h):<<14329 C Intrinsic Prototype: Word64 Q6_P_mpynac_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4330 Instruction Type: M4331 Execution Slots: SLOT234332 ========================================================================== */4333 4334#define Q6_P_mpynac_RhRh_s1 __builtin_HEXAGON_M2_mpyd_nac_hh_s14335 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: M4340 Execution Slots: SLOT234341 ========================================================================== */4342 4343#define Q6_P_mpynac_RhRl __builtin_HEXAGON_M2_mpyd_nac_hl_s04344 4345/* ==========================================================================4346 Assembly Syntax: Rxx32-=mpy(Rs32.h,Rt32.l):<<14347 C Intrinsic Prototype: Word64 Q6_P_mpynac_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4348 Instruction Type: M4349 Execution Slots: SLOT234350 ========================================================================== */4351 4352#define Q6_P_mpynac_RhRl_s1 __builtin_HEXAGON_M2_mpyd_nac_hl_s14353 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: M4358 Execution Slots: SLOT234359 ========================================================================== */4360 4361#define Q6_P_mpynac_RlRh __builtin_HEXAGON_M2_mpyd_nac_lh_s04362 4363/* ==========================================================================4364 Assembly Syntax: Rxx32-=mpy(Rs32.l,Rt32.h):<<14365 C Intrinsic Prototype: Word64 Q6_P_mpynac_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4366 Instruction Type: M4367 Execution Slots: SLOT234368 ========================================================================== */4369 4370#define Q6_P_mpynac_RlRh_s1 __builtin_HEXAGON_M2_mpyd_nac_lh_s14371 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: M4376 Execution Slots: SLOT234377 ========================================================================== */4378 4379#define Q6_P_mpynac_RlRl __builtin_HEXAGON_M2_mpyd_nac_ll_s04380 4381/* ==========================================================================4382 Assembly Syntax: Rxx32-=mpy(Rs32.l,Rt32.l):<<14383 C Intrinsic Prototype: Word64 Q6_P_mpynac_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4384 Instruction Type: M4385 Execution Slots: SLOT234386 ========================================================================== */4387 4388#define Q6_P_mpynac_RlRl_s1 __builtin_HEXAGON_M2_mpyd_nac_ll_s14389 4390/* ==========================================================================4391 Assembly Syntax: Rdd32=mpy(Rs32.h,Rt32.h):rnd4392 C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh_rnd(Word32 Rs, Word32 Rt)4393 Instruction Type: M4394 Execution Slots: SLOT234395 ========================================================================== */4396 4397#define Q6_P_mpy_RhRh_rnd __builtin_HEXAGON_M2_mpyd_rnd_hh_s04398 4399/* ==========================================================================4400 Assembly Syntax: Rdd32=mpy(Rs32.h,Rt32.h):<<1:rnd4401 C Intrinsic Prototype: Word64 Q6_P_mpy_RhRh_s1_rnd(Word32 Rs, Word32 Rt)4402 Instruction Type: M4403 Execution Slots: SLOT234404 ========================================================================== */4405 4406#define Q6_P_mpy_RhRh_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_hh_s14407 4408/* ==========================================================================4409 Assembly Syntax: Rdd32=mpy(Rs32.h,Rt32.l):rnd4410 C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl_rnd(Word32 Rs, Word32 Rt)4411 Instruction Type: M4412 Execution Slots: SLOT234413 ========================================================================== */4414 4415#define Q6_P_mpy_RhRl_rnd __builtin_HEXAGON_M2_mpyd_rnd_hl_s04416 4417/* ==========================================================================4418 Assembly Syntax: Rdd32=mpy(Rs32.h,Rt32.l):<<1:rnd4419 C Intrinsic Prototype: Word64 Q6_P_mpy_RhRl_s1_rnd(Word32 Rs, Word32 Rt)4420 Instruction Type: M4421 Execution Slots: SLOT234422 ========================================================================== */4423 4424#define Q6_P_mpy_RhRl_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_hl_s14425 4426/* ==========================================================================4427 Assembly Syntax: Rdd32=mpy(Rs32.l,Rt32.h):rnd4428 C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh_rnd(Word32 Rs, Word32 Rt)4429 Instruction Type: M4430 Execution Slots: SLOT234431 ========================================================================== */4432 4433#define Q6_P_mpy_RlRh_rnd __builtin_HEXAGON_M2_mpyd_rnd_lh_s04434 4435/* ==========================================================================4436 Assembly Syntax: Rdd32=mpy(Rs32.l,Rt32.h):<<1:rnd4437 C Intrinsic Prototype: Word64 Q6_P_mpy_RlRh_s1_rnd(Word32 Rs, Word32 Rt)4438 Instruction Type: M4439 Execution Slots: SLOT234440 ========================================================================== */4441 4442#define Q6_P_mpy_RlRh_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_lh_s14443 4444/* ==========================================================================4445 Assembly Syntax: Rdd32=mpy(Rs32.l,Rt32.l):rnd4446 C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl_rnd(Word32 Rs, Word32 Rt)4447 Instruction Type: M4448 Execution Slots: SLOT234449 ========================================================================== */4450 4451#define Q6_P_mpy_RlRl_rnd __builtin_HEXAGON_M2_mpyd_rnd_ll_s04452 4453/* ==========================================================================4454 Assembly Syntax: Rdd32=mpy(Rs32.l,Rt32.l):<<1:rnd4455 C Intrinsic Prototype: Word64 Q6_P_mpy_RlRl_s1_rnd(Word32 Rs, Word32 Rt)4456 Instruction Type: M4457 Execution Slots: SLOT234458 ========================================================================== */4459 4460#define Q6_P_mpy_RlRl_s1_rnd __builtin_HEXAGON_M2_mpyd_rnd_ll_s14461 4462/* ==========================================================================4463 Assembly Syntax: Rd32=mpyi(Rs32,Rt32)4464 C Intrinsic Prototype: Word32 Q6_R_mpyi_RR(Word32 Rs, Word32 Rt)4465 Instruction Type: M4466 Execution Slots: SLOT234467 ========================================================================== */4468 4469#define Q6_R_mpyi_RR __builtin_HEXAGON_M2_mpyi4470 4471/* ==========================================================================4472 Assembly Syntax: Rd32=mpyi(Rs32,#m9)4473 C Intrinsic Prototype: Word32 Q6_R_mpyi_RI(Word32 Rs, Word32 Im9)4474 Instruction Type: M4475 Execution Slots: SLOT01234476 ========================================================================== */4477 4478#define Q6_R_mpyi_RI __builtin_HEXAGON_M2_mpysmi4479 4480/* ==========================================================================4481 Assembly Syntax: Rd32=mpysu(Rs32,Rt32)4482 C Intrinsic Prototype: Word32 Q6_R_mpysu_RR(Word32 Rs, Word32 Rt)4483 Instruction Type: M4484 Execution Slots: SLOT234485 ========================================================================== */4486 4487#define Q6_R_mpysu_RR __builtin_HEXAGON_M2_mpysu_up4488 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: M4493 Execution Slots: SLOT234494 ========================================================================== */4495 4496#define Q6_R_mpyuacc_RhRh __builtin_HEXAGON_M2_mpyu_acc_hh_s04497 4498/* ==========================================================================4499 Assembly Syntax: Rx32+=mpyu(Rs32.h,Rt32.h):<<14500 C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)4501 Instruction Type: M4502 Execution Slots: SLOT234503 ========================================================================== */4504 4505#define Q6_R_mpyuacc_RhRh_s1 __builtin_HEXAGON_M2_mpyu_acc_hh_s14506 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: M4511 Execution Slots: SLOT234512 ========================================================================== */4513 4514#define Q6_R_mpyuacc_RhRl __builtin_HEXAGON_M2_mpyu_acc_hl_s04515 4516/* ==========================================================================4517 Assembly Syntax: Rx32+=mpyu(Rs32.h,Rt32.l):<<14518 C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)4519 Instruction Type: M4520 Execution Slots: SLOT234521 ========================================================================== */4522 4523#define Q6_R_mpyuacc_RhRl_s1 __builtin_HEXAGON_M2_mpyu_acc_hl_s14524 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: M4529 Execution Slots: SLOT234530 ========================================================================== */4531 4532#define Q6_R_mpyuacc_RlRh __builtin_HEXAGON_M2_mpyu_acc_lh_s04533 4534/* ==========================================================================4535 Assembly Syntax: Rx32+=mpyu(Rs32.l,Rt32.h):<<14536 C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)4537 Instruction Type: M4538 Execution Slots: SLOT234539 ========================================================================== */4540 4541#define Q6_R_mpyuacc_RlRh_s1 __builtin_HEXAGON_M2_mpyu_acc_lh_s14542 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: M4547 Execution Slots: SLOT234548 ========================================================================== */4549 4550#define Q6_R_mpyuacc_RlRl __builtin_HEXAGON_M2_mpyu_acc_ll_s04551 4552/* ==========================================================================4553 Assembly Syntax: Rx32+=mpyu(Rs32.l,Rt32.l):<<14554 C Intrinsic Prototype: Word32 Q6_R_mpyuacc_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)4555 Instruction Type: M4556 Execution Slots: SLOT234557 ========================================================================== */4558 4559#define Q6_R_mpyuacc_RlRl_s1 __builtin_HEXAGON_M2_mpyu_acc_ll_s14560 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: M4565 Execution Slots: SLOT234566 ========================================================================== */4567 4568#define Q6_R_mpyu_RhRh __builtin_HEXAGON_M2_mpyu_hh_s04569 4570/* ==========================================================================4571 Assembly Syntax: Rd32=mpyu(Rs32.h,Rt32.h):<<14572 C Intrinsic Prototype: UWord32 Q6_R_mpyu_RhRh_s1(Word32 Rs, Word32 Rt)4573 Instruction Type: M4574 Execution Slots: SLOT234575 ========================================================================== */4576 4577#define Q6_R_mpyu_RhRh_s1 __builtin_HEXAGON_M2_mpyu_hh_s14578 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: M4583 Execution Slots: SLOT234584 ========================================================================== */4585 4586#define Q6_R_mpyu_RhRl __builtin_HEXAGON_M2_mpyu_hl_s04587 4588/* ==========================================================================4589 Assembly Syntax: Rd32=mpyu(Rs32.h,Rt32.l):<<14590 C Intrinsic Prototype: UWord32 Q6_R_mpyu_RhRl_s1(Word32 Rs, Word32 Rt)4591 Instruction Type: M4592 Execution Slots: SLOT234593 ========================================================================== */4594 4595#define Q6_R_mpyu_RhRl_s1 __builtin_HEXAGON_M2_mpyu_hl_s14596 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: M4601 Execution Slots: SLOT234602 ========================================================================== */4603 4604#define Q6_R_mpyu_RlRh __builtin_HEXAGON_M2_mpyu_lh_s04605 4606/* ==========================================================================4607 Assembly Syntax: Rd32=mpyu(Rs32.l,Rt32.h):<<14608 C Intrinsic Prototype: UWord32 Q6_R_mpyu_RlRh_s1(Word32 Rs, Word32 Rt)4609 Instruction Type: M4610 Execution Slots: SLOT234611 ========================================================================== */4612 4613#define Q6_R_mpyu_RlRh_s1 __builtin_HEXAGON_M2_mpyu_lh_s14614 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: M4619 Execution Slots: SLOT234620 ========================================================================== */4621 4622#define Q6_R_mpyu_RlRl __builtin_HEXAGON_M2_mpyu_ll_s04623 4624/* ==========================================================================4625 Assembly Syntax: Rd32=mpyu(Rs32.l,Rt32.l):<<14626 C Intrinsic Prototype: UWord32 Q6_R_mpyu_RlRl_s1(Word32 Rs, Word32 Rt)4627 Instruction Type: M4628 Execution Slots: SLOT234629 ========================================================================== */4630 4631#define Q6_R_mpyu_RlRl_s1 __builtin_HEXAGON_M2_mpyu_ll_s14632 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: M4637 Execution Slots: SLOT234638 ========================================================================== */4639 4640#define Q6_R_mpyunac_RhRh __builtin_HEXAGON_M2_mpyu_nac_hh_s04641 4642/* ==========================================================================4643 Assembly Syntax: Rx32-=mpyu(Rs32.h,Rt32.h):<<14644 C Intrinsic Prototype: Word32 Q6_R_mpyunac_RhRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)4645 Instruction Type: M4646 Execution Slots: SLOT234647 ========================================================================== */4648 4649#define Q6_R_mpyunac_RhRh_s1 __builtin_HEXAGON_M2_mpyu_nac_hh_s14650 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: M4655 Execution Slots: SLOT234656 ========================================================================== */4657 4658#define Q6_R_mpyunac_RhRl __builtin_HEXAGON_M2_mpyu_nac_hl_s04659 4660/* ==========================================================================4661 Assembly Syntax: Rx32-=mpyu(Rs32.h,Rt32.l):<<14662 C Intrinsic Prototype: Word32 Q6_R_mpyunac_RhRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)4663 Instruction Type: M4664 Execution Slots: SLOT234665 ========================================================================== */4666 4667#define Q6_R_mpyunac_RhRl_s1 __builtin_HEXAGON_M2_mpyu_nac_hl_s14668 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: M4673 Execution Slots: SLOT234674 ========================================================================== */4675 4676#define Q6_R_mpyunac_RlRh __builtin_HEXAGON_M2_mpyu_nac_lh_s04677 4678/* ==========================================================================4679 Assembly Syntax: Rx32-=mpyu(Rs32.l,Rt32.h):<<14680 C Intrinsic Prototype: Word32 Q6_R_mpyunac_RlRh_s1(Word32 Rx, Word32 Rs, Word32 Rt)4681 Instruction Type: M4682 Execution Slots: SLOT234683 ========================================================================== */4684 4685#define Q6_R_mpyunac_RlRh_s1 __builtin_HEXAGON_M2_mpyu_nac_lh_s14686 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: M4691 Execution Slots: SLOT234692 ========================================================================== */4693 4694#define Q6_R_mpyunac_RlRl __builtin_HEXAGON_M2_mpyu_nac_ll_s04695 4696/* ==========================================================================4697 Assembly Syntax: Rx32-=mpyu(Rs32.l,Rt32.l):<<14698 C Intrinsic Prototype: Word32 Q6_R_mpyunac_RlRl_s1(Word32 Rx, Word32 Rs, Word32 Rt)4699 Instruction Type: M4700 Execution Slots: SLOT234701 ========================================================================== */4702 4703#define Q6_R_mpyunac_RlRl_s1 __builtin_HEXAGON_M2_mpyu_nac_ll_s14704 4705/* ==========================================================================4706 Assembly Syntax: Rd32=mpyu(Rs32,Rt32)4707 C Intrinsic Prototype: UWord32 Q6_R_mpyu_RR(Word32 Rs, Word32 Rt)4708 Instruction Type: M4709 Execution Slots: SLOT234710 ========================================================================== */4711 4712#define Q6_R_mpyu_RR __builtin_HEXAGON_M2_mpyu_up4713 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: M4718 Execution Slots: SLOT234719 ========================================================================== */4720 4721#define Q6_P_mpyuacc_RhRh __builtin_HEXAGON_M2_mpyud_acc_hh_s04722 4723/* ==========================================================================4724 Assembly Syntax: Rxx32+=mpyu(Rs32.h,Rt32.h):<<14725 C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4726 Instruction Type: M4727 Execution Slots: SLOT234728 ========================================================================== */4729 4730#define Q6_P_mpyuacc_RhRh_s1 __builtin_HEXAGON_M2_mpyud_acc_hh_s14731 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: M4736 Execution Slots: SLOT234737 ========================================================================== */4738 4739#define Q6_P_mpyuacc_RhRl __builtin_HEXAGON_M2_mpyud_acc_hl_s04740 4741/* ==========================================================================4742 Assembly Syntax: Rxx32+=mpyu(Rs32.h,Rt32.l):<<14743 C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4744 Instruction Type: M4745 Execution Slots: SLOT234746 ========================================================================== */4747 4748#define Q6_P_mpyuacc_RhRl_s1 __builtin_HEXAGON_M2_mpyud_acc_hl_s14749 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: M4754 Execution Slots: SLOT234755 ========================================================================== */4756 4757#define Q6_P_mpyuacc_RlRh __builtin_HEXAGON_M2_mpyud_acc_lh_s04758 4759/* ==========================================================================4760 Assembly Syntax: Rxx32+=mpyu(Rs32.l,Rt32.h):<<14761 C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4762 Instruction Type: M4763 Execution Slots: SLOT234764 ========================================================================== */4765 4766#define Q6_P_mpyuacc_RlRh_s1 __builtin_HEXAGON_M2_mpyud_acc_lh_s14767 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: M4772 Execution Slots: SLOT234773 ========================================================================== */4774 4775#define Q6_P_mpyuacc_RlRl __builtin_HEXAGON_M2_mpyud_acc_ll_s04776 4777/* ==========================================================================4778 Assembly Syntax: Rxx32+=mpyu(Rs32.l,Rt32.l):<<14779 C Intrinsic Prototype: Word64 Q6_P_mpyuacc_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4780 Instruction Type: M4781 Execution Slots: SLOT234782 ========================================================================== */4783 4784#define Q6_P_mpyuacc_RlRl_s1 __builtin_HEXAGON_M2_mpyud_acc_ll_s14785 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: M4790 Execution Slots: SLOT234791 ========================================================================== */4792 4793#define Q6_P_mpyu_RhRh __builtin_HEXAGON_M2_mpyud_hh_s04794 4795/* ==========================================================================4796 Assembly Syntax: Rdd32=mpyu(Rs32.h,Rt32.h):<<14797 C Intrinsic Prototype: UWord64 Q6_P_mpyu_RhRh_s1(Word32 Rs, Word32 Rt)4798 Instruction Type: M4799 Execution Slots: SLOT234800 ========================================================================== */4801 4802#define Q6_P_mpyu_RhRh_s1 __builtin_HEXAGON_M2_mpyud_hh_s14803 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: M4808 Execution Slots: SLOT234809 ========================================================================== */4810 4811#define Q6_P_mpyu_RhRl __builtin_HEXAGON_M2_mpyud_hl_s04812 4813/* ==========================================================================4814 Assembly Syntax: Rdd32=mpyu(Rs32.h,Rt32.l):<<14815 C Intrinsic Prototype: UWord64 Q6_P_mpyu_RhRl_s1(Word32 Rs, Word32 Rt)4816 Instruction Type: M4817 Execution Slots: SLOT234818 ========================================================================== */4819 4820#define Q6_P_mpyu_RhRl_s1 __builtin_HEXAGON_M2_mpyud_hl_s14821 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: M4826 Execution Slots: SLOT234827 ========================================================================== */4828 4829#define Q6_P_mpyu_RlRh __builtin_HEXAGON_M2_mpyud_lh_s04830 4831/* ==========================================================================4832 Assembly Syntax: Rdd32=mpyu(Rs32.l,Rt32.h):<<14833 C Intrinsic Prototype: UWord64 Q6_P_mpyu_RlRh_s1(Word32 Rs, Word32 Rt)4834 Instruction Type: M4835 Execution Slots: SLOT234836 ========================================================================== */4837 4838#define Q6_P_mpyu_RlRh_s1 __builtin_HEXAGON_M2_mpyud_lh_s14839 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: M4844 Execution Slots: SLOT234845 ========================================================================== */4846 4847#define Q6_P_mpyu_RlRl __builtin_HEXAGON_M2_mpyud_ll_s04848 4849/* ==========================================================================4850 Assembly Syntax: Rdd32=mpyu(Rs32.l,Rt32.l):<<14851 C Intrinsic Prototype: UWord64 Q6_P_mpyu_RlRl_s1(Word32 Rs, Word32 Rt)4852 Instruction Type: M4853 Execution Slots: SLOT234854 ========================================================================== */4855 4856#define Q6_P_mpyu_RlRl_s1 __builtin_HEXAGON_M2_mpyud_ll_s14857 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: M4862 Execution Slots: SLOT234863 ========================================================================== */4864 4865#define Q6_P_mpyunac_RhRh __builtin_HEXAGON_M2_mpyud_nac_hh_s04866 4867/* ==========================================================================4868 Assembly Syntax: Rxx32-=mpyu(Rs32.h,Rt32.h):<<14869 C Intrinsic Prototype: Word64 Q6_P_mpyunac_RhRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4870 Instruction Type: M4871 Execution Slots: SLOT234872 ========================================================================== */4873 4874#define Q6_P_mpyunac_RhRh_s1 __builtin_HEXAGON_M2_mpyud_nac_hh_s14875 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: M4880 Execution Slots: SLOT234881 ========================================================================== */4882 4883#define Q6_P_mpyunac_RhRl __builtin_HEXAGON_M2_mpyud_nac_hl_s04884 4885/* ==========================================================================4886 Assembly Syntax: Rxx32-=mpyu(Rs32.h,Rt32.l):<<14887 C Intrinsic Prototype: Word64 Q6_P_mpyunac_RhRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4888 Instruction Type: M4889 Execution Slots: SLOT234890 ========================================================================== */4891 4892#define Q6_P_mpyunac_RhRl_s1 __builtin_HEXAGON_M2_mpyud_nac_hl_s14893 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: M4898 Execution Slots: SLOT234899 ========================================================================== */4900 4901#define Q6_P_mpyunac_RlRh __builtin_HEXAGON_M2_mpyud_nac_lh_s04902 4903/* ==========================================================================4904 Assembly Syntax: Rxx32-=mpyu(Rs32.l,Rt32.h):<<14905 C Intrinsic Prototype: Word64 Q6_P_mpyunac_RlRh_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4906 Instruction Type: M4907 Execution Slots: SLOT234908 ========================================================================== */4909 4910#define Q6_P_mpyunac_RlRh_s1 __builtin_HEXAGON_M2_mpyud_nac_lh_s14911 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: M4916 Execution Slots: SLOT234917 ========================================================================== */4918 4919#define Q6_P_mpyunac_RlRl __builtin_HEXAGON_M2_mpyud_nac_ll_s04920 4921/* ==========================================================================4922 Assembly Syntax: Rxx32-=mpyu(Rs32.l,Rt32.l):<<14923 C Intrinsic Prototype: Word64 Q6_P_mpyunac_RlRl_s1(Word64 Rxx, Word32 Rs, Word32 Rt)4924 Instruction Type: M4925 Execution Slots: SLOT234926 ========================================================================== */4927 4928#define Q6_P_mpyunac_RlRl_s1 __builtin_HEXAGON_M2_mpyud_nac_ll_s14929 4930/* ==========================================================================4931 Assembly Syntax: Rd32=mpyui(Rs32,Rt32)4932 C Intrinsic Prototype: Word32 Q6_R_mpyui_RR(Word32 Rs, Word32 Rt)4933 Instruction Type: M4934 Execution Slots: SLOT01234935 ========================================================================== */4936 4937#define Q6_R_mpyui_RR __builtin_HEXAGON_M2_mpyui4938 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: M4943 Execution Slots: SLOT234944 ========================================================================== */4945 4946#define Q6_R_addnac_RR __builtin_HEXAGON_M2_nacci4947 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: M4952 Execution Slots: SLOT234953 ========================================================================== */4954 4955#define Q6_R_addnac_RI __builtin_HEXAGON_M2_naccii4956 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: M4961 Execution Slots: SLOT234962 ========================================================================== */4963 4964#define Q6_R_subacc_RR __builtin_HEXAGON_M2_subacc4965 4966/* ==========================================================================4967 Assembly Syntax: Rdd32=vabsdiffh(Rtt32,Rss32)4968 C Intrinsic Prototype: Word64 Q6_P_vabsdiffh_PP(Word64 Rtt, Word64 Rss)4969 Instruction Type: M4970 Execution Slots: SLOT234971 ========================================================================== */4972 4973#define Q6_P_vabsdiffh_PP __builtin_HEXAGON_M2_vabsdiffh4974 4975/* ==========================================================================4976 Assembly Syntax: Rdd32=vabsdiffw(Rtt32,Rss32)4977 C Intrinsic Prototype: Word64 Q6_P_vabsdiffw_PP(Word64 Rtt, Word64 Rss)4978 Instruction Type: M4979 Execution Slots: SLOT234980 ========================================================================== */4981 4982#define Q6_P_vabsdiffw_PP __builtin_HEXAGON_M2_vabsdiffw4983 4984/* ==========================================================================4985 Assembly Syntax: Rxx32+=vcmpyi(Rss32,Rtt32):sat4986 C Intrinsic Prototype: Word64 Q6_P_vcmpyiacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)4987 Instruction Type: M4988 Execution Slots: SLOT234989 ========================================================================== */4990 4991#define Q6_P_vcmpyiacc_PP_sat __builtin_HEXAGON_M2_vcmac_s0_sat_i4992 4993/* ==========================================================================4994 Assembly Syntax: Rxx32+=vcmpyr(Rss32,Rtt32):sat4995 C Intrinsic Prototype: Word64 Q6_P_vcmpyracc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)4996 Instruction Type: M4997 Execution Slots: SLOT234998 ========================================================================== */4999 5000#define Q6_P_vcmpyracc_PP_sat __builtin_HEXAGON_M2_vcmac_s0_sat_r5001 5002/* ==========================================================================5003 Assembly Syntax: Rdd32=vcmpyi(Rss32,Rtt32):sat5004 C Intrinsic Prototype: Word64 Q6_P_vcmpyi_PP_sat(Word64 Rss, Word64 Rtt)5005 Instruction Type: M5006 Execution Slots: SLOT235007 ========================================================================== */5008 5009#define Q6_P_vcmpyi_PP_sat __builtin_HEXAGON_M2_vcmpy_s0_sat_i5010 5011/* ==========================================================================5012 Assembly Syntax: Rdd32=vcmpyr(Rss32,Rtt32):sat5013 C Intrinsic Prototype: Word64 Q6_P_vcmpyr_PP_sat(Word64 Rss, Word64 Rtt)5014 Instruction Type: M5015 Execution Slots: SLOT235016 ========================================================================== */5017 5018#define Q6_P_vcmpyr_PP_sat __builtin_HEXAGON_M2_vcmpy_s0_sat_r5019 5020/* ==========================================================================5021 Assembly Syntax: Rdd32=vcmpyi(Rss32,Rtt32):<<1:sat5022 C Intrinsic Prototype: Word64 Q6_P_vcmpyi_PP_s1_sat(Word64 Rss, Word64 Rtt)5023 Instruction Type: M5024 Execution Slots: SLOT235025 ========================================================================== */5026 5027#define Q6_P_vcmpyi_PP_s1_sat __builtin_HEXAGON_M2_vcmpy_s1_sat_i5028 5029/* ==========================================================================5030 Assembly Syntax: Rdd32=vcmpyr(Rss32,Rtt32):<<1:sat5031 C Intrinsic Prototype: Word64 Q6_P_vcmpyr_PP_s1_sat(Word64 Rss, Word64 Rtt)5032 Instruction Type: M5033 Execution Slots: SLOT235034 ========================================================================== */5035 5036#define Q6_P_vcmpyr_PP_s1_sat __builtin_HEXAGON_M2_vcmpy_s1_sat_r5037 5038/* ==========================================================================5039 Assembly Syntax: Rxx32+=vdmpy(Rss32,Rtt32):sat5040 C Intrinsic Prototype: Word64 Q6_P_vdmpyacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)5041 Instruction Type: M5042 Execution Slots: SLOT235043 ========================================================================== */5044 5045#define Q6_P_vdmpyacc_PP_sat __builtin_HEXAGON_M2_vdmacs_s05046 5047/* ==========================================================================5048 Assembly Syntax: Rxx32+=vdmpy(Rss32,Rtt32):<<1:sat5049 C Intrinsic Prototype: Word64 Q6_P_vdmpyacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)5050 Instruction Type: M5051 Execution Slots: SLOT235052 ========================================================================== */5053 5054#define Q6_P_vdmpyacc_PP_s1_sat __builtin_HEXAGON_M2_vdmacs_s15055 5056/* ==========================================================================5057 Assembly Syntax: Rd32=vdmpy(Rss32,Rtt32):rnd:sat5058 C Intrinsic Prototype: Word32 Q6_R_vdmpy_PP_rnd_sat(Word64 Rss, Word64 Rtt)5059 Instruction Type: M5060 Execution Slots: SLOT235061 ========================================================================== */5062 5063#define Q6_R_vdmpy_PP_rnd_sat __builtin_HEXAGON_M2_vdmpyrs_s05064 5065/* ==========================================================================5066 Assembly Syntax: Rd32=vdmpy(Rss32,Rtt32):<<1:rnd:sat5067 C Intrinsic Prototype: Word32 Q6_R_vdmpy_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)5068 Instruction Type: M5069 Execution Slots: SLOT235070 ========================================================================== */5071 5072#define Q6_R_vdmpy_PP_s1_rnd_sat __builtin_HEXAGON_M2_vdmpyrs_s15073 5074/* ==========================================================================5075 Assembly Syntax: Rdd32=vdmpy(Rss32,Rtt32):sat5076 C Intrinsic Prototype: Word64 Q6_P_vdmpy_PP_sat(Word64 Rss, Word64 Rtt)5077 Instruction Type: M5078 Execution Slots: SLOT235079 ========================================================================== */5080 5081#define Q6_P_vdmpy_PP_sat __builtin_HEXAGON_M2_vdmpys_s05082 5083/* ==========================================================================5084 Assembly Syntax: Rdd32=vdmpy(Rss32,Rtt32):<<1:sat5085 C Intrinsic Prototype: Word64 Q6_P_vdmpy_PP_s1_sat(Word64 Rss, Word64 Rtt)5086 Instruction Type: M5087 Execution Slots: SLOT235088 ========================================================================== */5089 5090#define Q6_P_vdmpy_PP_s1_sat __builtin_HEXAGON_M2_vdmpys_s15091 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: M5096 Execution Slots: SLOT235097 ========================================================================== */5098 5099#define Q6_P_vmpyhacc_RR __builtin_HEXAGON_M2_vmac25100 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: M5105 Execution Slots: SLOT235106 ========================================================================== */5107 5108#define Q6_P_vmpyehacc_PP __builtin_HEXAGON_M2_vmac2es5109 5110/* ==========================================================================5111 Assembly Syntax: Rxx32+=vmpyeh(Rss32,Rtt32):sat5112 C Intrinsic Prototype: Word64 Q6_P_vmpyehacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)5113 Instruction Type: M5114 Execution Slots: SLOT235115 ========================================================================== */5116 5117#define Q6_P_vmpyehacc_PP_sat __builtin_HEXAGON_M2_vmac2es_s05118 5119/* ==========================================================================5120 Assembly Syntax: Rxx32+=vmpyeh(Rss32,Rtt32):<<1:sat5121 C Intrinsic Prototype: Word64 Q6_P_vmpyehacc_PP_s1_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)5122 Instruction Type: M5123 Execution Slots: SLOT235124 ========================================================================== */5125 5126#define Q6_P_vmpyehacc_PP_s1_sat __builtin_HEXAGON_M2_vmac2es_s15127 5128/* ==========================================================================5129 Assembly Syntax: Rxx32+=vmpyh(Rs32,Rt32):sat5130 C Intrinsic Prototype: Word64 Q6_P_vmpyhacc_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)5131 Instruction Type: M5132 Execution Slots: SLOT235133 ========================================================================== */5134 5135#define Q6_P_vmpyhacc_RR_sat __builtin_HEXAGON_M2_vmac2s_s05136 5137/* ==========================================================================5138 Assembly Syntax: Rxx32+=vmpyh(Rs32,Rt32):<<1:sat5139 C Intrinsic Prototype: Word64 Q6_P_vmpyhacc_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)5140 Instruction Type: M5141 Execution Slots: SLOT235142 ========================================================================== */5143 5144#define Q6_P_vmpyhacc_RR_s1_sat __builtin_HEXAGON_M2_vmac2s_s15145 5146/* ==========================================================================5147 Assembly Syntax: Rxx32+=vmpyhsu(Rs32,Rt32):sat5148 C Intrinsic Prototype: Word64 Q6_P_vmpyhsuacc_RR_sat(Word64 Rxx, Word32 Rs, Word32 Rt)5149 Instruction Type: M5150 Execution Slots: SLOT235151 ========================================================================== */5152 5153#define Q6_P_vmpyhsuacc_RR_sat __builtin_HEXAGON_M2_vmac2su_s05154 5155/* ==========================================================================5156 Assembly Syntax: Rxx32+=vmpyhsu(Rs32,Rt32):<<1:sat5157 C Intrinsic Prototype: Word64 Q6_P_vmpyhsuacc_RR_s1_sat(Word64 Rxx, Word32 Rs, Word32 Rt)5158 Instruction Type: M5159 Execution Slots: SLOT235160 ========================================================================== */5161 5162#define Q6_P_vmpyhsuacc_RR_s1_sat __builtin_HEXAGON_M2_vmac2su_s15163 5164/* ==========================================================================5165 Assembly Syntax: Rdd32=vmpyeh(Rss32,Rtt32):sat5166 C Intrinsic Prototype: Word64 Q6_P_vmpyeh_PP_sat(Word64 Rss, Word64 Rtt)5167 Instruction Type: M5168 Execution Slots: SLOT235169 ========================================================================== */5170 5171#define Q6_P_vmpyeh_PP_sat __builtin_HEXAGON_M2_vmpy2es_s05172 5173/* ==========================================================================5174 Assembly Syntax: Rdd32=vmpyeh(Rss32,Rtt32):<<1:sat5175 C Intrinsic Prototype: Word64 Q6_P_vmpyeh_PP_s1_sat(Word64 Rss, Word64 Rtt)5176 Instruction Type: M5177 Execution Slots: SLOT235178 ========================================================================== */5179 5180#define Q6_P_vmpyeh_PP_s1_sat __builtin_HEXAGON_M2_vmpy2es_s15181 5182/* ==========================================================================5183 Assembly Syntax: Rdd32=vmpyh(Rs32,Rt32):sat5184 C Intrinsic Prototype: Word64 Q6_P_vmpyh_RR_sat(Word32 Rs, Word32 Rt)5185 Instruction Type: M5186 Execution Slots: SLOT235187 ========================================================================== */5188 5189#define Q6_P_vmpyh_RR_sat __builtin_HEXAGON_M2_vmpy2s_s05190 5191/* ==========================================================================5192 Assembly Syntax: Rd32=vmpyh(Rs32,Rt32):rnd:sat5193 C Intrinsic Prototype: Word32 Q6_R_vmpyh_RR_rnd_sat(Word32 Rs, Word32 Rt)5194 Instruction Type: M5195 Execution Slots: SLOT235196 ========================================================================== */5197 5198#define Q6_R_vmpyh_RR_rnd_sat __builtin_HEXAGON_M2_vmpy2s_s0pack5199 5200/* ==========================================================================5201 Assembly Syntax: Rdd32=vmpyh(Rs32,Rt32):<<1:sat5202 C Intrinsic Prototype: Word64 Q6_P_vmpyh_RR_s1_sat(Word32 Rs, Word32 Rt)5203 Instruction Type: M5204 Execution Slots: SLOT235205 ========================================================================== */5206 5207#define Q6_P_vmpyh_RR_s1_sat __builtin_HEXAGON_M2_vmpy2s_s15208 5209/* ==========================================================================5210 Assembly Syntax: Rd32=vmpyh(Rs32,Rt32):<<1:rnd:sat5211 C Intrinsic Prototype: Word32 Q6_R_vmpyh_RR_s1_rnd_sat(Word32 Rs, Word32 Rt)5212 Instruction Type: M5213 Execution Slots: SLOT235214 ========================================================================== */5215 5216#define Q6_R_vmpyh_RR_s1_rnd_sat __builtin_HEXAGON_M2_vmpy2s_s1pack5217 5218/* ==========================================================================5219 Assembly Syntax: Rdd32=vmpyhsu(Rs32,Rt32):sat5220 C Intrinsic Prototype: Word64 Q6_P_vmpyhsu_RR_sat(Word32 Rs, Word32 Rt)5221 Instruction Type: M5222 Execution Slots: SLOT235223 ========================================================================== */5224 5225#define Q6_P_vmpyhsu_RR_sat __builtin_HEXAGON_M2_vmpy2su_s05226 5227/* ==========================================================================5228 Assembly Syntax: Rdd32=vmpyhsu(Rs32,Rt32):<<1:sat5229 C Intrinsic Prototype: Word64 Q6_P_vmpyhsu_RR_s1_sat(Word32 Rs, Word32 Rt)5230 Instruction Type: M5231 Execution Slots: SLOT235232 ========================================================================== */5233 5234#define Q6_P_vmpyhsu_RR_s1_sat __builtin_HEXAGON_M2_vmpy2su_s15235 5236/* ==========================================================================5237 Assembly Syntax: Rd32=vraddh(Rss32,Rtt32)5238 C Intrinsic Prototype: Word32 Q6_R_vraddh_PP(Word64 Rss, Word64 Rtt)5239 Instruction Type: M5240 Execution Slots: SLOT235241 ========================================================================== */5242 5243#define Q6_R_vraddh_PP __builtin_HEXAGON_M2_vraddh5244 5245/* ==========================================================================5246 Assembly Syntax: Rd32=vradduh(Rss32,Rtt32)5247 C Intrinsic Prototype: Word32 Q6_R_vradduh_PP(Word64 Rss, Word64 Rtt)5248 Instruction Type: M5249 Execution Slots: SLOT235250 ========================================================================== */5251 5252#define Q6_R_vradduh_PP __builtin_HEXAGON_M2_vradduh5253 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: M5258 Execution Slots: SLOT235259 ========================================================================== */5260 5261#define Q6_P_vrcmpyiacc_PP __builtin_HEXAGON_M2_vrcmaci_s05262 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: M5267 Execution Slots: SLOT235268 ========================================================================== */5269 5270#define Q6_P_vrcmpyiacc_PP_conj __builtin_HEXAGON_M2_vrcmaci_s0c5271 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: M5276 Execution Slots: SLOT235277 ========================================================================== */5278 5279#define Q6_P_vrcmpyracc_PP __builtin_HEXAGON_M2_vrcmacr_s05280 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: M5285 Execution Slots: SLOT235286 ========================================================================== */5287 5288#define Q6_P_vrcmpyracc_PP_conj __builtin_HEXAGON_M2_vrcmacr_s0c5289 5290/* ==========================================================================5291 Assembly Syntax: Rdd32=vrcmpyi(Rss32,Rtt32)5292 C Intrinsic Prototype: Word64 Q6_P_vrcmpyi_PP(Word64 Rss, Word64 Rtt)5293 Instruction Type: M5294 Execution Slots: SLOT235295 ========================================================================== */5296 5297#define Q6_P_vrcmpyi_PP __builtin_HEXAGON_M2_vrcmpyi_s05298 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: M5303 Execution Slots: SLOT235304 ========================================================================== */5305 5306#define Q6_P_vrcmpyi_PP_conj __builtin_HEXAGON_M2_vrcmpyi_s0c5307 5308/* ==========================================================================5309 Assembly Syntax: Rdd32=vrcmpyr(Rss32,Rtt32)5310 C Intrinsic Prototype: Word64 Q6_P_vrcmpyr_PP(Word64 Rss, Word64 Rtt)5311 Instruction Type: M5312 Execution Slots: SLOT235313 ========================================================================== */5314 5315#define Q6_P_vrcmpyr_PP __builtin_HEXAGON_M2_vrcmpyr_s05316 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: M5321 Execution Slots: SLOT235322 ========================================================================== */5323 5324#define Q6_P_vrcmpyr_PP_conj __builtin_HEXAGON_M2_vrcmpyr_s0c5325 5326/* ==========================================================================5327 Assembly Syntax: Rxx32+=vrcmpys(Rss32,Rt32):<<1:sat5328 C Intrinsic Prototype: Word64 Q6_P_vrcmpysacc_PR_s1_sat(Word64 Rxx, Word64 Rss, Word32 Rt)5329 Instruction Type: M5330 Execution Slots: SLOT01235331 ========================================================================== */5332 5333#define Q6_P_vrcmpysacc_PR_s1_sat __builtin_HEXAGON_M2_vrcmpys_acc_s15334 5335/* ==========================================================================5336 Assembly Syntax: Rdd32=vrcmpys(Rss32,Rt32):<<1:sat5337 C Intrinsic Prototype: Word64 Q6_P_vrcmpys_PR_s1_sat(Word64 Rss, Word32 Rt)5338 Instruction Type: M5339 Execution Slots: SLOT01235340 ========================================================================== */5341 5342#define Q6_P_vrcmpys_PR_s1_sat __builtin_HEXAGON_M2_vrcmpys_s15343 5344/* ==========================================================================5345 Assembly Syntax: Rd32=vrcmpys(Rss32,Rt32):<<1:rnd:sat5346 C Intrinsic Prototype: Word32 Q6_R_vrcmpys_PR_s1_rnd_sat(Word64 Rss, Word32 Rt)5347 Instruction Type: M5348 Execution Slots: SLOT01235349 ========================================================================== */5350 5351#define Q6_R_vrcmpys_PR_s1_rnd_sat __builtin_HEXAGON_M2_vrcmpys_s1rp5352 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: M5357 Execution Slots: SLOT235358 ========================================================================== */5359 5360#define Q6_P_vrmpyhacc_PP __builtin_HEXAGON_M2_vrmac_s05361 5362/* ==========================================================================5363 Assembly Syntax: Rdd32=vrmpyh(Rss32,Rtt32)5364 C Intrinsic Prototype: Word64 Q6_P_vrmpyh_PP(Word64 Rss, Word64 Rtt)5365 Instruction Type: M5366 Execution Slots: SLOT235367 ========================================================================== */5368 5369#define Q6_P_vrmpyh_PP __builtin_HEXAGON_M2_vrmpy_s05370 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: M5375 Execution Slots: SLOT235376 ========================================================================== */5377 5378#define Q6_R_xorxacc_RR __builtin_HEXAGON_M2_xor_xacc5379 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: M5384 Execution Slots: SLOT235385 ========================================================================== */5386 5387#define Q6_R_andand_RR __builtin_HEXAGON_M4_and_and5388 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: M5393 Execution Slots: SLOT235394 ========================================================================== */5395 5396#define Q6_R_andand_RnR __builtin_HEXAGON_M4_and_andn5397 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: M5402 Execution Slots: SLOT235403 ========================================================================== */5404 5405#define Q6_R_orand_RR __builtin_HEXAGON_M4_and_or5406 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: M5411 Execution Slots: SLOT235412 ========================================================================== */5413 5414#define Q6_R_xorand_RR __builtin_HEXAGON_M4_and_xor5415 5416/* ==========================================================================5417 Assembly Syntax: Rd32=cmpyiwh(Rss32,Rt32):<<1:rnd:sat5418 C Intrinsic Prototype: Word32 Q6_R_cmpyiwh_PR_s1_rnd_sat(Word64 Rss, Word32 Rt)5419 Instruction Type: S_3op5420 Execution Slots: SLOT235421 ========================================================================== */5422 5423#define Q6_R_cmpyiwh_PR_s1_rnd_sat __builtin_HEXAGON_M4_cmpyi_wh5424 5425/* ==========================================================================5426 Assembly Syntax: Rd32=cmpyiwh(Rss32,Rt32*):<<1:rnd:sat5427 C Intrinsic Prototype: Word32 Q6_R_cmpyiwh_PR_conj_s1_rnd_sat(Word64 Rss, Word32 Rt)5428 Instruction Type: S_3op5429 Execution Slots: SLOT235430 ========================================================================== */5431 5432#define Q6_R_cmpyiwh_PR_conj_s1_rnd_sat __builtin_HEXAGON_M4_cmpyi_whc5433 5434/* ==========================================================================5435 Assembly Syntax: Rd32=cmpyrwh(Rss32,Rt32):<<1:rnd:sat5436 C Intrinsic Prototype: Word32 Q6_R_cmpyrwh_PR_s1_rnd_sat(Word64 Rss, Word32 Rt)5437 Instruction Type: S_3op5438 Execution Slots: SLOT235439 ========================================================================== */5440 5441#define Q6_R_cmpyrwh_PR_s1_rnd_sat __builtin_HEXAGON_M4_cmpyr_wh5442 5443/* ==========================================================================5444 Assembly Syntax: Rd32=cmpyrwh(Rss32,Rt32*):<<1:rnd:sat5445 C Intrinsic Prototype: Word32 Q6_R_cmpyrwh_PR_conj_s1_rnd_sat(Word64 Rss, Word32 Rt)5446 Instruction Type: S_3op5447 Execution Slots: SLOT235448 ========================================================================== */5449 5450#define Q6_R_cmpyrwh_PR_conj_s1_rnd_sat __builtin_HEXAGON_M4_cmpyr_whc5451 5452/* ==========================================================================5453 Assembly Syntax: Rx32+=mpy(Rs32,Rt32):<<1:sat5454 C Intrinsic Prototype: Word32 Q6_R_mpyacc_RR_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)5455 Instruction Type: M5456 Execution Slots: SLOT235457 ========================================================================== */5458 5459#define Q6_R_mpyacc_RR_s1_sat __builtin_HEXAGON_M4_mac_up_s1_sat5460 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: ALU645465 Execution Slots: SLOT235466 ========================================================================== */5467 5468#define Q6_R_add_mpyi_IRI __builtin_HEXAGON_M4_mpyri_addi5469 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: ALU645474 Execution Slots: SLOT235475 ========================================================================== */5476 5477#define Q6_R_add_mpyi_RRI __builtin_HEXAGON_M4_mpyri_addr5478 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: ALU645483 Execution Slots: SLOT235484 ========================================================================== */5485 5486#define Q6_R_add_mpyi_RIR __builtin_HEXAGON_M4_mpyri_addr_u25487 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: ALU645492 Execution Slots: SLOT235493 ========================================================================== */5494 5495#define Q6_R_add_mpyi_IRR __builtin_HEXAGON_M4_mpyrr_addi5496 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: M5501 Execution Slots: SLOT235502 ========================================================================== */5503 5504#define Q6_R_add_mpyi_RRR __builtin_HEXAGON_M4_mpyrr_addr5505 5506/* ==========================================================================5507 Assembly Syntax: Rx32-=mpy(Rs32,Rt32):<<1:sat5508 C Intrinsic Prototype: Word32 Q6_R_mpynac_RR_s1_sat(Word32 Rx, Word32 Rs, Word32 Rt)5509 Instruction Type: M5510 Execution Slots: SLOT235511 ========================================================================== */5512 5513#define Q6_R_mpynac_RR_s1_sat __builtin_HEXAGON_M4_nac_up_s1_sat5514 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: M5519 Execution Slots: SLOT235520 ========================================================================== */5521 5522#define Q6_R_andor_RR __builtin_HEXAGON_M4_or_and5523 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: M5528 Execution Slots: SLOT235529 ========================================================================== */5530 5531#define Q6_R_andor_RnR __builtin_HEXAGON_M4_or_andn5532 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: M5537 Execution Slots: SLOT235538 ========================================================================== */5539 5540#define Q6_R_oror_RR __builtin_HEXAGON_M4_or_or5541 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: M5546 Execution Slots: SLOT235547 ========================================================================== */5548 5549#define Q6_R_xoror_RR __builtin_HEXAGON_M4_or_xor5550 5551/* ==========================================================================5552 Assembly Syntax: Rdd32=pmpyw(Rs32,Rt32)5553 C Intrinsic Prototype: Word64 Q6_P_pmpyw_RR(Word32 Rs, Word32 Rt)5554 Instruction Type: M5555 Execution Slots: SLOT235556 ========================================================================== */5557 5558#define Q6_P_pmpyw_RR __builtin_HEXAGON_M4_pmpyw5559 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: M5564 Execution Slots: SLOT235565 ========================================================================== */5566 5567#define Q6_P_pmpywxacc_RR __builtin_HEXAGON_M4_pmpyw_acc5568 5569/* ==========================================================================5570 Assembly Syntax: Rdd32=vpmpyh(Rs32,Rt32)5571 C Intrinsic Prototype: Word64 Q6_P_vpmpyh_RR(Word32 Rs, Word32 Rt)5572 Instruction Type: M5573 Execution Slots: SLOT235574 ========================================================================== */5575 5576#define Q6_P_vpmpyh_RR __builtin_HEXAGON_M4_vpmpyh5577 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: M5582 Execution Slots: SLOT235583 ========================================================================== */5584 5585#define Q6_P_vpmpyhxacc_RR __builtin_HEXAGON_M4_vpmpyh_acc5586 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: M5591 Execution Slots: SLOT235592 ========================================================================== */5593 5594#define Q6_P_vrmpywehacc_PP __builtin_HEXAGON_M4_vrmpyeh_acc_s05595 5596/* ==========================================================================5597 Assembly Syntax: Rxx32+=vrmpyweh(Rss32,Rtt32):<<15598 C Intrinsic Prototype: Word64 Q6_P_vrmpywehacc_PP_s1(Word64 Rxx, Word64 Rss, Word64 Rtt)5599 Instruction Type: M5600 Execution Slots: SLOT235601 ========================================================================== */5602 5603#define Q6_P_vrmpywehacc_PP_s1 __builtin_HEXAGON_M4_vrmpyeh_acc_s15604 5605/* ==========================================================================5606 Assembly Syntax: Rdd32=vrmpyweh(Rss32,Rtt32)5607 C Intrinsic Prototype: Word64 Q6_P_vrmpyweh_PP(Word64 Rss, Word64 Rtt)5608 Instruction Type: M5609 Execution Slots: SLOT235610 ========================================================================== */5611 5612#define Q6_P_vrmpyweh_PP __builtin_HEXAGON_M4_vrmpyeh_s05613 5614/* ==========================================================================5615 Assembly Syntax: Rdd32=vrmpyweh(Rss32,Rtt32):<<15616 C Intrinsic Prototype: Word64 Q6_P_vrmpyweh_PP_s1(Word64 Rss, Word64 Rtt)5617 Instruction Type: M5618 Execution Slots: SLOT235619 ========================================================================== */5620 5621#define Q6_P_vrmpyweh_PP_s1 __builtin_HEXAGON_M4_vrmpyeh_s15622 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: M5627 Execution Slots: SLOT235628 ========================================================================== */5629 5630#define Q6_P_vrmpywohacc_PP __builtin_HEXAGON_M4_vrmpyoh_acc_s05631 5632/* ==========================================================================5633 Assembly Syntax: Rxx32+=vrmpywoh(Rss32,Rtt32):<<15634 C Intrinsic Prototype: Word64 Q6_P_vrmpywohacc_PP_s1(Word64 Rxx, Word64 Rss, Word64 Rtt)5635 Instruction Type: M5636 Execution Slots: SLOT235637 ========================================================================== */5638 5639#define Q6_P_vrmpywohacc_PP_s1 __builtin_HEXAGON_M4_vrmpyoh_acc_s15640 5641/* ==========================================================================5642 Assembly Syntax: Rdd32=vrmpywoh(Rss32,Rtt32)5643 C Intrinsic Prototype: Word64 Q6_P_vrmpywoh_PP(Word64 Rss, Word64 Rtt)5644 Instruction Type: M5645 Execution Slots: SLOT235646 ========================================================================== */5647 5648#define Q6_P_vrmpywoh_PP __builtin_HEXAGON_M4_vrmpyoh_s05649 5650/* ==========================================================================5651 Assembly Syntax: Rdd32=vrmpywoh(Rss32,Rtt32):<<15652 C Intrinsic Prototype: Word64 Q6_P_vrmpywoh_PP_s1(Word64 Rss, Word64 Rtt)5653 Instruction Type: M5654 Execution Slots: SLOT235655 ========================================================================== */5656 5657#define Q6_P_vrmpywoh_PP_s1 __builtin_HEXAGON_M4_vrmpyoh_s15658 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: M5663 Execution Slots: SLOT235664 ========================================================================== */5665 5666#define Q6_R_andxacc_RR __builtin_HEXAGON_M4_xor_and5667 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: M5672 Execution Slots: SLOT235673 ========================================================================== */5674 5675#define Q6_R_andxacc_RnR __builtin_HEXAGON_M4_xor_andn5676 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: M5681 Execution Slots: SLOT235682 ========================================================================== */5683 5684#define Q6_R_orxacc_RR __builtin_HEXAGON_M4_xor_or5685 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_3op5690 Execution Slots: SLOT235691 ========================================================================== */5692 5693#define Q6_P_xorxacc_PP __builtin_HEXAGON_M4_xor_xacc5694 5695/* ==========================================================================5696 Assembly Syntax: Rxx32+=vdmpybsu(Rss32,Rtt32):sat5697 C Intrinsic Prototype: Word64 Q6_P_vdmpybsuacc_PP_sat(Word64 Rxx, Word64 Rss, Word64 Rtt)5698 Instruction Type: M5699 Execution Slots: SLOT235700 ========================================================================== */5701 5702#define Q6_P_vdmpybsuacc_PP_sat __builtin_HEXAGON_M5_vdmacbsu5703 5704/* ==========================================================================5705 Assembly Syntax: Rdd32=vdmpybsu(Rss32,Rtt32):sat5706 C Intrinsic Prototype: Word64 Q6_P_vdmpybsu_PP_sat(Word64 Rss, Word64 Rtt)5707 Instruction Type: M5708 Execution Slots: SLOT235709 ========================================================================== */5710 5711#define Q6_P_vdmpybsu_PP_sat __builtin_HEXAGON_M5_vdmpybsu5712 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: M5717 Execution Slots: SLOT235718 ========================================================================== */5719 5720#define Q6_P_vmpybsuacc_RR __builtin_HEXAGON_M5_vmacbsu5721 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: M5726 Execution Slots: SLOT235727 ========================================================================== */5728 5729#define Q6_P_vmpybuacc_RR __builtin_HEXAGON_M5_vmacbuu5730 5731/* ==========================================================================5732 Assembly Syntax: Rdd32=vmpybsu(Rs32,Rt32)5733 C Intrinsic Prototype: Word64 Q6_P_vmpybsu_RR(Word32 Rs, Word32 Rt)5734 Instruction Type: M5735 Execution Slots: SLOT235736 ========================================================================== */5737 5738#define Q6_P_vmpybsu_RR __builtin_HEXAGON_M5_vmpybsu5739 5740/* ==========================================================================5741 Assembly Syntax: Rdd32=vmpybu(Rs32,Rt32)5742 C Intrinsic Prototype: Word64 Q6_P_vmpybu_RR(Word32 Rs, Word32 Rt)5743 Instruction Type: M5744 Execution Slots: SLOT235745 ========================================================================== */5746 5747#define Q6_P_vmpybu_RR __builtin_HEXAGON_M5_vmpybuu5748 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: M5753 Execution Slots: SLOT235754 ========================================================================== */5755 5756#define Q6_P_vrmpybsuacc_PP __builtin_HEXAGON_M5_vrmacbsu5757 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: M5762 Execution Slots: SLOT235763 ========================================================================== */5764 5765#define Q6_P_vrmpybuacc_PP __builtin_HEXAGON_M5_vrmacbuu5766 5767/* ==========================================================================5768 Assembly Syntax: Rdd32=vrmpybsu(Rss32,Rtt32)5769 C Intrinsic Prototype: Word64 Q6_P_vrmpybsu_PP(Word64 Rss, Word64 Rtt)5770 Instruction Type: M5771 Execution Slots: SLOT235772 ========================================================================== */5773 5774#define Q6_P_vrmpybsu_PP __builtin_HEXAGON_M5_vrmpybsu5775 5776/* ==========================================================================5777 Assembly Syntax: Rdd32=vrmpybu(Rss32,Rtt32)5778 C Intrinsic Prototype: Word64 Q6_P_vrmpybu_PP(Word64 Rss, Word64 Rtt)5779 Instruction Type: M5780 Execution Slots: SLOT235781 ========================================================================== */5782 5783#define Q6_P_vrmpybu_PP __builtin_HEXAGON_M5_vrmpybuu5784 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_3op5789 Execution Slots: SLOT235790 ========================================================================== */5791 5792#define Q6_R_addasl_RRI __builtin_HEXAGON_S2_addasl_rrri5793 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_2op5798 Execution Slots: SLOT235799 ========================================================================== */5800 5801#define Q6_P_asl_PI __builtin_HEXAGON_S2_asl_i_p5802 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_2op5807 Execution Slots: SLOT235808 ========================================================================== */5809 5810#define Q6_P_aslacc_PI __builtin_HEXAGON_S2_asl_i_p_acc5811 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_2op5816 Execution Slots: SLOT235817 ========================================================================== */5818 5819#define Q6_P_asland_PI __builtin_HEXAGON_S2_asl_i_p_and5820 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_2op5825 Execution Slots: SLOT235826 ========================================================================== */5827 5828#define Q6_P_aslnac_PI __builtin_HEXAGON_S2_asl_i_p_nac5829 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_2op5834 Execution Slots: SLOT235835 ========================================================================== */5836 5837#define Q6_P_aslor_PI __builtin_HEXAGON_S2_asl_i_p_or5838 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_2op5843 Execution Slots: SLOT235844 ========================================================================== */5845 5846#define Q6_P_aslxacc_PI __builtin_HEXAGON_S2_asl_i_p_xacc5847 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_2op5852 Execution Slots: SLOT235853 ========================================================================== */5854 5855#define Q6_R_asl_RI __builtin_HEXAGON_S2_asl_i_r5856 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_2op5861 Execution Slots: SLOT235862 ========================================================================== */5863 5864#define Q6_R_aslacc_RI __builtin_HEXAGON_S2_asl_i_r_acc5865 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_2op5870 Execution Slots: SLOT235871 ========================================================================== */5872 5873#define Q6_R_asland_RI __builtin_HEXAGON_S2_asl_i_r_and5874 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_2op5879 Execution Slots: SLOT235880 ========================================================================== */5881 5882#define Q6_R_aslnac_RI __builtin_HEXAGON_S2_asl_i_r_nac5883 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_2op5888 Execution Slots: SLOT235889 ========================================================================== */5890 5891#define Q6_R_aslor_RI __builtin_HEXAGON_S2_asl_i_r_or5892 5893/* ==========================================================================5894 Assembly Syntax: Rd32=asl(Rs32,#u5):sat5895 C Intrinsic Prototype: Word32 Q6_R_asl_RI_sat(Word32 Rs, Word32 Iu5)5896 Instruction Type: S_2op5897 Execution Slots: SLOT235898 ========================================================================== */5899 5900#define Q6_R_asl_RI_sat __builtin_HEXAGON_S2_asl_i_r_sat5901 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_2op5906 Execution Slots: SLOT235907 ========================================================================== */5908 5909#define Q6_R_aslxacc_RI __builtin_HEXAGON_S2_asl_i_r_xacc5910 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_2op5915 Execution Slots: SLOT235916 ========================================================================== */5917 5918#define Q6_P_vaslh_PI __builtin_HEXAGON_S2_asl_i_vh5919 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_2op5924 Execution Slots: SLOT235925 ========================================================================== */5926 5927#define Q6_P_vaslw_PI __builtin_HEXAGON_S2_asl_i_vw5928 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_3op5933 Execution Slots: SLOT235934 ========================================================================== */5935 5936#define Q6_P_asl_PR __builtin_HEXAGON_S2_asl_r_p5937 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_3op5942 Execution Slots: SLOT235943 ========================================================================== */5944 5945#define Q6_P_aslacc_PR __builtin_HEXAGON_S2_asl_r_p_acc5946 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_3op5951 Execution Slots: SLOT235952 ========================================================================== */5953 5954#define Q6_P_asland_PR __builtin_HEXAGON_S2_asl_r_p_and5955 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_3op5960 Execution Slots: SLOT235961 ========================================================================== */5962 5963#define Q6_P_aslnac_PR __builtin_HEXAGON_S2_asl_r_p_nac5964 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_3op5969 Execution Slots: SLOT235970 ========================================================================== */5971 5972#define Q6_P_aslor_PR __builtin_HEXAGON_S2_asl_r_p_or5973 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_3op5978 Execution Slots: SLOT235979 ========================================================================== */5980 5981#define Q6_P_aslxacc_PR __builtin_HEXAGON_S2_asl_r_p_xor5982 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_3op5987 Execution Slots: SLOT235988 ========================================================================== */5989 5990#define Q6_R_asl_RR __builtin_HEXAGON_S2_asl_r_r5991 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_3op5996 Execution Slots: SLOT235997 ========================================================================== */5998 5999#define Q6_R_aslacc_RR __builtin_HEXAGON_S2_asl_r_r_acc6000 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_3op6005 Execution Slots: SLOT236006 ========================================================================== */6007 6008#define Q6_R_asland_RR __builtin_HEXAGON_S2_asl_r_r_and6009 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_3op6014 Execution Slots: SLOT236015 ========================================================================== */6016 6017#define Q6_R_aslnac_RR __builtin_HEXAGON_S2_asl_r_r_nac6018 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_3op6023 Execution Slots: SLOT236024 ========================================================================== */6025 6026#define Q6_R_aslor_RR __builtin_HEXAGON_S2_asl_r_r_or6027 6028/* ==========================================================================6029 Assembly Syntax: Rd32=asl(Rs32,Rt32):sat6030 C Intrinsic Prototype: Word32 Q6_R_asl_RR_sat(Word32 Rs, Word32 Rt)6031 Instruction Type: S_3op6032 Execution Slots: SLOT236033 ========================================================================== */6034 6035#define Q6_R_asl_RR_sat __builtin_HEXAGON_S2_asl_r_r_sat6036 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_3op6041 Execution Slots: SLOT236042 ========================================================================== */6043 6044#define Q6_P_vaslh_PR __builtin_HEXAGON_S2_asl_r_vh6045 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_3op6050 Execution Slots: SLOT236051 ========================================================================== */6052 6053#define Q6_P_vaslw_PR __builtin_HEXAGON_S2_asl_r_vw6054 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_2op6059 Execution Slots: SLOT236060 ========================================================================== */6061 6062#define Q6_P_asr_PI __builtin_HEXAGON_S2_asr_i_p6063 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_2op6068 Execution Slots: SLOT236069 ========================================================================== */6070 6071#define Q6_P_asracc_PI __builtin_HEXAGON_S2_asr_i_p_acc6072 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_2op6077 Execution Slots: SLOT236078 ========================================================================== */6079 6080#define Q6_P_asrand_PI __builtin_HEXAGON_S2_asr_i_p_and6081 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_2op6086 Execution Slots: SLOT236087 ========================================================================== */6088 6089#define Q6_P_asrnac_PI __builtin_HEXAGON_S2_asr_i_p_nac6090 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_2op6095 Execution Slots: SLOT236096 ========================================================================== */6097 6098#define Q6_P_asror_PI __builtin_HEXAGON_S2_asr_i_p_or6099 6100/* ==========================================================================6101 Assembly Syntax: Rdd32=asr(Rss32,#u6):rnd6102 C Intrinsic Prototype: Word64 Q6_P_asr_PI_rnd(Word64 Rss, Word32 Iu6)6103 Instruction Type: S_2op6104 Execution Slots: SLOT236105 ========================================================================== */6106 6107#define Q6_P_asr_PI_rnd __builtin_HEXAGON_S2_asr_i_p_rnd6108 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_2op6113 Execution Slots: SLOT01236114 ========================================================================== */6115 6116#define Q6_P_asrrnd_PI __builtin_HEXAGON_S2_asr_i_p_rnd_goodsyntax6117 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_2op6122 Execution Slots: SLOT236123 ========================================================================== */6124 6125#define Q6_R_asr_RI __builtin_HEXAGON_S2_asr_i_r6126 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_2op6131 Execution Slots: SLOT236132 ========================================================================== */6133 6134#define Q6_R_asracc_RI __builtin_HEXAGON_S2_asr_i_r_acc6135 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_2op6140 Execution Slots: SLOT236141 ========================================================================== */6142 6143#define Q6_R_asrand_RI __builtin_HEXAGON_S2_asr_i_r_and6144 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_2op6149 Execution Slots: SLOT236150 ========================================================================== */6151 6152#define Q6_R_asrnac_RI __builtin_HEXAGON_S2_asr_i_r_nac6153 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_2op6158 Execution Slots: SLOT236159 ========================================================================== */6160 6161#define Q6_R_asror_RI __builtin_HEXAGON_S2_asr_i_r_or6162 6163/* ==========================================================================6164 Assembly Syntax: Rd32=asr(Rs32,#u5):rnd6165 C Intrinsic Prototype: Word32 Q6_R_asr_RI_rnd(Word32 Rs, Word32 Iu5)6166 Instruction Type: S_2op6167 Execution Slots: SLOT236168 ========================================================================== */6169 6170#define Q6_R_asr_RI_rnd __builtin_HEXAGON_S2_asr_i_r_rnd6171 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_2op6176 Execution Slots: SLOT01236177 ========================================================================== */6178 6179#define Q6_R_asrrnd_RI __builtin_HEXAGON_S2_asr_i_r_rnd_goodsyntax6180 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_2op6185 Execution Slots: SLOT236186 ========================================================================== */6187 6188#define Q6_R_vasrw_PI __builtin_HEXAGON_S2_asr_i_svw_trun6189 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_2op6194 Execution Slots: SLOT236195 ========================================================================== */6196 6197#define Q6_P_vasrh_PI __builtin_HEXAGON_S2_asr_i_vh6198 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_2op6203 Execution Slots: SLOT236204 ========================================================================== */6205 6206#define Q6_P_vasrw_PI __builtin_HEXAGON_S2_asr_i_vw6207 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_3op6212 Execution Slots: SLOT236213 ========================================================================== */6214 6215#define Q6_P_asr_PR __builtin_HEXAGON_S2_asr_r_p6216 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_3op6221 Execution Slots: SLOT236222 ========================================================================== */6223 6224#define Q6_P_asracc_PR __builtin_HEXAGON_S2_asr_r_p_acc6225 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_3op6230 Execution Slots: SLOT236231 ========================================================================== */6232 6233#define Q6_P_asrand_PR __builtin_HEXAGON_S2_asr_r_p_and6234 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_3op6239 Execution Slots: SLOT236240 ========================================================================== */6241 6242#define Q6_P_asrnac_PR __builtin_HEXAGON_S2_asr_r_p_nac6243 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_3op6248 Execution Slots: SLOT236249 ========================================================================== */6250 6251#define Q6_P_asror_PR __builtin_HEXAGON_S2_asr_r_p_or6252 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_3op6257 Execution Slots: SLOT236258 ========================================================================== */6259 6260#define Q6_P_asrxacc_PR __builtin_HEXAGON_S2_asr_r_p_xor6261 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_3op6266 Execution Slots: SLOT236267 ========================================================================== */6268 6269#define Q6_R_asr_RR __builtin_HEXAGON_S2_asr_r_r6270 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_3op6275 Execution Slots: SLOT236276 ========================================================================== */6277 6278#define Q6_R_asracc_RR __builtin_HEXAGON_S2_asr_r_r_acc6279 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_3op6284 Execution Slots: SLOT236285 ========================================================================== */6286 6287#define Q6_R_asrand_RR __builtin_HEXAGON_S2_asr_r_r_and6288 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_3op6293 Execution Slots: SLOT236294 ========================================================================== */6295 6296#define Q6_R_asrnac_RR __builtin_HEXAGON_S2_asr_r_r_nac6297 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_3op6302 Execution Slots: SLOT236303 ========================================================================== */6304 6305#define Q6_R_asror_RR __builtin_HEXAGON_S2_asr_r_r_or6306 6307/* ==========================================================================6308 Assembly Syntax: Rd32=asr(Rs32,Rt32):sat6309 C Intrinsic Prototype: Word32 Q6_R_asr_RR_sat(Word32 Rs, Word32 Rt)6310 Instruction Type: S_3op6311 Execution Slots: SLOT236312 ========================================================================== */6313 6314#define Q6_R_asr_RR_sat __builtin_HEXAGON_S2_asr_r_r_sat6315 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_3op6320 Execution Slots: SLOT236321 ========================================================================== */6322 6323#define Q6_R_vasrw_PR __builtin_HEXAGON_S2_asr_r_svw_trun6324 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_3op6329 Execution Slots: SLOT236330 ========================================================================== */6331 6332#define Q6_P_vasrh_PR __builtin_HEXAGON_S2_asr_r_vh6333 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_3op6338 Execution Slots: SLOT236339 ========================================================================== */6340 6341#define Q6_P_vasrw_PR __builtin_HEXAGON_S2_asr_r_vw6342 6343/* ==========================================================================6344 Assembly Syntax: Rd32=brev(Rs32)6345 C Intrinsic Prototype: Word32 Q6_R_brev_R(Word32 Rs)6346 Instruction Type: S_2op6347 Execution Slots: SLOT236348 ========================================================================== */6349 6350#define Q6_R_brev_R __builtin_HEXAGON_S2_brev6351 6352/* ==========================================================================6353 Assembly Syntax: Rdd32=brev(Rss32)6354 C Intrinsic Prototype: Word64 Q6_P_brev_P(Word64 Rss)6355 Instruction Type: S_2op6356 Execution Slots: SLOT236357 ========================================================================== */6358 6359#define Q6_P_brev_P __builtin_HEXAGON_S2_brevp6360 6361/* ==========================================================================6362 Assembly Syntax: Rd32=cl0(Rs32)6363 C Intrinsic Prototype: Word32 Q6_R_cl0_R(Word32 Rs)6364 Instruction Type: S_2op6365 Execution Slots: SLOT236366 ========================================================================== */6367 6368#define Q6_R_cl0_R __builtin_HEXAGON_S2_cl06369 6370/* ==========================================================================6371 Assembly Syntax: Rd32=cl0(Rss32)6372 C Intrinsic Prototype: Word32 Q6_R_cl0_P(Word64 Rss)6373 Instruction Type: S_2op6374 Execution Slots: SLOT236375 ========================================================================== */6376 6377#define Q6_R_cl0_P __builtin_HEXAGON_S2_cl0p6378 6379/* ==========================================================================6380 Assembly Syntax: Rd32=cl1(Rs32)6381 C Intrinsic Prototype: Word32 Q6_R_cl1_R(Word32 Rs)6382 Instruction Type: S_2op6383 Execution Slots: SLOT236384 ========================================================================== */6385 6386#define Q6_R_cl1_R __builtin_HEXAGON_S2_cl16387 6388/* ==========================================================================6389 Assembly Syntax: Rd32=cl1(Rss32)6390 C Intrinsic Prototype: Word32 Q6_R_cl1_P(Word64 Rss)6391 Instruction Type: S_2op6392 Execution Slots: SLOT236393 ========================================================================== */6394 6395#define Q6_R_cl1_P __builtin_HEXAGON_S2_cl1p6396 6397/* ==========================================================================6398 Assembly Syntax: Rd32=clb(Rs32)6399 C Intrinsic Prototype: Word32 Q6_R_clb_R(Word32 Rs)6400 Instruction Type: S_2op6401 Execution Slots: SLOT236402 ========================================================================== */6403 6404#define Q6_R_clb_R __builtin_HEXAGON_S2_clb6405 6406/* ==========================================================================6407 Assembly Syntax: Rd32=normamt(Rs32)6408 C Intrinsic Prototype: Word32 Q6_R_normamt_R(Word32 Rs)6409 Instruction Type: S_2op6410 Execution Slots: SLOT236411 ========================================================================== */6412 6413#define Q6_R_normamt_R __builtin_HEXAGON_S2_clbnorm6414 6415/* ==========================================================================6416 Assembly Syntax: Rd32=clb(Rss32)6417 C Intrinsic Prototype: Word32 Q6_R_clb_P(Word64 Rss)6418 Instruction Type: S_2op6419 Execution Slots: SLOT236420 ========================================================================== */6421 6422#define Q6_R_clb_P __builtin_HEXAGON_S2_clbp6423 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_2op6428 Execution Slots: SLOT236429 ========================================================================== */6430 6431#define Q6_R_clrbit_RI __builtin_HEXAGON_S2_clrbit_i6432 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_3op6437 Execution Slots: SLOT236438 ========================================================================== */6439 6440#define Q6_R_clrbit_RR __builtin_HEXAGON_S2_clrbit_r6441 6442/* ==========================================================================6443 Assembly Syntax: Rd32=ct0(Rs32)6444 C Intrinsic Prototype: Word32 Q6_R_ct0_R(Word32 Rs)6445 Instruction Type: S_2op6446 Execution Slots: SLOT236447 ========================================================================== */6448 6449#define Q6_R_ct0_R __builtin_HEXAGON_S2_ct06450 6451/* ==========================================================================6452 Assembly Syntax: Rd32=ct0(Rss32)6453 C Intrinsic Prototype: Word32 Q6_R_ct0_P(Word64 Rss)6454 Instruction Type: S_2op6455 Execution Slots: SLOT236456 ========================================================================== */6457 6458#define Q6_R_ct0_P __builtin_HEXAGON_S2_ct0p6459 6460/* ==========================================================================6461 Assembly Syntax: Rd32=ct1(Rs32)6462 C Intrinsic Prototype: Word32 Q6_R_ct1_R(Word32 Rs)6463 Instruction Type: S_2op6464 Execution Slots: SLOT236465 ========================================================================== */6466 6467#define Q6_R_ct1_R __builtin_HEXAGON_S2_ct16468 6469/* ==========================================================================6470 Assembly Syntax: Rd32=ct1(Rss32)6471 C Intrinsic Prototype: Word32 Q6_R_ct1_P(Word64 Rss)6472 Instruction Type: S_2op6473 Execution Slots: SLOT236474 ========================================================================== */6475 6476#define Q6_R_ct1_P __builtin_HEXAGON_S2_ct1p6477 6478/* ==========================================================================6479 Assembly Syntax: Rdd32=deinterleave(Rss32)6480 C Intrinsic Prototype: Word64 Q6_P_deinterleave_P(Word64 Rss)6481 Instruction Type: S_2op6482 Execution Slots: SLOT236483 ========================================================================== */6484 6485#define Q6_P_deinterleave_P __builtin_HEXAGON_S2_deinterleave6486 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_2op6491 Execution Slots: SLOT236492 ========================================================================== */6493 6494#define Q6_R_extractu_RII __builtin_HEXAGON_S2_extractu6495 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_3op6500 Execution Slots: SLOT236501 ========================================================================== */6502 6503#define Q6_R_extractu_RP __builtin_HEXAGON_S2_extractu_rp6504 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_2op6509 Execution Slots: SLOT236510 ========================================================================== */6511 6512#define Q6_P_extractu_PII __builtin_HEXAGON_S2_extractup6513 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_3op6518 Execution Slots: SLOT236519 ========================================================================== */6520 6521#define Q6_P_extractu_PP __builtin_HEXAGON_S2_extractup_rp6522 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_2op6527 Execution Slots: SLOT236528 ========================================================================== */6529 6530#define Q6_R_insert_RII __builtin_HEXAGON_S2_insert6531 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_3op6536 Execution Slots: SLOT236537 ========================================================================== */6538 6539#define Q6_R_insert_RP __builtin_HEXAGON_S2_insert_rp6540 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_2op6545 Execution Slots: SLOT236546 ========================================================================== */6547 6548#define Q6_P_insert_PII __builtin_HEXAGON_S2_insertp6549 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_3op6554 Execution Slots: SLOT236555 ========================================================================== */6556 6557#define Q6_P_insert_PP __builtin_HEXAGON_S2_insertp_rp6558 6559/* ==========================================================================6560 Assembly Syntax: Rdd32=interleave(Rss32)6561 C Intrinsic Prototype: Word64 Q6_P_interleave_P(Word64 Rss)6562 Instruction Type: S_2op6563 Execution Slots: SLOT236564 ========================================================================== */6565 6566#define Q6_P_interleave_P __builtin_HEXAGON_S2_interleave6567 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_3op6572 Execution Slots: SLOT236573 ========================================================================== */6574 6575#define Q6_P_lfs_PP __builtin_HEXAGON_S2_lfsp6576 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_3op6581 Execution Slots: SLOT236582 ========================================================================== */6583 6584#define Q6_P_lsl_PR __builtin_HEXAGON_S2_lsl_r_p6585 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_3op6590 Execution Slots: SLOT236591 ========================================================================== */6592 6593#define Q6_P_lslacc_PR __builtin_HEXAGON_S2_lsl_r_p_acc6594 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_3op6599 Execution Slots: SLOT236600 ========================================================================== */6601 6602#define Q6_P_lsland_PR __builtin_HEXAGON_S2_lsl_r_p_and6603 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_3op6608 Execution Slots: SLOT236609 ========================================================================== */6610 6611#define Q6_P_lslnac_PR __builtin_HEXAGON_S2_lsl_r_p_nac6612 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_3op6617 Execution Slots: SLOT236618 ========================================================================== */6619 6620#define Q6_P_lslor_PR __builtin_HEXAGON_S2_lsl_r_p_or6621 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_3op6626 Execution Slots: SLOT236627 ========================================================================== */6628 6629#define Q6_P_lslxacc_PR __builtin_HEXAGON_S2_lsl_r_p_xor6630 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_3op6635 Execution Slots: SLOT236636 ========================================================================== */6637 6638#define Q6_R_lsl_RR __builtin_HEXAGON_S2_lsl_r_r6639 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_3op6644 Execution Slots: SLOT236645 ========================================================================== */6646 6647#define Q6_R_lslacc_RR __builtin_HEXAGON_S2_lsl_r_r_acc6648 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_3op6653 Execution Slots: SLOT236654 ========================================================================== */6655 6656#define Q6_R_lsland_RR __builtin_HEXAGON_S2_lsl_r_r_and6657 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_3op6662 Execution Slots: SLOT236663 ========================================================================== */6664 6665#define Q6_R_lslnac_RR __builtin_HEXAGON_S2_lsl_r_r_nac6666 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_3op6671 Execution Slots: SLOT236672 ========================================================================== */6673 6674#define Q6_R_lslor_RR __builtin_HEXAGON_S2_lsl_r_r_or6675 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_3op6680 Execution Slots: SLOT236681 ========================================================================== */6682 6683#define Q6_P_vlslh_PR __builtin_HEXAGON_S2_lsl_r_vh6684 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_3op6689 Execution Slots: SLOT236690 ========================================================================== */6691 6692#define Q6_P_vlslw_PR __builtin_HEXAGON_S2_lsl_r_vw6693 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_2op6698 Execution Slots: SLOT236699 ========================================================================== */6700 6701#define Q6_P_lsr_PI __builtin_HEXAGON_S2_lsr_i_p6702 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_2op6707 Execution Slots: SLOT236708 ========================================================================== */6709 6710#define Q6_P_lsracc_PI __builtin_HEXAGON_S2_lsr_i_p_acc6711 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_2op6716 Execution Slots: SLOT236717 ========================================================================== */6718 6719#define Q6_P_lsrand_PI __builtin_HEXAGON_S2_lsr_i_p_and6720 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_2op6725 Execution Slots: SLOT236726 ========================================================================== */6727 6728#define Q6_P_lsrnac_PI __builtin_HEXAGON_S2_lsr_i_p_nac6729 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_2op6734 Execution Slots: SLOT236735 ========================================================================== */6736 6737#define Q6_P_lsror_PI __builtin_HEXAGON_S2_lsr_i_p_or6738 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_2op6743 Execution Slots: SLOT236744 ========================================================================== */6745 6746#define Q6_P_lsrxacc_PI __builtin_HEXAGON_S2_lsr_i_p_xacc6747 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_2op6752 Execution Slots: SLOT236753 ========================================================================== */6754 6755#define Q6_R_lsr_RI __builtin_HEXAGON_S2_lsr_i_r6756 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_2op6761 Execution Slots: SLOT236762 ========================================================================== */6763 6764#define Q6_R_lsracc_RI __builtin_HEXAGON_S2_lsr_i_r_acc6765 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_2op6770 Execution Slots: SLOT236771 ========================================================================== */6772 6773#define Q6_R_lsrand_RI __builtin_HEXAGON_S2_lsr_i_r_and6774 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_2op6779 Execution Slots: SLOT236780 ========================================================================== */6781 6782#define Q6_R_lsrnac_RI __builtin_HEXAGON_S2_lsr_i_r_nac6783 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_2op6788 Execution Slots: SLOT236789 ========================================================================== */6790 6791#define Q6_R_lsror_RI __builtin_HEXAGON_S2_lsr_i_r_or6792 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_2op6797 Execution Slots: SLOT236798 ========================================================================== */6799 6800#define Q6_R_lsrxacc_RI __builtin_HEXAGON_S2_lsr_i_r_xacc6801 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_2op6806 Execution Slots: SLOT236807 ========================================================================== */6808 6809#define Q6_P_vlsrh_PI __builtin_HEXAGON_S2_lsr_i_vh6810 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_2op6815 Execution Slots: SLOT236816 ========================================================================== */6817 6818#define Q6_P_vlsrw_PI __builtin_HEXAGON_S2_lsr_i_vw6819 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_3op6824 Execution Slots: SLOT236825 ========================================================================== */6826 6827#define Q6_P_lsr_PR __builtin_HEXAGON_S2_lsr_r_p6828 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_3op6833 Execution Slots: SLOT236834 ========================================================================== */6835 6836#define Q6_P_lsracc_PR __builtin_HEXAGON_S2_lsr_r_p_acc6837 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_3op6842 Execution Slots: SLOT236843 ========================================================================== */6844 6845#define Q6_P_lsrand_PR __builtin_HEXAGON_S2_lsr_r_p_and6846 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_3op6851 Execution Slots: SLOT236852 ========================================================================== */6853 6854#define Q6_P_lsrnac_PR __builtin_HEXAGON_S2_lsr_r_p_nac6855 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_3op6860 Execution Slots: SLOT236861 ========================================================================== */6862 6863#define Q6_P_lsror_PR __builtin_HEXAGON_S2_lsr_r_p_or6864 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_3op6869 Execution Slots: SLOT236870 ========================================================================== */6871 6872#define Q6_P_lsrxacc_PR __builtin_HEXAGON_S2_lsr_r_p_xor6873 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_3op6878 Execution Slots: SLOT236879 ========================================================================== */6880 6881#define Q6_R_lsr_RR __builtin_HEXAGON_S2_lsr_r_r6882 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_3op6887 Execution Slots: SLOT236888 ========================================================================== */6889 6890#define Q6_R_lsracc_RR __builtin_HEXAGON_S2_lsr_r_r_acc6891 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_3op6896 Execution Slots: SLOT236897 ========================================================================== */6898 6899#define Q6_R_lsrand_RR __builtin_HEXAGON_S2_lsr_r_r_and6900 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_3op6905 Execution Slots: SLOT236906 ========================================================================== */6907 6908#define Q6_R_lsrnac_RR __builtin_HEXAGON_S2_lsr_r_r_nac6909 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_3op6914 Execution Slots: SLOT236915 ========================================================================== */6916 6917#define Q6_R_lsror_RR __builtin_HEXAGON_S2_lsr_r_r_or6918 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_3op6923 Execution Slots: SLOT236924 ========================================================================== */6925 6926#define Q6_P_vlsrh_PR __builtin_HEXAGON_S2_lsr_r_vh6927 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_3op6932 Execution Slots: SLOT236933 ========================================================================== */6934 6935#define Q6_P_vlsrw_PR __builtin_HEXAGON_S2_lsr_r_vw6936 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_3op6941 Execution Slots: SLOT01236942 ========================================================================== */6943 6944#define Q6_P_packhl_RR __builtin_HEXAGON_S2_packhl6945 6946/* ==========================================================================6947 Assembly Syntax: Rd32=parity(Rss32,Rtt32)6948 C Intrinsic Prototype: Word32 Q6_R_parity_PP(Word64 Rss, Word64 Rtt)6949 Instruction Type: ALU646950 Execution Slots: SLOT236951 ========================================================================== */6952 6953#define Q6_R_parity_PP __builtin_HEXAGON_S2_parityp6954 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_2op6959 Execution Slots: SLOT236960 ========================================================================== */6961 6962#define Q6_R_setbit_RI __builtin_HEXAGON_S2_setbit_i6963 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_3op6968 Execution Slots: SLOT236969 ========================================================================== */6970 6971#define Q6_R_setbit_RR __builtin_HEXAGON_S2_setbit_r6972 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_3op6977 Execution Slots: SLOT236978 ========================================================================== */6979 6980#define Q6_P_shuffeb_PP __builtin_HEXAGON_S2_shuffeb6981 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_3op6986 Execution Slots: SLOT236987 ========================================================================== */6988 6989#define Q6_P_shuffeh_PP __builtin_HEXAGON_S2_shuffeh6990 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_3op6995 Execution Slots: SLOT236996 ========================================================================== */6997 6998#define Q6_P_shuffob_PP __builtin_HEXAGON_S2_shuffob6999 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_3op7004 Execution Slots: SLOT237005 ========================================================================== */7006 7007#define Q6_P_shuffoh_PP __builtin_HEXAGON_S2_shuffoh7008 7009/* ==========================================================================7010 Assembly Syntax: memb(Rx32++#s4:0:circ(Mu2))=Rt327011 C Intrinsic Prototype: void Q6_memb_IMR_circ(void** Rx, Word32 Is4_0, Word32 Mu, Word32 Rt, void* BaseAddress)7012 Instruction Type: ST7013 Execution Slots: SLOT017014 ========================================================================== */7015 7016#define Q6_memb_IMR_circ __builtin_HEXAGON_S2_storerb_pci7017 7018/* ==========================================================================7019 Assembly Syntax: memb(Rx32++I:circ(Mu2))=Rt327020 C Intrinsic Prototype: void Q6_memb_MR_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)7021 Instruction Type: ST7022 Execution Slots: SLOT017023 ========================================================================== */7024 7025#define Q6_memb_MR_circ __builtin_HEXAGON_S2_storerb_pcr7026 7027/* ==========================================================================7028 Assembly Syntax: memd(Rx32++#s4:3:circ(Mu2))=Rtt327029 C Intrinsic Prototype: void Q6_memd_IMP_circ(void** Rx, Word32 Is4_3, Word32 Mu, Word64 Rtt, void* BaseAddress)7030 Instruction Type: ST7031 Execution Slots: SLOT017032 ========================================================================== */7033 7034#define Q6_memd_IMP_circ __builtin_HEXAGON_S2_storerd_pci7035 7036/* ==========================================================================7037 Assembly Syntax: memd(Rx32++I:circ(Mu2))=Rtt327038 C Intrinsic Prototype: void Q6_memd_MP_circ(void** Rx, Word32 Mu, Word64 Rtt, void* BaseAddress)7039 Instruction Type: ST7040 Execution Slots: SLOT017041 ========================================================================== */7042 7043#define Q6_memd_MP_circ __builtin_HEXAGON_S2_storerd_pcr7044 7045/* ==========================================================================7046 Assembly Syntax: memh(Rx32++#s4:1:circ(Mu2))=Rt32.h7047 C Intrinsic Prototype: void Q6_memh_IMRh_circ(void** Rx, Word32 Is4_1, Word32 Mu, Word32 Rt, void* BaseAddress)7048 Instruction Type: ST7049 Execution Slots: SLOT017050 ========================================================================== */7051 7052#define Q6_memh_IMRh_circ __builtin_HEXAGON_S2_storerf_pci7053 7054/* ==========================================================================7055 Assembly Syntax: memh(Rx32++I:circ(Mu2))=Rt32.h7056 C Intrinsic Prototype: void Q6_memh_MRh_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)7057 Instruction Type: ST7058 Execution Slots: SLOT017059 ========================================================================== */7060 7061#define Q6_memh_MRh_circ __builtin_HEXAGON_S2_storerf_pcr7062 7063/* ==========================================================================7064 Assembly Syntax: memh(Rx32++#s4:1:circ(Mu2))=Rt327065 C Intrinsic Prototype: void Q6_memh_IMR_circ(void** Rx, Word32 Is4_1, Word32 Mu, Word32 Rt, void* BaseAddress)7066 Instruction Type: ST7067 Execution Slots: SLOT017068 ========================================================================== */7069 7070#define Q6_memh_IMR_circ __builtin_HEXAGON_S2_storerh_pci7071 7072/* ==========================================================================7073 Assembly Syntax: memh(Rx32++I:circ(Mu2))=Rt327074 C Intrinsic Prototype: void Q6_memh_MR_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)7075 Instruction Type: ST7076 Execution Slots: SLOT017077 ========================================================================== */7078 7079#define Q6_memh_MR_circ __builtin_HEXAGON_S2_storerh_pcr7080 7081/* ==========================================================================7082 Assembly Syntax: memw(Rx32++#s4:2:circ(Mu2))=Rt327083 C Intrinsic Prototype: void Q6_memw_IMR_circ(void** Rx, Word32 Is4_2, Word32 Mu, Word32 Rt, void* BaseAddress)7084 Instruction Type: ST7085 Execution Slots: SLOT017086 ========================================================================== */7087 7088#define Q6_memw_IMR_circ __builtin_HEXAGON_S2_storeri_pci7089 7090/* ==========================================================================7091 Assembly Syntax: memw(Rx32++I:circ(Mu2))=Rt327092 C Intrinsic Prototype: void Q6_memw_MR_circ(void** Rx, Word32 Mu, Word32 Rt, void* BaseAddress)7093 Instruction Type: ST7094 Execution Slots: SLOT017095 ========================================================================== */7096 7097#define Q6_memw_MR_circ __builtin_HEXAGON_S2_storeri_pcr7098 7099/* ==========================================================================7100 Assembly Syntax: Rd32=vsathb(Rs32)7101 C Intrinsic Prototype: Word32 Q6_R_vsathb_R(Word32 Rs)7102 Instruction Type: S_2op7103 Execution Slots: SLOT237104 ========================================================================== */7105 7106#define Q6_R_vsathb_R __builtin_HEXAGON_S2_svsathb7107 7108/* ==========================================================================7109 Assembly Syntax: Rd32=vsathub(Rs32)7110 C Intrinsic Prototype: Word32 Q6_R_vsathub_R(Word32 Rs)7111 Instruction Type: S_2op7112 Execution Slots: SLOT237113 ========================================================================== */7114 7115#define Q6_R_vsathub_R __builtin_HEXAGON_S2_svsathub7116 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_2op7121 Execution Slots: SLOT01237122 ========================================================================== */7123 7124#define Q6_R_tableidxb_RII __builtin_HEXAGON_S2_tableidxb_goodsyntax7125 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_2op7130 Execution Slots: SLOT01237131 ========================================================================== */7132 7133#define Q6_R_tableidxd_RII __builtin_HEXAGON_S2_tableidxd_goodsyntax7134 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_2op7139 Execution Slots: SLOT01237140 ========================================================================== */7141 7142#define Q6_R_tableidxh_RII __builtin_HEXAGON_S2_tableidxh_goodsyntax7143 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_2op7148 Execution Slots: SLOT01237149 ========================================================================== */7150 7151#define Q6_R_tableidxw_RII __builtin_HEXAGON_S2_tableidxw_goodsyntax7152 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_2op7157 Execution Slots: SLOT237158 ========================================================================== */7159 7160#define Q6_R_togglebit_RI __builtin_HEXAGON_S2_togglebit_i7161 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_3op7166 Execution Slots: SLOT237167 ========================================================================== */7168 7169#define Q6_R_togglebit_RR __builtin_HEXAGON_S2_togglebit_r7170 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_2op7175 Execution Slots: SLOT237176 ========================================================================== */7177 7178#define Q6_p_tstbit_RI __builtin_HEXAGON_S2_tstbit_i7179 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_3op7184 Execution Slots: SLOT237185 ========================================================================== */7186 7187#define Q6_p_tstbit_RR __builtin_HEXAGON_S2_tstbit_r7188 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_3op7193 Execution Slots: SLOT237194 ========================================================================== */7195 7196#define Q6_P_valignb_PPI __builtin_HEXAGON_S2_valignib7197 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_3op7202 Execution Slots: SLOT237203 ========================================================================== */7204 7205#define Q6_P_valignb_PPp __builtin_HEXAGON_S2_valignrb7206 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_3op7211 Execution Slots: SLOT237212 ========================================================================== */7213 7214#define Q6_P_vcnegh_PR __builtin_HEXAGON_S2_vcnegh7215 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_3op7220 Execution Slots: SLOT237221 ========================================================================== */7222 7223#define Q6_P_vcrotate_PR __builtin_HEXAGON_S2_vcrotate7224 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_3op7229 Execution Slots: SLOT237230 ========================================================================== */7231 7232#define Q6_P_vrcneghacc_PR __builtin_HEXAGON_S2_vrcnegh7233 7234/* ==========================================================================7235 Assembly Syntax: Rd32=vrndwh(Rss32)7236 C Intrinsic Prototype: Word32 Q6_R_vrndwh_P(Word64 Rss)7237 Instruction Type: S_2op7238 Execution Slots: SLOT237239 ========================================================================== */7240 7241#define Q6_R_vrndwh_P __builtin_HEXAGON_S2_vrndpackwh7242 7243/* ==========================================================================7244 Assembly Syntax: Rd32=vrndwh(Rss32):sat7245 C Intrinsic Prototype: Word32 Q6_R_vrndwh_P_sat(Word64 Rss)7246 Instruction Type: S_2op7247 Execution Slots: SLOT237248 ========================================================================== */7249 7250#define Q6_R_vrndwh_P_sat __builtin_HEXAGON_S2_vrndpackwhs7251 7252/* ==========================================================================7253 Assembly Syntax: Rd32=vsathb(Rss32)7254 C Intrinsic Prototype: Word32 Q6_R_vsathb_P(Word64 Rss)7255 Instruction Type: S_2op7256 Execution Slots: SLOT237257 ========================================================================== */7258 7259#define Q6_R_vsathb_P __builtin_HEXAGON_S2_vsathb7260 7261/* ==========================================================================7262 Assembly Syntax: Rdd32=vsathb(Rss32)7263 C Intrinsic Prototype: Word64 Q6_P_vsathb_P(Word64 Rss)7264 Instruction Type: S_2op7265 Execution Slots: SLOT237266 ========================================================================== */7267 7268#define Q6_P_vsathb_P __builtin_HEXAGON_S2_vsathb_nopack7269 7270/* ==========================================================================7271 Assembly Syntax: Rd32=vsathub(Rss32)7272 C Intrinsic Prototype: Word32 Q6_R_vsathub_P(Word64 Rss)7273 Instruction Type: S_2op7274 Execution Slots: SLOT237275 ========================================================================== */7276 7277#define Q6_R_vsathub_P __builtin_HEXAGON_S2_vsathub7278 7279/* ==========================================================================7280 Assembly Syntax: Rdd32=vsathub(Rss32)7281 C Intrinsic Prototype: Word64 Q6_P_vsathub_P(Word64 Rss)7282 Instruction Type: S_2op7283 Execution Slots: SLOT237284 ========================================================================== */7285 7286#define Q6_P_vsathub_P __builtin_HEXAGON_S2_vsathub_nopack7287 7288/* ==========================================================================7289 Assembly Syntax: Rd32=vsatwh(Rss32)7290 C Intrinsic Prototype: Word32 Q6_R_vsatwh_P(Word64 Rss)7291 Instruction Type: S_2op7292 Execution Slots: SLOT237293 ========================================================================== */7294 7295#define Q6_R_vsatwh_P __builtin_HEXAGON_S2_vsatwh7296 7297/* ==========================================================================7298 Assembly Syntax: Rdd32=vsatwh(Rss32)7299 C Intrinsic Prototype: Word64 Q6_P_vsatwh_P(Word64 Rss)7300 Instruction Type: S_2op7301 Execution Slots: SLOT237302 ========================================================================== */7303 7304#define Q6_P_vsatwh_P __builtin_HEXAGON_S2_vsatwh_nopack7305 7306/* ==========================================================================7307 Assembly Syntax: Rd32=vsatwuh(Rss32)7308 C Intrinsic Prototype: Word32 Q6_R_vsatwuh_P(Word64 Rss)7309 Instruction Type: S_2op7310 Execution Slots: SLOT237311 ========================================================================== */7312 7313#define Q6_R_vsatwuh_P __builtin_HEXAGON_S2_vsatwuh7314 7315/* ==========================================================================7316 Assembly Syntax: Rdd32=vsatwuh(Rss32)7317 C Intrinsic Prototype: Word64 Q6_P_vsatwuh_P(Word64 Rss)7318 Instruction Type: S_2op7319 Execution Slots: SLOT237320 ========================================================================== */7321 7322#define Q6_P_vsatwuh_P __builtin_HEXAGON_S2_vsatwuh_nopack7323 7324/* ==========================================================================7325 Assembly Syntax: Rd32=vsplatb(Rs32)7326 C Intrinsic Prototype: Word32 Q6_R_vsplatb_R(Word32 Rs)7327 Instruction Type: S_2op7328 Execution Slots: SLOT237329 ========================================================================== */7330 7331#define Q6_R_vsplatb_R __builtin_HEXAGON_S2_vsplatrb7332 7333/* ==========================================================================7334 Assembly Syntax: Rdd32=vsplath(Rs32)7335 C Intrinsic Prototype: Word64 Q6_P_vsplath_R(Word32 Rs)7336 Instruction Type: S_2op7337 Execution Slots: SLOT237338 ========================================================================== */7339 7340#define Q6_P_vsplath_R __builtin_HEXAGON_S2_vsplatrh7341 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_3op7346 Execution Slots: SLOT237347 ========================================================================== */7348 7349#define Q6_P_vspliceb_PPI __builtin_HEXAGON_S2_vspliceib7350 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_3op7355 Execution Slots: SLOT237356 ========================================================================== */7357 7358#define Q6_P_vspliceb_PPp __builtin_HEXAGON_S2_vsplicerb7359 7360/* ==========================================================================7361 Assembly Syntax: Rdd32=vsxtbh(Rs32)7362 C Intrinsic Prototype: Word64 Q6_P_vsxtbh_R(Word32 Rs)7363 Instruction Type: S_2op7364 Execution Slots: SLOT237365 ========================================================================== */7366 7367#define Q6_P_vsxtbh_R __builtin_HEXAGON_S2_vsxtbh7368 7369/* ==========================================================================7370 Assembly Syntax: Rdd32=vsxthw(Rs32)7371 C Intrinsic Prototype: Word64 Q6_P_vsxthw_R(Word32 Rs)7372 Instruction Type: S_2op7373 Execution Slots: SLOT237374 ========================================================================== */7375 7376#define Q6_P_vsxthw_R __builtin_HEXAGON_S2_vsxthw7377 7378/* ==========================================================================7379 Assembly Syntax: Rd32=vtrunehb(Rss32)7380 C Intrinsic Prototype: Word32 Q6_R_vtrunehb_P(Word64 Rss)7381 Instruction Type: S_2op7382 Execution Slots: SLOT237383 ========================================================================== */7384 7385#define Q6_R_vtrunehb_P __builtin_HEXAGON_S2_vtrunehb7386 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_3op7391 Execution Slots: SLOT237392 ========================================================================== */7393 7394#define Q6_P_vtrunewh_PP __builtin_HEXAGON_S2_vtrunewh7395 7396/* ==========================================================================7397 Assembly Syntax: Rd32=vtrunohb(Rss32)7398 C Intrinsic Prototype: Word32 Q6_R_vtrunohb_P(Word64 Rss)7399 Instruction Type: S_2op7400 Execution Slots: SLOT237401 ========================================================================== */7402 7403#define Q6_R_vtrunohb_P __builtin_HEXAGON_S2_vtrunohb7404 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_3op7409 Execution Slots: SLOT237410 ========================================================================== */7411 7412#define Q6_P_vtrunowh_PP __builtin_HEXAGON_S2_vtrunowh7413 7414/* ==========================================================================7415 Assembly Syntax: Rdd32=vzxtbh(Rs32)7416 C Intrinsic Prototype: Word64 Q6_P_vzxtbh_R(Word32 Rs)7417 Instruction Type: S_2op7418 Execution Slots: SLOT237419 ========================================================================== */7420 7421#define Q6_P_vzxtbh_R __builtin_HEXAGON_S2_vzxtbh7422 7423/* ==========================================================================7424 Assembly Syntax: Rdd32=vzxthw(Rs32)7425 C Intrinsic Prototype: Word64 Q6_P_vzxthw_R(Word32 Rs)7426 Instruction Type: S_2op7427 Execution Slots: SLOT237428 ========================================================================== */7429 7430#define Q6_P_vzxthw_R __builtin_HEXAGON_S2_vzxthw7431 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: ALU647436 Execution Slots: SLOT237437 ========================================================================== */7438 7439#define Q6_R_add_add_RRI __builtin_HEXAGON_S4_addaddi7440 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: ALU647445 Execution Slots: SLOT237446 ========================================================================== */7447 7448#define Q6_R_add_asl_IRI __builtin_HEXAGON_S4_addi_asl_ri7449 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: ALU647454 Execution Slots: SLOT237455 ========================================================================== */7456 7457#define Q6_R_add_lsr_IRI __builtin_HEXAGON_S4_addi_lsr_ri7458 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: ALU647463 Execution Slots: SLOT237464 ========================================================================== */7465 7466#define Q6_R_and_asl_IRI __builtin_HEXAGON_S4_andi_asl_ri7467 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: ALU647472 Execution Slots: SLOT237473 ========================================================================== */7474 7475#define Q6_R_and_lsr_IRI __builtin_HEXAGON_S4_andi_lsr_ri7476 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_2op7481 Execution Slots: SLOT237482 ========================================================================== */7483 7484#define Q6_R_add_clb_RI __builtin_HEXAGON_S4_clbaddi7485 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_2op7490 Execution Slots: SLOT237491 ========================================================================== */7492 7493#define Q6_R_add_clb_PI __builtin_HEXAGON_S4_clbpaddi7494 7495/* ==========================================================================7496 Assembly Syntax: Rd32=normamt(Rss32)7497 C Intrinsic Prototype: Word32 Q6_R_normamt_P(Word64 Rss)7498 Instruction Type: S_2op7499 Execution Slots: SLOT237500 ========================================================================== */7501 7502#define Q6_R_normamt_P __builtin_HEXAGON_S4_clbpnorm7503 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_2op7508 Execution Slots: SLOT237509 ========================================================================== */7510 7511#define Q6_R_extract_RII __builtin_HEXAGON_S4_extract7512 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_3op7517 Execution Slots: SLOT237518 ========================================================================== */7519 7520#define Q6_R_extract_RP __builtin_HEXAGON_S4_extract_rp7521 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_2op7526 Execution Slots: SLOT237527 ========================================================================== */7528 7529#define Q6_P_extract_PII __builtin_HEXAGON_S4_extractp7530 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_3op7535 Execution Slots: SLOT237536 ========================================================================== */7537 7538#define Q6_P_extract_PP __builtin_HEXAGON_S4_extractp_rp7539 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_3op7544 Execution Slots: SLOT237545 ========================================================================== */7546 7547#define Q6_R_lsl_IR __builtin_HEXAGON_S4_lsli7548 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_2op7553 Execution Slots: SLOT237554 ========================================================================== */7555 7556#define Q6_p_not_tstbit_RI __builtin_HEXAGON_S4_ntstbit_i7557 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_3op7562 Execution Slots: SLOT237563 ========================================================================== */7564 7565#define Q6_p_not_tstbit_RR __builtin_HEXAGON_S4_ntstbit_r7566 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: ALU647571 Execution Slots: SLOT237572 ========================================================================== */7573 7574#define Q6_R_andor_RI __builtin_HEXAGON_S4_or_andi7575 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: ALU647580 Execution Slots: SLOT237581 ========================================================================== */7582 7583#define Q6_R_or_and_RRI __builtin_HEXAGON_S4_or_andix7584 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: ALU647589 Execution Slots: SLOT237590 ========================================================================== */7591 7592#define Q6_R_oror_RI __builtin_HEXAGON_S4_or_ori7593 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: ALU647598 Execution Slots: SLOT237599 ========================================================================== */7600 7601#define Q6_R_or_asl_IRI __builtin_HEXAGON_S4_ori_asl_ri7602 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: ALU647607 Execution Slots: SLOT237608 ========================================================================== */7609 7610#define Q6_R_or_lsr_IRI __builtin_HEXAGON_S4_ori_lsr_ri7611 7612/* ==========================================================================7613 Assembly Syntax: Rd32=parity(Rs32,Rt32)7614 C Intrinsic Prototype: Word32 Q6_R_parity_RR(Word32 Rs, Word32 Rt)7615 Instruction Type: ALU647616 Execution Slots: SLOT237617 ========================================================================== */7618 7619#define Q6_R_parity_RR __builtin_HEXAGON_S4_parity7620 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: ALU647625 Execution Slots: SLOT237626 ========================================================================== */7627 7628#define Q6_R_add_sub_RIR __builtin_HEXAGON_S4_subaddi7629 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: ALU647634 Execution Slots: SLOT237635 ========================================================================== */7636 7637#define Q6_R_sub_asl_IRI __builtin_HEXAGON_S4_subi_asl_ri7638 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: ALU647643 Execution Slots: SLOT237644 ========================================================================== */7645 7646#define Q6_R_sub_lsr_IRI __builtin_HEXAGON_S4_subi_lsr_ri7647 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_3op7652 Execution Slots: SLOT237653 ========================================================================== */7654 7655#define Q6_P_vrcrotate_PRI __builtin_HEXAGON_S4_vrcrotate7656 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_3op7661 Execution Slots: SLOT237662 ========================================================================== */7663 7664#define Q6_P_vrcrotateacc_PRI __builtin_HEXAGON_S4_vrcrotate_acc7665 7666/* ==========================================================================7667 Assembly Syntax: Rdd32=vxaddsubh(Rss32,Rtt32):sat7668 C Intrinsic Prototype: Word64 Q6_P_vxaddsubh_PP_sat(Word64 Rss, Word64 Rtt)7669 Instruction Type: S_3op7670 Execution Slots: SLOT237671 ========================================================================== */7672 7673#define Q6_P_vxaddsubh_PP_sat __builtin_HEXAGON_S4_vxaddsubh7674 7675/* ==========================================================================7676 Assembly Syntax: Rdd32=vxaddsubh(Rss32,Rtt32):rnd:>>1:sat7677 C Intrinsic Prototype: Word64 Q6_P_vxaddsubh_PP_rnd_rs1_sat(Word64 Rss, Word64 Rtt)7678 Instruction Type: S_3op7679 Execution Slots: SLOT237680 ========================================================================== */7681 7682#define Q6_P_vxaddsubh_PP_rnd_rs1_sat __builtin_HEXAGON_S4_vxaddsubhr7683 7684/* ==========================================================================7685 Assembly Syntax: Rdd32=vxaddsubw(Rss32,Rtt32):sat7686 C Intrinsic Prototype: Word64 Q6_P_vxaddsubw_PP_sat(Word64 Rss, Word64 Rtt)7687 Instruction Type: S_3op7688 Execution Slots: SLOT237689 ========================================================================== */7690 7691#define Q6_P_vxaddsubw_PP_sat __builtin_HEXAGON_S4_vxaddsubw7692 7693/* ==========================================================================7694 Assembly Syntax: Rdd32=vxsubaddh(Rss32,Rtt32):sat7695 C Intrinsic Prototype: Word64 Q6_P_vxsubaddh_PP_sat(Word64 Rss, Word64 Rtt)7696 Instruction Type: S_3op7697 Execution Slots: SLOT237698 ========================================================================== */7699 7700#define Q6_P_vxsubaddh_PP_sat __builtin_HEXAGON_S4_vxsubaddh7701 7702/* ==========================================================================7703 Assembly Syntax: Rdd32=vxsubaddh(Rss32,Rtt32):rnd:>>1:sat7704 C Intrinsic Prototype: Word64 Q6_P_vxsubaddh_PP_rnd_rs1_sat(Word64 Rss, Word64 Rtt)7705 Instruction Type: S_3op7706 Execution Slots: SLOT237707 ========================================================================== */7708 7709#define Q6_P_vxsubaddh_PP_rnd_rs1_sat __builtin_HEXAGON_S4_vxsubaddhr7710 7711/* ==========================================================================7712 Assembly Syntax: Rdd32=vxsubaddw(Rss32,Rtt32):sat7713 C Intrinsic Prototype: Word64 Q6_P_vxsubaddw_PP_sat(Word64 Rss, Word64 Rtt)7714 Instruction Type: S_3op7715 Execution Slots: SLOT237716 ========================================================================== */7717 7718#define Q6_P_vxsubaddw_PP_sat __builtin_HEXAGON_S4_vxsubaddw7719 7720/* ==========================================================================7721 Assembly Syntax: Rd32=vasrhub(Rss32,#u4):rnd:sat7722 C Intrinsic Prototype: Word32 Q6_R_vasrhub_PI_rnd_sat(Word64 Rss, Word32 Iu4)7723 Instruction Type: S_2op7724 Execution Slots: SLOT01237725 ========================================================================== */7726 7727#define Q6_R_vasrhub_PI_rnd_sat __builtin_HEXAGON_S5_asrhub_rnd_sat_goodsyntax7728 7729/* ==========================================================================7730 Assembly Syntax: Rd32=vasrhub(Rss32,#u4):sat7731 C Intrinsic Prototype: Word32 Q6_R_vasrhub_PI_sat(Word64 Rss, Word32 Iu4)7732 Instruction Type: S_2op7733 Execution Slots: SLOT237734 ========================================================================== */7735 7736#define Q6_R_vasrhub_PI_sat __builtin_HEXAGON_S5_asrhub_sat7737 7738/* ==========================================================================7739 Assembly Syntax: Rd32=popcount(Rss32)7740 C Intrinsic Prototype: Word32 Q6_R_popcount_P(Word64 Rss)7741 Instruction Type: S_2op7742 Execution Slots: SLOT237743 ========================================================================== */7744 7745#define Q6_R_popcount_P __builtin_HEXAGON_S5_popcountp7746 7747/* ==========================================================================7748 Assembly Syntax: Rdd32=vasrh(Rss32,#u4):rnd7749 C Intrinsic Prototype: Word64 Q6_P_vasrh_PI_rnd(Word64 Rss, Word32 Iu4)7750 Instruction Type: S_2op7751 Execution Slots: SLOT01237752 ========================================================================== */7753 7754#define Q6_P_vasrh_PI_rnd __builtin_HEXAGON_S5_vasrhrnd_goodsyntax7755 7756/* ==========================================================================7757 Assembly Syntax: dccleana(Rs32)7758 C Intrinsic Prototype: void Q6_dccleana_A(Address Rs)7759 Instruction Type: ST7760 Execution Slots: SLOT07761 ========================================================================== */7762 7763#define Q6_dccleana_A __builtin_HEXAGON_Y2_dccleana7764 7765/* ==========================================================================7766 Assembly Syntax: dccleaninva(Rs32)7767 C Intrinsic Prototype: void Q6_dccleaninva_A(Address Rs)7768 Instruction Type: ST7769 Execution Slots: SLOT07770 ========================================================================== */7771 7772#define Q6_dccleaninva_A __builtin_HEXAGON_Y2_dccleaninva7773 7774/* ==========================================================================7775 Assembly Syntax: dcfetch(Rs32)7776 C Intrinsic Prototype: void Q6_dcfetch_A(Address Rs)7777 Instruction Type: MAPPING7778 Execution Slots: SLOT01237779 ========================================================================== */7780 7781#define Q6_dcfetch_A __builtin_HEXAGON_Y2_dcfetch7782 7783/* ==========================================================================7784 Assembly Syntax: dcinva(Rs32)7785 C Intrinsic Prototype: void Q6_dcinva_A(Address Rs)7786 Instruction Type: ST7787 Execution Slots: SLOT07788 ========================================================================== */7789 7790#define Q6_dcinva_A __builtin_HEXAGON_Y2_dcinva7791 7792/* ==========================================================================7793 Assembly Syntax: dczeroa(Rs32)7794 C Intrinsic Prototype: void Q6_dczeroa_A(Address Rs)7795 Instruction Type: ST7796 Execution Slots: SLOT07797 ========================================================================== */7798 7799#define Q6_dczeroa_A __builtin_HEXAGON_Y2_dczeroa7800 7801/* ==========================================================================7802 Assembly Syntax: l2fetch(Rs32,Rt32)7803 C Intrinsic Prototype: void Q6_l2fetch_AR(Address Rs, Word32 Rt)7804 Instruction Type: ST7805 Execution Slots: SLOT07806 ========================================================================== */7807 7808#define Q6_l2fetch_AR __builtin_HEXAGON_Y4_l2fetch7809 7810/* ==========================================================================7811 Assembly Syntax: l2fetch(Rs32,Rtt32)7812 C Intrinsic Prototype: void Q6_l2fetch_AP(Address Rs, Word64 Rtt)7813 Instruction Type: ST7814 Execution Slots: SLOT07815 ========================================================================== */7816 7817#define Q6_l2fetch_AP __builtin_HEXAGON_Y5_l2fetch7818 7819#if __HEXAGON_ARCH__ >= 607820/* ==========================================================================7821 Assembly Syntax: Rdd32=rol(Rss32,#u6)7822 C Intrinsic Prototype: Word64 Q6_P_rol_PI(Word64 Rss, Word32 Iu6)7823 Instruction Type: S_2op7824 Execution Slots: SLOT237825 ========================================================================== */7826 7827#define Q6_P_rol_PI __builtin_HEXAGON_S6_rol_i_p7828#endif /* __HEXAGON_ARCH___ >= 60 */7829 7830#if __HEXAGON_ARCH__ >= 607831/* ==========================================================================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_2op7835 Execution Slots: SLOT237836 ========================================================================== */7837 7838#define Q6_P_rolacc_PI __builtin_HEXAGON_S6_rol_i_p_acc7839#endif /* __HEXAGON_ARCH___ >= 60 */7840 7841#if __HEXAGON_ARCH__ >= 607842/* ==========================================================================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_2op7846 Execution Slots: SLOT237847 ========================================================================== */7848 7849#define Q6_P_roland_PI __builtin_HEXAGON_S6_rol_i_p_and7850#endif /* __HEXAGON_ARCH___ >= 60 */7851 7852#if __HEXAGON_ARCH__ >= 607853/* ==========================================================================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_2op7857 Execution Slots: SLOT237858 ========================================================================== */7859 7860#define Q6_P_rolnac_PI __builtin_HEXAGON_S6_rol_i_p_nac7861#endif /* __HEXAGON_ARCH___ >= 60 */7862 7863#if __HEXAGON_ARCH__ >= 607864/* ==========================================================================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_2op7868 Execution Slots: SLOT237869 ========================================================================== */7870 7871#define Q6_P_rolor_PI __builtin_HEXAGON_S6_rol_i_p_or7872#endif /* __HEXAGON_ARCH___ >= 60 */7873 7874#if __HEXAGON_ARCH__ >= 607875/* ==========================================================================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_2op7879 Execution Slots: SLOT237880 ========================================================================== */7881 7882#define Q6_P_rolxacc_PI __builtin_HEXAGON_S6_rol_i_p_xacc7883#endif /* __HEXAGON_ARCH___ >= 60 */7884 7885#if __HEXAGON_ARCH__ >= 607886/* ==========================================================================7887 Assembly Syntax: Rd32=rol(Rs32,#u5)7888 C Intrinsic Prototype: Word32 Q6_R_rol_RI(Word32 Rs, Word32 Iu5)7889 Instruction Type: S_2op7890 Execution Slots: SLOT237891 ========================================================================== */7892 7893#define Q6_R_rol_RI __builtin_HEXAGON_S6_rol_i_r7894#endif /* __HEXAGON_ARCH___ >= 60 */7895 7896#if __HEXAGON_ARCH__ >= 607897/* ==========================================================================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_2op7901 Execution Slots: SLOT237902 ========================================================================== */7903 7904#define Q6_R_rolacc_RI __builtin_HEXAGON_S6_rol_i_r_acc7905#endif /* __HEXAGON_ARCH___ >= 60 */7906 7907#if __HEXAGON_ARCH__ >= 607908/* ==========================================================================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_2op7912 Execution Slots: SLOT237913 ========================================================================== */7914 7915#define Q6_R_roland_RI __builtin_HEXAGON_S6_rol_i_r_and7916#endif /* __HEXAGON_ARCH___ >= 60 */7917 7918#if __HEXAGON_ARCH__ >= 607919/* ==========================================================================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_2op7923 Execution Slots: SLOT237924 ========================================================================== */7925 7926#define Q6_R_rolnac_RI __builtin_HEXAGON_S6_rol_i_r_nac7927#endif /* __HEXAGON_ARCH___ >= 60 */7928 7929#if __HEXAGON_ARCH__ >= 607930/* ==========================================================================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_2op7934 Execution Slots: SLOT237935 ========================================================================== */7936 7937#define Q6_R_rolor_RI __builtin_HEXAGON_S6_rol_i_r_or7938#endif /* __HEXAGON_ARCH___ >= 60 */7939 7940#if __HEXAGON_ARCH__ >= 607941/* ==========================================================================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_2op7945 Execution Slots: SLOT237946 ========================================================================== */7947 7948#define Q6_R_rolxacc_RI __builtin_HEXAGON_S6_rol_i_r_xacc7949#endif /* __HEXAGON_ARCH___ >= 60 */7950 7951#if __HEXAGON_ARCH__ >= 627952/* ==========================================================================7953 Assembly Syntax: Rdd32=vabsdiffb(Rtt32,Rss32)7954 C Intrinsic Prototype: Word64 Q6_P_vabsdiffb_PP(Word64 Rtt, Word64 Rss)7955 Instruction Type: M7956 Execution Slots: SLOT237957 ========================================================================== */7958 7959#define Q6_P_vabsdiffb_PP __builtin_HEXAGON_M6_vabsdiffb7960#endif /* __HEXAGON_ARCH___ >= 62 */7961 7962#if __HEXAGON_ARCH__ >= 627963/* ==========================================================================7964 Assembly Syntax: Rdd32=vabsdiffub(Rtt32,Rss32)7965 C Intrinsic Prototype: Word64 Q6_P_vabsdiffub_PP(Word64 Rtt, Word64 Rss)7966 Instruction Type: M7967 Execution Slots: SLOT237968 ========================================================================== */7969 7970#define Q6_P_vabsdiffub_PP __builtin_HEXAGON_M6_vabsdiffub7971#endif /* __HEXAGON_ARCH___ >= 62 */7972 7973#if __HEXAGON_ARCH__ >= 627974/* ==========================================================================7975 Assembly Syntax: Rdd32=vsplatb(Rs32)7976 C Intrinsic Prototype: Word64 Q6_P_vsplatb_R(Word32 Rs)7977 Instruction Type: S_2op7978 Execution Slots: SLOT237979 ========================================================================== */7980 7981#define Q6_P_vsplatb_R __builtin_HEXAGON_S6_vsplatrbp7982#endif /* __HEXAGON_ARCH___ >= 62 */7983 7984#if __HEXAGON_ARCH__ >= 627985/* ==========================================================================7986 Assembly Syntax: Rdd32=vtrunehb(Rss32,Rtt32)7987 C Intrinsic Prototype: Word64 Q6_P_vtrunehb_PP(Word64 Rss, Word64 Rtt)7988 Instruction Type: S_3op7989 Execution Slots: SLOT237990 ========================================================================== */7991 7992#define Q6_P_vtrunehb_PP __builtin_HEXAGON_S6_vtrunehb_ppp7993#endif /* __HEXAGON_ARCH___ >= 62 */7994 7995#if __HEXAGON_ARCH__ >= 627996/* ==========================================================================7997 Assembly Syntax: Rdd32=vtrunohb(Rss32,Rtt32)7998 C Intrinsic Prototype: Word64 Q6_P_vtrunohb_PP(Word64 Rss, Word64 Rtt)7999 Instruction Type: S_3op8000 Execution Slots: SLOT238001 ========================================================================== */8002 8003#define Q6_P_vtrunohb_PP __builtin_HEXAGON_S6_vtrunohb_ppp8004#endif /* __HEXAGON_ARCH___ >= 62 */8005 8006#if __HEXAGON_ARCH__ >= 658007/* ==========================================================================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: ALU648011 Execution Slots: SLOT238012 ========================================================================== */8013 8014#define Q6_p_not_any8_vcmpb_eq_PP __builtin_HEXAGON_A6_vcmpbeq_notany8015#endif /* __HEXAGON_ARCH___ >= 65 */8016 8017#if __HEXAGON_ARCH__ >= 668018/* ==========================================================================8019 Assembly Syntax: Rdd32=dfadd(Rss32,Rtt32)8020 C Intrinsic Prototype: Float64 Q6_P_dfadd_PP(Float64 Rss, Float64 Rtt)8021 Instruction Type: M8022 Execution Slots: SLOT238023 ========================================================================== */8024 8025#define Q6_P_dfadd_PP __builtin_HEXAGON_F2_dfadd8026#endif /* __HEXAGON_ARCH___ >= 66 */8027 8028#if __HEXAGON_ARCH__ >= 668029/* ==========================================================================8030 Assembly Syntax: Rdd32=dfsub(Rss32,Rtt32)8031 C Intrinsic Prototype: Float64 Q6_P_dfsub_PP(Float64 Rss, Float64 Rtt)8032 Instruction Type: M8033 Execution Slots: SLOT238034 ========================================================================== */8035 8036#define Q6_P_dfsub_PP __builtin_HEXAGON_F2_dfsub8037#endif /* __HEXAGON_ARCH___ >= 66 */8038 8039#if __HEXAGON_ARCH__ >= 668040/* ==========================================================================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: M8044 Execution Slots: SLOT238045 ========================================================================== */8046 8047#define Q6_R_mpyinac_RR __builtin_HEXAGON_M2_mnaci8048#endif /* __HEXAGON_ARCH___ >= 66 */8049 8050#if __HEXAGON_ARCH__ >= 668051/* ==========================================================================8052 Assembly Syntax: Rd32=mask(#u5,#U5)8053 C Intrinsic Prototype: Word32 Q6_R_mask_II(Word32 Iu5, Word32 IU5)8054 Instruction Type: S_2op8055 Execution Slots: SLOT238056 ========================================================================== */8057 8058#define Q6_R_mask_II __builtin_HEXAGON_S2_mask8059#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_2op8066 Execution Slots: SLOT238067 ========================================================================== */8068 8069#define Q6_R_clip_RI __builtin_HEXAGON_A7_clip8070#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_2op8077 Execution Slots: SLOT238078 ========================================================================== */8079 8080#define Q6_P_cround_PI __builtin_HEXAGON_A7_croundd_ri8081#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_3op8088 Execution Slots: SLOT238089 ========================================================================== */8090 8091#define Q6_P_cround_PR __builtin_HEXAGON_A7_croundd_rr8092#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_2op8099 Execution Slots: SLOT238100 ========================================================================== */8101 8102#define Q6_P_vclip_PI __builtin_HEXAGON_A7_vclip8103#endif /* __HEXAGON_ARCH___ >= 67 && defined __HEXAGON_AUDIO__*/8104 8105#if __HEXAGON_ARCH__ >= 678106/* ==========================================================================8107 Assembly Syntax: Rdd32=dfmax(Rss32,Rtt32)8108 C Intrinsic Prototype: Float64 Q6_P_dfmax_PP(Float64 Rss, Float64 Rtt)8109 Instruction Type: M8110 Execution Slots: SLOT238111 ========================================================================== */8112 8113#define Q6_P_dfmax_PP __builtin_HEXAGON_F2_dfmax8114#endif /* __HEXAGON_ARCH___ >= 67 */8115 8116#if __HEXAGON_ARCH__ >= 678117/* ==========================================================================8118 Assembly Syntax: Rdd32=dfmin(Rss32,Rtt32)8119 C Intrinsic Prototype: Float64 Q6_P_dfmin_PP(Float64 Rss, Float64 Rtt)8120 Instruction Type: M8121 Execution Slots: SLOT238122 ========================================================================== */8123 8124#define Q6_P_dfmin_PP __builtin_HEXAGON_F2_dfmin8125#endif /* __HEXAGON_ARCH___ >= 67 */8126 8127#if __HEXAGON_ARCH__ >= 678128/* ==========================================================================8129 Assembly Syntax: Rdd32=dfmpyfix(Rss32,Rtt32)8130 C Intrinsic Prototype: Float64 Q6_P_dfmpyfix_PP(Float64 Rss, Float64 Rtt)8131 Instruction Type: M8132 Execution Slots: SLOT238133 ========================================================================== */8134 8135#define Q6_P_dfmpyfix_PP __builtin_HEXAGON_F2_dfmpyfix8136#endif /* __HEXAGON_ARCH___ >= 67 */8137 8138#if __HEXAGON_ARCH__ >= 678139/* ==========================================================================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: M8143 Execution Slots: SLOT238144 ========================================================================== */8145 8146#define Q6_P_dfmpyhhacc_PP __builtin_HEXAGON_F2_dfmpyhh8147#endif /* __HEXAGON_ARCH___ >= 67 */8148 8149#if __HEXAGON_ARCH__ >= 678150/* ==========================================================================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: M8154 Execution Slots: SLOT238155 ========================================================================== */8156 8157#define Q6_P_dfmpylhacc_PP __builtin_HEXAGON_F2_dfmpylh8158#endif /* __HEXAGON_ARCH___ >= 67 */8159 8160#if __HEXAGON_ARCH__ >= 678161/* ==========================================================================8162 Assembly Syntax: Rdd32=dfmpyll(Rss32,Rtt32)8163 C Intrinsic Prototype: Float64 Q6_P_dfmpyll_PP(Float64 Rss, Float64 Rtt)8164 Instruction Type: M8165 Execution Slots: SLOT238166 ========================================================================== */8167 8168#define Q6_P_dfmpyll_PP __builtin_HEXAGON_F2_dfmpyll8169#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: M8176 Execution Slots: SLOT38177 ========================================================================== */8178 8179#define Q6_P_cmpyiw_PP __builtin_HEXAGON_M7_dcmpyiw8180#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: M8187 Execution Slots: SLOT38188 ========================================================================== */8189 8190#define Q6_P_cmpyiwacc_PP __builtin_HEXAGON_M7_dcmpyiw_acc8191#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: M8198 Execution Slots: SLOT38199 ========================================================================== */8200 8201#define Q6_P_cmpyiw_PP_conj __builtin_HEXAGON_M7_dcmpyiwc8202#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: M8209 Execution Slots: SLOT38210 ========================================================================== */8211 8212#define Q6_P_cmpyiwacc_PP_conj __builtin_HEXAGON_M7_dcmpyiwc_acc8213#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: M8220 Execution Slots: SLOT38221 ========================================================================== */8222 8223#define Q6_P_cmpyrw_PP __builtin_HEXAGON_M7_dcmpyrw8224#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: M8231 Execution Slots: SLOT38232 ========================================================================== */8233 8234#define Q6_P_cmpyrwacc_PP __builtin_HEXAGON_M7_dcmpyrw_acc8235#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: M8242 Execution Slots: SLOT38243 ========================================================================== */8244 8245#define Q6_P_cmpyrw_PP_conj __builtin_HEXAGON_M7_dcmpyrwc8246#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: M8253 Execution Slots: SLOT38254 ========================================================================== */8255 8256#define Q6_P_cmpyrwacc_PP_conj __builtin_HEXAGON_M7_dcmpyrwc_acc8257#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: M8264 Execution Slots: SLOT38265 ========================================================================== */8266 8267#define Q6_P_vdmpyw_PP __builtin_HEXAGON_M7_vdmpy8268#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: M8275 Execution Slots: SLOT38276 ========================================================================== */8277 8278#define Q6_P_vdmpywacc_PP __builtin_HEXAGON_M7_vdmpy_acc8279#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:sat8284 C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_s1_sat(Word64 Rss, Word64 Rtt)8285 Instruction Type: M8286 Execution Slots: SLOT38287 ========================================================================== */8288 8289#define Q6_R_cmpyiw_PP_s1_sat __builtin_HEXAGON_M7_wcmpyiw8290#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:sat8295 C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)8296 Instruction Type: M8297 Execution Slots: SLOT38298 ========================================================================== */8299 8300#define Q6_R_cmpyiw_PP_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyiw_rnd8301#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:sat8306 C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_conj_s1_sat(Word64 Rss, Word64 Rtt)8307 Instruction Type: M8308 Execution Slots: SLOT38309 ========================================================================== */8310 8311#define Q6_R_cmpyiw_PP_conj_s1_sat __builtin_HEXAGON_M7_wcmpyiwc8312#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:sat8317 C Intrinsic Prototype: Word32 Q6_R_cmpyiw_PP_conj_s1_rnd_sat(Word64 Rss, Word64 Rtt)8318 Instruction Type: M8319 Execution Slots: SLOT38320 ========================================================================== */8321 8322#define Q6_R_cmpyiw_PP_conj_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyiwc_rnd8323#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:sat8328 C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_s1_sat(Word64 Rss, Word64 Rtt)8329 Instruction Type: M8330 Execution Slots: SLOT38331 ========================================================================== */8332 8333#define Q6_R_cmpyrw_PP_s1_sat __builtin_HEXAGON_M7_wcmpyrw8334#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:sat8339 C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_s1_rnd_sat(Word64 Rss, Word64 Rtt)8340 Instruction Type: M8341 Execution Slots: SLOT38342 ========================================================================== */8343 8344#define Q6_R_cmpyrw_PP_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyrw_rnd8345#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:sat8350 C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_conj_s1_sat(Word64 Rss, Word64 Rtt)8351 Instruction Type: M8352 Execution Slots: SLOT38353 ========================================================================== */8354 8355#define Q6_R_cmpyrw_PP_conj_s1_sat __builtin_HEXAGON_M7_wcmpyrwc8356#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:sat8361 C Intrinsic Prototype: Word32 Q6_R_cmpyrw_PP_conj_s1_rnd_sat(Word64 Rss, Word64 Rtt)8362 Instruction Type: M8363 Execution Slots: SLOT38364 ========================================================================== */8365 8366#define Q6_R_cmpyrw_PP_conj_s1_rnd_sat __builtin_HEXAGON_M7_wcmpyrwc_rnd8367#endif /* __HEXAGON_ARCH___ >= 67 && defined __HEXAGON_AUDIO__*/8368 8369#if __HEXAGON_ARCH__ >= 688370/* ==========================================================================8371 Assembly Syntax: dmlink(Rs32,Rt32)8372 C Intrinsic Prototype: void Q6_dmlink_AA(Address Rs, Address Rt)8373 Instruction Type: ST8374 Execution Slots: SLOT08375 ========================================================================== */8376 8377#define Q6_dmlink_AA __builtin_HEXAGON_Y6_dmlink8378#endif /* __HEXAGON_ARCH___ >= 68 */8379 8380#if __HEXAGON_ARCH__ >= 688381/* ==========================================================================8382 Assembly Syntax: Rd32=dmpause8383 C Intrinsic Prototype: Word32 Q6_R_dmpause()8384 Instruction Type: ST8385 Execution Slots: SLOT08386 ========================================================================== */8387 8388#define Q6_R_dmpause __builtin_HEXAGON_Y6_dmpause8389#endif /* __HEXAGON_ARCH___ >= 68 */8390 8391#if __HEXAGON_ARCH__ >= 688392/* ==========================================================================8393 Assembly Syntax: Rd32=dmpoll8394 C Intrinsic Prototype: Word32 Q6_R_dmpoll()8395 Instruction Type: ST8396 Execution Slots: SLOT08397 ========================================================================== */8398 8399#define Q6_R_dmpoll __builtin_HEXAGON_Y6_dmpoll8400#endif /* __HEXAGON_ARCH___ >= 68 */8401 8402#if __HEXAGON_ARCH__ >= 688403/* ==========================================================================8404 Assembly Syntax: dmresume(Rs32)8405 C Intrinsic Prototype: void Q6_dmresume_A(Address Rs)8406 Instruction Type: ST8407 Execution Slots: SLOT08408 ========================================================================== */8409 8410#define Q6_dmresume_A __builtin_HEXAGON_Y6_dmresume8411#endif /* __HEXAGON_ARCH___ >= 68 */8412 8413#if __HEXAGON_ARCH__ >= 688414/* ==========================================================================8415 Assembly Syntax: dmstart(Rs32)8416 C Intrinsic Prototype: void Q6_dmstart_A(Address Rs)8417 Instruction Type: ST8418 Execution Slots: SLOT08419 ========================================================================== */8420 8421#define Q6_dmstart_A __builtin_HEXAGON_Y6_dmstart8422#endif /* __HEXAGON_ARCH___ >= 68 */8423 8424#if __HEXAGON_ARCH__ >= 688425/* ==========================================================================8426 Assembly Syntax: Rd32=dmwait8427 C Intrinsic Prototype: Word32 Q6_R_dmwait()8428 Instruction Type: ST8429 Execution Slots: SLOT08430 ========================================================================== */8431 8432#define Q6_R_dmwait __builtin_HEXAGON_Y6_dmwait8433#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#endif8440