r348419 - [Hexagon] Add intrinsics for Hexagon V66

Krzysztof Parzyszek via cfe-commits cfe-commits at lists.llvm.org
Wed Dec 5 14:03:04 PST 2018


Author: kparzysz
Date: Wed Dec  5 14:03:04 2018
New Revision: 348419

URL: http://llvm.org/viewvc/llvm-project?rev=348419&view=rev
Log:
[Hexagon] Add intrinsics for Hexagon V66

Added:
    cfe/trunk/test/CodeGen/builtins-hexagon-v66-128B.c
    cfe/trunk/test/CodeGen/builtins-hexagon-v66.c
Modified:
    cfe/trunk/include/clang/Basic/BuiltinsHexagon.def
    cfe/trunk/lib/Sema/SemaChecking.cpp

Modified: cfe/trunk/include/clang/Basic/BuiltinsHexagon.def
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/BuiltinsHexagon.def?rev=348419&r1=348418&r2=348419&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/BuiltinsHexagon.def (original)
+++ cfe/trunk/include/clang/Basic/BuiltinsHexagon.def Wed Dec  5 14:03:04 2018
@@ -1008,6 +1008,13 @@ BUILTIN(__builtin_HEXAGON_S6_vsplatrbp,"
 
 BUILTIN(__builtin_HEXAGON_A6_vcmpbeq_notany,"iLLiLLi","")
 
+// V66 Scalar Instructions.
+
+BUILTIN(__builtin_HEXAGON_F2_dfsub,"ddd","")
+BUILTIN(__builtin_HEXAGON_F2_dfadd,"ddd","")
+BUILTIN(__builtin_HEXAGON_M2_mnaci,"iiii","")
+BUILTIN(__builtin_HEXAGON_S2_mask,"iUIiUIi","")
+
 // V60 HVX Instructions.
 
 BUILTIN(__builtin_HEXAGON_V6_veqb_or,"V16iV16iV16iV16i","")
@@ -1797,5 +1804,15 @@ BUILTIN(__builtin_HEXAGON_V6_vmpabuu_128
 BUILTIN(__builtin_HEXAGON_V6_vabsb_sat,"V16iV16i","")
 BUILTIN(__builtin_HEXAGON_V6_vabsb_sat_128B,"V32iV32i","")
 
+// V66 HVX Instructions.
+
+BUILTIN(__builtin_HEXAGON_V6_vaddcarrysat,"V16iV16iV16iV16i","")
+BUILTIN(__builtin_HEXAGON_V6_vaddcarrysat_128B,"V32iV32iV32iV32i","")
+BUILTIN(__builtin_HEXAGON_V6_vasr_into,"V32iV32iV16iV16i","")
+BUILTIN(__builtin_HEXAGON_V6_vasr_into_128B,"V64iV64iV32iV32i","")
+BUILTIN(__builtin_HEXAGON_V6_vsatdw,"V16iV16iV16i","")
+BUILTIN(__builtin_HEXAGON_V6_vsatdw_128B,"V32iV32iV32i","")
+BUILTIN(__builtin_HEXAGON_V6_vrotr,"V16iV16iV16i","")
+BUILTIN(__builtin_HEXAGON_V6_vrotr_128B,"V32iV32iV32i","")
 
 #undef BUILTIN

Modified: cfe/trunk/lib/Sema/SemaChecking.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaChecking.cpp?rev=348419&r1=348418&r2=348419&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaChecking.cpp (original)
+++ cfe/trunk/lib/Sema/SemaChecking.cpp Wed Dec  5 14:03:04 2018
@@ -1783,752 +1783,764 @@ bool Sema::CheckHexagonBuiltinCpu(unsign
   };
 
   static BuiltinAndString ValidCPU[] = {
-    { Hexagon::BI__builtin_HEXAGON_A6_vcmpbeq_notany, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_A6_vminub_RdP, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_M6_vabsdiffb, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_M6_vabsdiffub, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_nac, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_xacc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_nac, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_xacc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_vsplatrbp, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_vtrunehb_ppp, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_S6_vtrunohb_ppp, "v62,v65" },
+    { Hexagon::BI__builtin_HEXAGON_A6_vcmpbeq_notany, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_A6_vminub_RdP, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_F2_dfadd, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_F2_dfsub, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_M2_mnaci, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_M6_vabsdiffb, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_M6_vabsdiffub, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S2_mask, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_nac, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_p_xacc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_nac, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_rol_i_r_xacc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_vsplatrbp, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_vtrunehb_ppp, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_S6_vtrunohb_ppp, "v62,v65,v66" },
   };
 
   static BuiltinAndString ValidHVX[] = {
-    { Hexagon::BI__builtin_HEXAGON_V6_extractw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_extractw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_hi, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_hi_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lo, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lo_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatb, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatb_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lvsplath, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lvsplath_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_and_n, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_and_n_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_not, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_not_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_or_n, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_or_n_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2v2, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2v2_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_pred_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqh, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqh_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqw, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqw_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsb, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsb_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsb_sat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsb_sat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsh_sat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsh_sat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsw_sat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vabsw_sat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddb_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddb_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat_dv, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat_dv_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddcarry, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddcarry_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbh, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbh_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbw, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbw_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddh_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddh_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddububb_sat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddububb_sat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat_dv, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat_dv_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddw_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddw_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_valignb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_valignb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_valignbi, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_valignbi_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vand, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vand_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvnqv, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvnqv_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvqv, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvqv_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslh_acc, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslh_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslhv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslhv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslw_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslw_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslwv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vaslwv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrh_acc, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrh_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbrndsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbrndsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubrndsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubrndsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrhv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubrndsat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubrndsat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubsat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubsat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhrndsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhrndsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhsat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhsat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrw_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrw_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhrndsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhrndsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhrndsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhrndsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vasrwv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vassign, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vassign_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vassignp, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vassignp_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgb, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgb_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgbrnd, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgbrnd_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavghrnd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavghrnd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgubrnd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgubrnd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguhrnd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguhrnd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguw, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguw_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguwrnd, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavguwrnd_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgwrnd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vavgwrnd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vcl0h, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vcl0h_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vcl0w, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vcl0w_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vcombine, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vcombine_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vd0, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vd0_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdd0, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdd0_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealb4w, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealb4w_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealvdd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdealvdd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdelta, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdelta_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqb_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqh_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_veqw_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgth_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_and, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_and_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_or, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_or_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_xor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_xor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vinsertwr, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vinsertwr_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlalignb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlalignb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlalignbi, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlalignbi_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrb, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrb_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrhv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrhv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrwv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlsrwv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlut4, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlut4_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvbi, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvbi_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_nm, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_nm_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracci, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracci_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwhi, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwhi_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_nm, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_nm_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracci, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracci_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxb, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxb_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmaxw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminb, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminb_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vminw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabusv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabusv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu_acc, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuuv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuuv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpahhsat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpahhsat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhuhsat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhuhsat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpsuhuhsat, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpsuhuhsat_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh_64, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh_64_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh_acc, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsat_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsat_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsrs, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsrs_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhss, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhss_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhvsrs, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhvsrs_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyieoh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyieoh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewh_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewh_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiowh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiowh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_64_acc, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_64_acc_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd_sacc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd_sacc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_sacc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_sacc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe_acc, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmux, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vmux_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgb, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgb_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnavgw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnormamth, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnormamth_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnormamtw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnormamtw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnot, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vnot_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackeb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackeb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackeh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackeh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackhb_sat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackhb_sat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackhub_sat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackhub_sat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackob, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackob_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackoh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackoh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackwh_sat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackwh_sat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackwuh_sat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpackwuh_sat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpopcounth, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vpopcounth_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqb, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqb_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqh, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqh_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqw, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqw_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrdelta, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrdelta_128B, "v60,v62,v65" },
+    { Hexagon::BI__builtin_HEXAGON_V6_hi, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_hi_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lo, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lo_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_extractw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_extractw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatb, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatb_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lvsplath, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lvsplath_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_lvsplatw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_and_n, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_and_n_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_not, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_not_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_or_n, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_or_n_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2v2, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_scalar2v2_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_pred_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqh, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqh_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqw, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_shuffeqw_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsb, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsb_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsb_sat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsb_sat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsdiffw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsh_sat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsh_sat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsw_sat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vabsw_sat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddb_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddb_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat_dv, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddbsat_dv_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddcarry, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddcarry_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddcarrysat, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddcarrysat_128B, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbh, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbh_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbw, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddclbw_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddh_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddh_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddhw_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubh_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddubsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddububb_sat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddububb_sat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduhw_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat_dv, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vadduwsat_dv_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddw_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddw_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaddwsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_valignb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_valignb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_valignbi, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_valignbi_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vand, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vand_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandnqrt_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandqrt_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvnqv, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvnqv_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvqv, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvqv_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vandvrt_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslh_acc, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslh_acc_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslhv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslhv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslw_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslw_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslwv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vaslwv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrh_acc, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrh_acc_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbrndsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbrndsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhbsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubrndsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubrndsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhubsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrhv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasr_into, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasr_into_128B, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubrndsat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubrndsat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubsat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruhubsat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhrndsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhrndsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhsat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasruwuhsat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrw_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrw_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhrndsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhrndsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhrndsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhrndsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwuhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vasrwv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vassign, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vassign_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vassignp, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vassignp_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgb, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgb_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgbrnd, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgbrnd_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavghrnd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavghrnd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgubrnd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgubrnd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguhrnd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguhrnd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguw, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguw_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguwrnd, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavguwrnd_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgwrnd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vavgwrnd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vcl0h, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vcl0h_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vcl0w, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vcl0w_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vcombine, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vcombine_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vd0, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vd0_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdd0, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdd0_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealb4w, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealb4w_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealvdd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdealvdd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdelta, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdelta_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpybus_dv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhb_dv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhisat_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsat_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsuisat_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhsusat_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdmpyhvsat_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vdsaduh_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqb_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqh_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_veqw_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtb_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgth_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtub_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuh_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtuw_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_and, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_and_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_or, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_or_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_xor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vgtw_xor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vinsertwr, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vinsertwr_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlalignb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlalignb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlalignbi, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlalignbi_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrb, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrb_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrhv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrhv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrwv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlsrwv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlut4, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlut4_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvbi, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvbi_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_nm, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_nm_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracci, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvvb_oracci_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwhi, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwhi_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_nm, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_nm_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracci, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vlutvwh_oracci_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxb, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxb_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmaxw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminb, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminb_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vminw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabus_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabusv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabusv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu_acc, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuu_acc_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuuv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpabuuv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpahb_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpahhsat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpahhsat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhb_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhuhsat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpauhuhsat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpsuhuhsat, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpsuhuhsat_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybus_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybusv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpybv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh_64, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyewuh_64_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh_acc, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyh_acc_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsat_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsat_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsrs, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhsrs_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhss, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhss_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhus_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhvsrs, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyhvsrs_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyieoh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyieoh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewh_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewh_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiewuh_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyih_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyihb_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiowh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiowh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwb_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwh_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyiwub_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_64_acc, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_64_acc_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd_sacc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_rnd_sacc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_sacc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyowh_sacc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyub_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyubv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuh_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe_acc, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhe_acc_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmpyuhv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmux, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vmux_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgb, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgb_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnavgw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnormamth, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnormamth_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnormamtw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnormamtw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnot, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vnot_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackeb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackeb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackeh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackeh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackhb_sat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackhb_sat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackhub_sat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackhub_sat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackob, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackob_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackoh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackoh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackwh_sat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackwh_sat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackwuh_sat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpackwuh_sat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpopcounth, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vpopcounth_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqb, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqb_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqh, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqh_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqw, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vprefixqw_128B, "v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrdelta, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrdelta_128B, "v60,v62,v65,v66" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpybub_rtt, "v65" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpybub_rtt_128B, "v65" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpybub_rtt_acc, "v65" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpybub_rtt_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi_acc_128B, "v60,v62,v65" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybus_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusi_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybusv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpybv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubi_acc_128B, "v60,v62,v65,v66" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_rtt, "v65" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_rtt_128B, "v65" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_rtt_acc, "v65" },
     { Hexagon::BI__builtin_HEXAGON_V6_vrmpyub_rtt_acc_128B, "v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vror, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vror_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundhb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundhb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundhub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundhub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrounduhub, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrounduhub_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrounduwuh, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrounduwuh_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundwh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundwh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundwuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vroundwuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsathub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsathub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsatuwuh, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsatuwuh_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsatwh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsatwh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufeh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufeh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffeb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffeb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffob, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffob_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffvdd, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshuffvdd_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufoh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vshufoh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubb_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubb_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat_dv, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat_dv_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubcarry, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubcarry_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubh_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubh_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubhw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubhw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsububh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsububh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubububb_sat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubububb_sat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat_dv, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat_dv_128B, "v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubw, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubw_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubw_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubw_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat_dv, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat_dv_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vswap, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vswap_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb_acc, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb_acc_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackob, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackob_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackoh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackoh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackub, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackub_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackuh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vunpackuh_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vxor, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vxor_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vzb, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vzb_128B, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vzh, "v60,v62,v65" },
-    { Hexagon::BI__builtin_HEXAGON_V6_vzh_128B, "v60,v62,v65" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrmpyubv_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vror, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vror_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrotr, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrotr_128B, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundhb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundhb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundhub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundhub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrounduhub, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrounduhub_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrounduwuh, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrounduwuh_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundwh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundwh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundwuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vroundwuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vrsadubi_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsatdw, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsatdw_128B, "v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsathub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsathub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsatuwuh, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsatuwuh_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsatwh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsatwh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufeh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufeh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffeb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffeb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffob, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffob_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffvdd, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshuffvdd_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufoeh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufoh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vshufoh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubb_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubb_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat_dv, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubbsat_dv_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubcarry, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubcarry_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubh_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubh_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubhsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubhw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubhw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsububh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsububh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsububsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubububb_sat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubububb_sat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuhw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat_dv, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubuwsat_dv_128B, "v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubw, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubw_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubw_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubw_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat_dv, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vsubwsat_dv_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vswap, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vswap_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyb_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpybus_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb_acc, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vtmpyhb_acc_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackob, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackob_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackoh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackoh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackub, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackub_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackuh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vunpackuh_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vxor, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vxor_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vzb, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vzb_128B, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vzh, "v60,v62,v65,v66" },
+    { Hexagon::BI__builtin_HEXAGON_V6_vzh_128B, "v60,v62,v65,v66" },
   };
 
   // Sort the tables on first execution so we can binary search them.

Added: cfe/trunk/test/CodeGen/builtins-hexagon-v66-128B.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/builtins-hexagon-v66-128B.c?rev=348419&view=auto
==============================================================================
--- cfe/trunk/test/CodeGen/builtins-hexagon-v66-128B.c (added)
+++ cfe/trunk/test/CodeGen/builtins-hexagon-v66-128B.c Wed Dec  5 14:03:04 2018
@@ -0,0 +1,67 @@
+// RUN: %clang_cc1 -triple hexagon -target-cpu hexagonv66 -target-feature +hvxv66 -target-feature +hvx-length128b -emit-llvm -o - %s | FileCheck %s
+// REQUIRES: hexagon-registered-target
+
+typedef long HEXAGON_VecPred128 __attribute__((__vector_size__(128)))
+  __attribute__((aligned(128)));
+typedef long HEXAGON_Vect1024 __attribute__((__vector_size__(128)))
+  __attribute__((aligned(128)));
+typedef long HEXAGON_Vect2048 __attribute__((__vector_size__(256)))
+  __attribute__((aligned(256)));
+
+// CHECK-LABEL: @test1
+// CHECK: call <32 x i32> @llvm.hexagon.V6.vaddcarrysat.128B(<32 x i32> %{{[0-9]+}}, <32 x i32> %{{[0-9]+}}, <1024 x i1> %{{[0-9]+}})
+HEXAGON_Vect1024 test1(void *in, void *out) {
+  HEXAGON_Vect1024 v1, v2;
+  HEXAGON_Vect1024 *p;
+  HEXAGON_VecPred128 q1;
+
+  p = (HEXAGON_Vect1024 *)in;
+  v1 = *p++;
+  v2 = *p++;
+  q1 = *p++;
+
+  return __builtin_HEXAGON_V6_vaddcarrysat_128B(v1, v2, q1);
+}
+
+// CHECK-LABEL: @test26
+// CHECK: call <32 x i32> @llvm.hexagon.V6.vrotr.128B(<32 x i32> %{{[0-9]+}}, <32 x i32> %{{[0-9]+}})
+HEXAGON_Vect1024 test26(void *in, void *out) {
+  HEXAGON_Vect1024 v1, v2;
+  HEXAGON_Vect1024 *p;
+
+  p = (HEXAGON_Vect1024 *)in;
+  v1 = *p++;
+  v2 = *p++;
+
+  return __builtin_HEXAGON_V6_vrotr_128B(v1, v2);
+}
+
+// CHECK-LABEL: @test27
+// CHECK: call <32 x i32> @llvm.hexagon.V6.vsatdw.128B(<32 x i32> %{{[0-9]+}}, <32 x i32> %{{[0-9]+}})
+HEXAGON_Vect1024 test27(void *in, void *out) {
+  HEXAGON_Vect1024 v1, v2;
+  HEXAGON_Vect1024 *p;
+
+  p = (HEXAGON_Vect1024 *)in;
+  v1 = *p++;
+  v2 = *p++;
+
+  return __builtin_HEXAGON_V6_vsatdw_128B(v1, v2);
+}
+
+// CHECK-LABEL: @test28
+// CHECK: call <64 x i32> @llvm.hexagon.V6.vasr.into.128B(<64 x i32> %{{[0-9]+}}, <32 x i32> %{{[0-9]+}}, <32 x i32> %{{[0-9]+}})
+HEXAGON_Vect2048 test28(void *in1, void *in2, void *out) {
+  HEXAGON_Vect1024 v1, v2;
+  HEXAGON_Vect1024 *p1;
+  HEXAGON_Vect2048 *p2;
+  HEXAGON_Vect2048 vr;
+
+  p1 = (HEXAGON_Vect1024 *)in1;
+  v1 = *p1++;
+  v2 = *p1++;
+  p2 = (HEXAGON_Vect2048 *)in2;
+  vr = *p2;
+
+  return __builtin_HEXAGON_V6_vasr_into_128B(vr, v1, v2);
+}

Added: cfe/trunk/test/CodeGen/builtins-hexagon-v66.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/builtins-hexagon-v66.c?rev=348419&view=auto
==============================================================================
--- cfe/trunk/test/CodeGen/builtins-hexagon-v66.c (added)
+++ cfe/trunk/test/CodeGen/builtins-hexagon-v66.c Wed Dec  5 14:03:04 2018
@@ -0,0 +1,91 @@
+// RUN: %clang_cc1 -triple hexagon -target-cpu hexagonv66 -target-feature +hvxv66 -target-feature +hvx-length64b -emit-llvm -o - %s | FileCheck %s
+// REQUIRES: hexagon-registered-target
+
+// CHECK-LABEL: @test1
+// CHECK: call i32 @llvm.hexagon.M2.mnaci(i32 %0, i32 %1, i32 %2)
+int test1(int rx, int rs, int rt) {
+  return __builtin_HEXAGON_M2_mnaci(rx, rs, rt);
+}
+
+// CHECK-LABEL: @test2
+// CHECK: call double @llvm.hexagon.F2.dfadd(double %0, double %1)
+double test2(double rss, double rtt) {
+  return __builtin_HEXAGON_F2_dfadd(rss, rtt);
+}
+
+// CHECK-LABEL: @test3
+// CHECK: call double @llvm.hexagon.F2.dfsub(double %0, double %1)
+double test3(double rss, double rtt) {
+  return __builtin_HEXAGON_F2_dfsub(rss, rtt);
+}
+
+// CHECK-LABEL: @test4
+// CHECK: call i32 @llvm.hexagon.S2.mask(i32 1, i32 2)
+int test4() {
+  return __builtin_HEXAGON_S2_mask(1, 2);
+}
+
+typedef long HEXAGON_VecPred64 __attribute__((__vector_size__(64)))
+  __attribute__((aligned(64)));
+typedef long HEXAGON_Vect512 __attribute__((__vector_size__(64)))
+  __attribute__((aligned(64)));
+typedef long HEXAGON_Vect1024 __attribute__((__vector_size__(128)))
+  __attribute__((aligned(128)));
+
+// CHECK-LABEL: @test5
+// CHECK: call <16 x i32> @llvm.hexagon.V6.vaddcarrysat(<16 x i32> %{{[0-9]+}}, <16 x i32> %{{[0-9]+}}, <512 x i1> %{{[0-9]+}})
+HEXAGON_Vect512 test5(void *in, void *out) {
+  HEXAGON_Vect512 v1, v2;
+  HEXAGON_Vect512 *p;
+  HEXAGON_VecPred64 q1;
+
+  p = (HEXAGON_Vect512 *)in;
+  v1 = *p++;
+  v2 = *p++;
+  q1 = *p++;
+
+  return __builtin_HEXAGON_V6_vaddcarrysat(v1, v2, q1);
+}
+
+// CHECK-LABEL: @test6
+// CHECK: call <16 x i32> @llvm.hexagon.V6.vrotr(<16 x i32> %{{[0-9]+}}, <16 x i32> %{{[0-9]+}})
+HEXAGON_Vect512 test6(void *in, void *out) {
+  HEXAGON_Vect512 v1, v2;
+  HEXAGON_Vect512 *p;
+
+  p = (HEXAGON_Vect512 *)in;
+  v1 = *p++;
+  v2 = *p++;
+
+  return __builtin_HEXAGON_V6_vrotr(v1, v2);
+}
+
+// CHECK-LABEL: @test7
+// CHECK: call <16 x i32> @llvm.hexagon.V6.vsatdw(<16 x i32> %{{[0-9]+}}, <16 x i32> %{{[0-9]+}})
+HEXAGON_Vect512 test7(void *in, void *out) {
+  HEXAGON_Vect512 v1, v2;
+  HEXAGON_Vect512 *p;
+
+  p = (HEXAGON_Vect512 *)in;
+  v1 = *p++;
+  v2 = *p++;
+
+  return __builtin_HEXAGON_V6_vsatdw(v1, v2);
+}
+
+// CHECK-LABEL: @test8
+// CHECK: call <32 x i32> @llvm.hexagon.V6.vasr.into(<32 x i32> %{{[0-9]+}}, <16 x i32> %{{[0-9]+}}, <16 x i32> %{{[0-9]+}})
+HEXAGON_Vect1024 test8(void *in1, void *in2, void *out) {
+  HEXAGON_Vect512 v1, v2;
+  HEXAGON_Vect512 *p1;
+  HEXAGON_Vect1024 *p2;
+  HEXAGON_Vect1024 vr;
+
+  p1 = (HEXAGON_Vect512 *)in1;
+  v1 = *p1++;
+  v2 = *p1++;
+  p2 = (HEXAGON_Vect1024 *)in2;
+  vr = *p2;
+
+  return __builtin_HEXAGON_V6_vasr_into(vr, v1, v2);
+}




More information about the cfe-commits mailing list