1239313Sdim//===-- BuiltinsMips.def - Mips Builtin function database --------*- C++ -*-==// 2239313Sdim// 3239313Sdim// The LLVM Compiler Infrastructure 4239313Sdim// 5239313Sdim// This file is distributed under the University of Illinois Open Source 6239313Sdim// License. See LICENSE.TXT for details. 7239313Sdim// 8239313Sdim//===----------------------------------------------------------------------===// 9239313Sdim// 10239313Sdim// This file defines the MIPS-specific builtin function database. Users of 11239313Sdim// this file must define the BUILTIN macro to make use of this information. 12239313Sdim// 13239313Sdim//===----------------------------------------------------------------------===// 14239313Sdim 15239313Sdim// The format of this database matches clang/Basic/Builtins.def. 16239313Sdim 17245431Sdim// MIPS DSP Rev 1 18245431Sdim 19239313Sdim// Add/subtract with optional saturation 20239313SdimBUILTIN(__builtin_mips_addu_qb, "V4ScV4ScV4Sc", "n") 21239313SdimBUILTIN(__builtin_mips_addu_s_qb, "V4ScV4ScV4Sc", "n") 22239313SdimBUILTIN(__builtin_mips_subu_qb, "V4ScV4ScV4Sc", "n") 23239313SdimBUILTIN(__builtin_mips_subu_s_qb, "V4ScV4ScV4Sc", "n") 24239313Sdim 25239313SdimBUILTIN(__builtin_mips_addq_ph, "V2sV2sV2s", "n") 26239313SdimBUILTIN(__builtin_mips_addq_s_ph, "V2sV2sV2s", "n") 27239313SdimBUILTIN(__builtin_mips_subq_ph, "V2sV2sV2s", "n") 28239313SdimBUILTIN(__builtin_mips_subq_s_ph, "V2sV2sV2s", "n") 29239313Sdim 30239313SdimBUILTIN(__builtin_mips_madd, "LLiLLiii", "nc") 31239313SdimBUILTIN(__builtin_mips_maddu, "LLiLLiUiUi", "nc") 32239313SdimBUILTIN(__builtin_mips_msub, "LLiLLiii", "nc") 33239313SdimBUILTIN(__builtin_mips_msubu, "LLiLLiUiUi", "nc") 34239313Sdim 35239313SdimBUILTIN(__builtin_mips_addq_s_w, "iii", "n") 36239313SdimBUILTIN(__builtin_mips_subq_s_w, "iii", "n") 37239313Sdim 38239313SdimBUILTIN(__builtin_mips_addsc, "iii", "n") 39239313SdimBUILTIN(__builtin_mips_addwc, "iii", "n") 40239313Sdim 41239313SdimBUILTIN(__builtin_mips_modsub, "iii", "nc") 42239313Sdim 43239313SdimBUILTIN(__builtin_mips_raddu_w_qb, "iV4Sc", "nc") 44239313Sdim 45239313SdimBUILTIN(__builtin_mips_absq_s_ph, "V2sV2s", "n") 46239313SdimBUILTIN(__builtin_mips_absq_s_w, "ii", "n") 47239313Sdim 48239313SdimBUILTIN(__builtin_mips_precrq_qb_ph, "V4ScV2sV2s", "nc") 49239313SdimBUILTIN(__builtin_mips_precrqu_s_qb_ph, "V4ScV2sV2s", "n") 50239313SdimBUILTIN(__builtin_mips_precrq_ph_w, "V2sii", "nc") 51239313SdimBUILTIN(__builtin_mips_precrq_rs_ph_w, "V2sii", "n") 52239313SdimBUILTIN(__builtin_mips_preceq_w_phl, "iV2s", "nc") 53239313SdimBUILTIN(__builtin_mips_preceq_w_phr, "iV2s", "nc") 54239313SdimBUILTIN(__builtin_mips_precequ_ph_qbl, "V2sV4Sc", "nc") 55239313SdimBUILTIN(__builtin_mips_precequ_ph_qbr, "V2sV4Sc", "nc") 56239313SdimBUILTIN(__builtin_mips_precequ_ph_qbla, "V2sV4Sc", "nc") 57239313SdimBUILTIN(__builtin_mips_precequ_ph_qbra, "V2sV4Sc", "nc") 58239313SdimBUILTIN(__builtin_mips_preceu_ph_qbl, "V2sV4Sc", "nc") 59239313SdimBUILTIN(__builtin_mips_preceu_ph_qbr, "V2sV4Sc", "nc") 60239313SdimBUILTIN(__builtin_mips_preceu_ph_qbla, "V2sV4Sc", "nc") 61239313SdimBUILTIN(__builtin_mips_preceu_ph_qbra, "V2sV4Sc", "nc") 62239313Sdim 63239313SdimBUILTIN(__builtin_mips_shll_qb, "V4ScV4Sci", "n") 64239313SdimBUILTIN(__builtin_mips_shrl_qb, "V4ScV4Sci", "nc") 65239313SdimBUILTIN(__builtin_mips_shll_ph, "V2sV2si", "n") 66239313SdimBUILTIN(__builtin_mips_shll_s_ph, "V2sV2si", "n") 67239313SdimBUILTIN(__builtin_mips_shra_ph, "V2sV2si", "nc") 68239313SdimBUILTIN(__builtin_mips_shra_r_ph, "V2sV2si", "nc") 69239313SdimBUILTIN(__builtin_mips_shll_s_w, "iii", "n") 70239313SdimBUILTIN(__builtin_mips_shra_r_w, "iii", "nc") 71239313SdimBUILTIN(__builtin_mips_shilo, "LLiLLii", "nc") 72239313Sdim 73239313SdimBUILTIN(__builtin_mips_muleu_s_ph_qbl, "V2sV4ScV2s", "n") 74239313SdimBUILTIN(__builtin_mips_muleu_s_ph_qbr, "V2sV4ScV2s", "n") 75239313SdimBUILTIN(__builtin_mips_mulq_rs_ph, "V2sV2sV2s", "n") 76239313SdimBUILTIN(__builtin_mips_muleq_s_w_phl, "iV2sV2s", "n") 77239313SdimBUILTIN(__builtin_mips_muleq_s_w_phr, "iV2sV2s", "n") 78239313SdimBUILTIN(__builtin_mips_mulsaq_s_w_ph, "LLiLLiV2sV2s", "n") 79239313SdimBUILTIN(__builtin_mips_maq_s_w_phl, "LLiLLiV2sV2s", "n") 80239313SdimBUILTIN(__builtin_mips_maq_s_w_phr, "LLiLLiV2sV2s", "n") 81239313SdimBUILTIN(__builtin_mips_maq_sa_w_phl, "LLiLLiV2sV2s", "n") 82239313SdimBUILTIN(__builtin_mips_maq_sa_w_phr, "LLiLLiV2sV2s", "n") 83239313SdimBUILTIN(__builtin_mips_mult, "LLiii", "nc") 84239313SdimBUILTIN(__builtin_mips_multu, "LLiUiUi", "nc") 85239313Sdim 86239313SdimBUILTIN(__builtin_mips_dpau_h_qbl, "LLiLLiV4ScV4Sc", "nc") 87239313SdimBUILTIN(__builtin_mips_dpau_h_qbr, "LLiLLiV4ScV4Sc", "nc") 88239313SdimBUILTIN(__builtin_mips_dpsu_h_qbl, "LLiLLiV4ScV4Sc", "nc") 89239313SdimBUILTIN(__builtin_mips_dpsu_h_qbr, "LLiLLiV4ScV4Sc", "nc") 90239313SdimBUILTIN(__builtin_mips_dpaq_s_w_ph, "LLiLLiV2sV2s", "n") 91239313SdimBUILTIN(__builtin_mips_dpsq_s_w_ph, "LLiLLiV2sV2s", "n") 92239313SdimBUILTIN(__builtin_mips_dpaq_sa_l_w, "LLiLLiii", "n") 93239313SdimBUILTIN(__builtin_mips_dpsq_sa_l_w, "LLiLLiii", "n") 94239313Sdim 95239313SdimBUILTIN(__builtin_mips_cmpu_eq_qb, "vV4ScV4Sc", "n") 96239313SdimBUILTIN(__builtin_mips_cmpu_lt_qb, "vV4ScV4Sc", "n") 97239313SdimBUILTIN(__builtin_mips_cmpu_le_qb, "vV4ScV4Sc", "n") 98239313SdimBUILTIN(__builtin_mips_cmpgu_eq_qb, "iV4ScV4Sc", "n") 99239313SdimBUILTIN(__builtin_mips_cmpgu_lt_qb, "iV4ScV4Sc", "n") 100239313SdimBUILTIN(__builtin_mips_cmpgu_le_qb, "iV4ScV4Sc", "n") 101239313SdimBUILTIN(__builtin_mips_cmp_eq_ph, "vV2sV2s", "n") 102239313SdimBUILTIN(__builtin_mips_cmp_lt_ph, "vV2sV2s", "n") 103239313SdimBUILTIN(__builtin_mips_cmp_le_ph, "vV2sV2s", "n") 104239313Sdim 105239313SdimBUILTIN(__builtin_mips_extr_s_h, "iLLii", "n") 106239313SdimBUILTIN(__builtin_mips_extr_w, "iLLii", "n") 107239313SdimBUILTIN(__builtin_mips_extr_rs_w, "iLLii", "n") 108239313SdimBUILTIN(__builtin_mips_extr_r_w, "iLLii", "n") 109239313SdimBUILTIN(__builtin_mips_extp, "iLLii", "n") 110239313SdimBUILTIN(__builtin_mips_extpdp, "iLLii", "n") 111239313Sdim 112239313SdimBUILTIN(__builtin_mips_wrdsp, "viIi", "n") 113239313SdimBUILTIN(__builtin_mips_rddsp, "iIi", "n") 114239313SdimBUILTIN(__builtin_mips_insv, "iii", "n") 115239313SdimBUILTIN(__builtin_mips_bitrev, "ii", "nc") 116239313SdimBUILTIN(__builtin_mips_packrl_ph, "V2sV2sV2s", "nc") 117239313SdimBUILTIN(__builtin_mips_repl_qb, "V4Sci", "nc") 118239313SdimBUILTIN(__builtin_mips_repl_ph, "V2si", "nc") 119239313SdimBUILTIN(__builtin_mips_pick_qb, "V4ScV4ScV4Sc", "n") 120239313SdimBUILTIN(__builtin_mips_pick_ph, "V2sV2sV2s", "n") 121239313SdimBUILTIN(__builtin_mips_mthlip, "LLiLLii", "n") 122239313SdimBUILTIN(__builtin_mips_bposge32, "i", "n") 123239313SdimBUILTIN(__builtin_mips_lbux, "iv*i", "n") 124239313SdimBUILTIN(__builtin_mips_lhx, "iv*i", "n") 125239313SdimBUILTIN(__builtin_mips_lwx, "iv*i", "n") 126239313Sdim 127245431Sdim// MIPS DSP Rev 2 128245431Sdim 129245431SdimBUILTIN(__builtin_mips_absq_s_qb, "V4ScV4Sc", "n") 130245431Sdim 131245431SdimBUILTIN(__builtin_mips_addqh_ph, "V2sV2sV2s", "nc") 132245431SdimBUILTIN(__builtin_mips_addqh_r_ph, "V2sV2sV2s", "nc") 133245431SdimBUILTIN(__builtin_mips_addqh_w, "iii", "nc") 134245431SdimBUILTIN(__builtin_mips_addqh_r_w, "iii", "nc") 135245431Sdim 136245431SdimBUILTIN(__builtin_mips_addu_ph, "V2sV2sV2s", "n") 137245431SdimBUILTIN(__builtin_mips_addu_s_ph, "V2sV2sV2s", "n") 138245431Sdim 139245431SdimBUILTIN(__builtin_mips_adduh_qb, "V4ScV4ScV4Sc", "nc") 140245431SdimBUILTIN(__builtin_mips_adduh_r_qb, "V4ScV4ScV4Sc", "nc") 141245431Sdim 142245431SdimBUILTIN(__builtin_mips_append, "iiiIi", "nc") 143245431SdimBUILTIN(__builtin_mips_balign, "iiiIi", "nc") 144245431Sdim 145245431SdimBUILTIN(__builtin_mips_cmpgdu_eq_qb, "iV4ScV4Sc", "n") 146245431SdimBUILTIN(__builtin_mips_cmpgdu_lt_qb, "iV4ScV4Sc", "n") 147245431SdimBUILTIN(__builtin_mips_cmpgdu_le_qb, "iV4ScV4Sc", "n") 148245431Sdim 149245431SdimBUILTIN(__builtin_mips_dpa_w_ph, "LLiLLiV2sV2s", "nc") 150245431SdimBUILTIN(__builtin_mips_dps_w_ph, "LLiLLiV2sV2s", "nc") 151245431Sdim 152245431SdimBUILTIN(__builtin_mips_dpaqx_s_w_ph, "LLiLLiV2sV2s", "n") 153245431SdimBUILTIN(__builtin_mips_dpaqx_sa_w_ph, "LLiLLiV2sV2s", "n") 154245431SdimBUILTIN(__builtin_mips_dpax_w_ph, "LLiLLiV2sV2s", "nc") 155245431SdimBUILTIN(__builtin_mips_dpsx_w_ph, "LLiLLiV2sV2s", "nc") 156245431SdimBUILTIN(__builtin_mips_dpsqx_s_w_ph, "LLiLLiV2sV2s", "n") 157245431SdimBUILTIN(__builtin_mips_dpsqx_sa_w_ph, "LLiLLiV2sV2s", "n") 158245431Sdim 159245431SdimBUILTIN(__builtin_mips_mul_ph, "V2sV2sV2s", "n") 160245431SdimBUILTIN(__builtin_mips_mul_s_ph, "V2sV2sV2s", "n") 161245431Sdim 162245431SdimBUILTIN(__builtin_mips_mulq_rs_w, "iii", "n") 163245431SdimBUILTIN(__builtin_mips_mulq_s_ph, "V2sV2sV2s", "n") 164245431SdimBUILTIN(__builtin_mips_mulq_s_w, "iii", "n") 165245431SdimBUILTIN(__builtin_mips_mulsa_w_ph, "LLiLLiV2sV2s", "nc") 166245431Sdim 167245431SdimBUILTIN(__builtin_mips_precr_qb_ph, "V4ScV2sV2s", "n") 168245431SdimBUILTIN(__builtin_mips_precr_sra_ph_w, "V2siiIi", "nc") 169245431SdimBUILTIN(__builtin_mips_precr_sra_r_ph_w, "V2siiIi", "nc") 170245431Sdim 171245431SdimBUILTIN(__builtin_mips_prepend, "iiiIi", "nc") 172245431Sdim 173245431SdimBUILTIN(__builtin_mips_shra_qb, "V4ScV4Sci", "nc") 174245431SdimBUILTIN(__builtin_mips_shra_r_qb, "V4ScV4Sci", "nc") 175245431SdimBUILTIN(__builtin_mips_shrl_ph, "V2sV2si", "nc") 176245431Sdim 177245431SdimBUILTIN(__builtin_mips_subqh_ph, "V2sV2sV2s", "nc") 178245431SdimBUILTIN(__builtin_mips_subqh_r_ph, "V2sV2sV2s", "nc") 179245431SdimBUILTIN(__builtin_mips_subqh_w, "iii", "nc") 180245431SdimBUILTIN(__builtin_mips_subqh_r_w, "iii", "nc") 181245431Sdim 182245431SdimBUILTIN(__builtin_mips_subu_ph, "V2sV2sV2s", "n") 183245431SdimBUILTIN(__builtin_mips_subu_s_ph, "V2sV2sV2s", "n") 184245431Sdim 185245431SdimBUILTIN(__builtin_mips_subuh_qb, "V4ScV4ScV4Sc", "nc") 186245431SdimBUILTIN(__builtin_mips_subuh_r_qb, "V4ScV4ScV4Sc", "nc") 187245431Sdim 188263509Sdim// MIPS MSA 189263509Sdim 190263509SdimBUILTIN(__builtin_msa_add_a_b, "V16ScV16ScV16Sc", "nc") 191263509SdimBUILTIN(__builtin_msa_add_a_h, "V8SsV8SsV8Ss", "nc") 192263509SdimBUILTIN(__builtin_msa_add_a_w, "V4SiV4SiV4Si", "nc") 193263509SdimBUILTIN(__builtin_msa_add_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 194263509Sdim 195263509SdimBUILTIN(__builtin_msa_adds_a_b, "V16ScV16ScV16Sc", "nc") 196263509SdimBUILTIN(__builtin_msa_adds_a_h, "V8SsV8SsV8Ss", "nc") 197263509SdimBUILTIN(__builtin_msa_adds_a_w, "V4SiV4SiV4Si", "nc") 198263509SdimBUILTIN(__builtin_msa_adds_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 199263509Sdim 200263509SdimBUILTIN(__builtin_msa_adds_s_b, "V16ScV16ScV16Sc", "nc") 201263509SdimBUILTIN(__builtin_msa_adds_s_h, "V8SsV8SsV8Ss", "nc") 202263509SdimBUILTIN(__builtin_msa_adds_s_w, "V4SiV4SiV4Si", "nc") 203263509SdimBUILTIN(__builtin_msa_adds_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 204263509Sdim 205263509SdimBUILTIN(__builtin_msa_adds_u_b, "V16UcV16UcV16Uc", "nc") 206263509SdimBUILTIN(__builtin_msa_adds_u_h, "V8UsV8UsV8Us", "nc") 207263509SdimBUILTIN(__builtin_msa_adds_u_w, "V4UiV4UiV4Ui", "nc") 208263509SdimBUILTIN(__builtin_msa_adds_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 209263509Sdim 210263509SdimBUILTIN(__builtin_msa_addv_b, "V16cV16cV16c", "nc") 211263509SdimBUILTIN(__builtin_msa_addv_h, "V8sV8sV8s", "nc") 212263509SdimBUILTIN(__builtin_msa_addv_w, "V4iV4iV4i", "nc") 213263509SdimBUILTIN(__builtin_msa_addv_d, "V2LLiV2LLiV2LLi", "nc") 214263509Sdim 215263509SdimBUILTIN(__builtin_msa_addvi_b, "V16cV16cIUi", "nc") 216263509SdimBUILTIN(__builtin_msa_addvi_h, "V8sV8sIUi", "nc") 217263509SdimBUILTIN(__builtin_msa_addvi_w, "V4iV4iIUi", "nc") 218263509SdimBUILTIN(__builtin_msa_addvi_d, "V2LLiV2LLiIUi", "nc") 219263509Sdim 220263509SdimBUILTIN(__builtin_msa_and_v, "V16UcV16UcV16Uc", "nc") 221263509Sdim 222263509SdimBUILTIN(__builtin_msa_andi_b, "V16UcV16UcIUi", "nc") 223263509Sdim 224263509SdimBUILTIN(__builtin_msa_asub_s_b, "V16ScV16ScV16Sc", "nc") 225263509SdimBUILTIN(__builtin_msa_asub_s_h, "V8SsV8SsV8Ss", "nc") 226263509SdimBUILTIN(__builtin_msa_asub_s_w, "V4SiV4SiV4Si", "nc") 227263509SdimBUILTIN(__builtin_msa_asub_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 228263509Sdim 229263509SdimBUILTIN(__builtin_msa_asub_u_b, "V16UcV16UcV16Uc", "nc") 230263509SdimBUILTIN(__builtin_msa_asub_u_h, "V8UsV8UsV8Us", "nc") 231263509SdimBUILTIN(__builtin_msa_asub_u_w, "V4UiV4UiV4Ui", "nc") 232263509SdimBUILTIN(__builtin_msa_asub_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 233263509Sdim 234263509SdimBUILTIN(__builtin_msa_ave_s_b, "V16ScV16ScV16Sc", "nc") 235263509SdimBUILTIN(__builtin_msa_ave_s_h, "V8SsV8SsV8Ss", "nc") 236263509SdimBUILTIN(__builtin_msa_ave_s_w, "V4SiV4SiV4Si", "nc") 237263509SdimBUILTIN(__builtin_msa_ave_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 238263509Sdim 239263509SdimBUILTIN(__builtin_msa_ave_u_b, "V16UcV16UcV16Uc", "nc") 240263509SdimBUILTIN(__builtin_msa_ave_u_h, "V8UsV8UsV8Us", "nc") 241263509SdimBUILTIN(__builtin_msa_ave_u_w, "V4UiV4UiV4Ui", "nc") 242263509SdimBUILTIN(__builtin_msa_ave_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 243263509Sdim 244263509SdimBUILTIN(__builtin_msa_aver_s_b, "V16ScV16ScV16Sc", "nc") 245263509SdimBUILTIN(__builtin_msa_aver_s_h, "V8SsV8SsV8Ss", "nc") 246263509SdimBUILTIN(__builtin_msa_aver_s_w, "V4SiV4SiV4Si", "nc") 247263509SdimBUILTIN(__builtin_msa_aver_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 248263509Sdim 249263509SdimBUILTIN(__builtin_msa_aver_u_b, "V16UcV16UcV16Uc", "nc") 250263509SdimBUILTIN(__builtin_msa_aver_u_h, "V8UsV8UsV8Us", "nc") 251263509SdimBUILTIN(__builtin_msa_aver_u_w, "V4UiV4UiV4Ui", "nc") 252263509SdimBUILTIN(__builtin_msa_aver_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 253263509Sdim 254263509SdimBUILTIN(__builtin_msa_bclr_b, "V16UcV16UcV16Uc", "nc") 255263509SdimBUILTIN(__builtin_msa_bclr_h, "V8UsV8UsV8Us", "nc") 256263509SdimBUILTIN(__builtin_msa_bclr_w, "V4UiV4UiV4Ui", "nc") 257263509SdimBUILTIN(__builtin_msa_bclr_d, "V2ULLiV2ULLiV2ULLi", "nc") 258263509Sdim 259263509SdimBUILTIN(__builtin_msa_bclri_b, "V16UcV16UcIUi", "nc") 260263509SdimBUILTIN(__builtin_msa_bclri_h, "V8UsV8UsIUi", "nc") 261263509SdimBUILTIN(__builtin_msa_bclri_w, "V4UiV4UiIUi", "nc") 262263509SdimBUILTIN(__builtin_msa_bclri_d, "V2ULLiV2ULLiIUi", "nc") 263263509Sdim 264263509SdimBUILTIN(__builtin_msa_binsl_b, "V16UcV16UcV16UcV16Uc", "nc") 265263509SdimBUILTIN(__builtin_msa_binsl_h, "V8UsV8UsV8UsV8Us", "nc") 266263509SdimBUILTIN(__builtin_msa_binsl_w, "V4UiV4UiV4UiV4Ui", "nc") 267263509SdimBUILTIN(__builtin_msa_binsl_d, "V2ULLiV2ULLiV2ULLiV2ULLi", "nc") 268263509Sdim 269263509SdimBUILTIN(__builtin_msa_binsli_b, "V16UcV16UcV16UcIUi", "nc") 270263509SdimBUILTIN(__builtin_msa_binsli_h, "V8UsV8UsV8UsIUi", "nc") 271263509SdimBUILTIN(__builtin_msa_binsli_w, "V4UiV4UiV4UiIUi", "nc") 272263509SdimBUILTIN(__builtin_msa_binsli_d, "V2ULLiV2ULLiV2ULLiIUi", "nc") 273263509Sdim 274263509SdimBUILTIN(__builtin_msa_binsr_b, "V16UcV16UcV16UcV16Uc", "nc") 275263509SdimBUILTIN(__builtin_msa_binsr_h, "V8UsV8UsV8UsV8Us", "nc") 276263509SdimBUILTIN(__builtin_msa_binsr_w, "V4UiV4UiV4UiV4Ui", "nc") 277263509SdimBUILTIN(__builtin_msa_binsr_d, "V2ULLiV2ULLiV2ULLiV2ULLi", "nc") 278263509Sdim 279263509SdimBUILTIN(__builtin_msa_binsri_b, "V16UcV16UcV16UcIUi", "nc") 280263509SdimBUILTIN(__builtin_msa_binsri_h, "V8UsV8UsV8UsIUi", "nc") 281263509SdimBUILTIN(__builtin_msa_binsri_w, "V4UiV4UiV4UiIUi", "nc") 282263509SdimBUILTIN(__builtin_msa_binsri_d, "V2ULLiV2ULLiV2ULLiIUi", "nc") 283263509Sdim 284263509SdimBUILTIN(__builtin_msa_bmnz_v, "V16UcV16UcV16UcV16Uc", "nc") 285263509Sdim 286263509SdimBUILTIN(__builtin_msa_bmnzi_b, "V16UcV16UcV16UcIUi", "nc") 287263509Sdim 288263509SdimBUILTIN(__builtin_msa_bmz_v, "V16UcV16UcV16UcV16Uc", "nc") 289263509Sdim 290263509SdimBUILTIN(__builtin_msa_bmzi_b, "V16UcV16UcV16UcIUi", "nc") 291263509Sdim 292263509SdimBUILTIN(__builtin_msa_bneg_b, "V16UcV16UcV16Uc", "nc") 293263509SdimBUILTIN(__builtin_msa_bneg_h, "V8UsV8UsV8Us", "nc") 294263509SdimBUILTIN(__builtin_msa_bneg_w, "V4UiV4UiV4Ui", "nc") 295263509SdimBUILTIN(__builtin_msa_bneg_d, "V2ULLiV2ULLiV2ULLi", "nc") 296263509Sdim 297263509SdimBUILTIN(__builtin_msa_bnegi_b, "V16UcV16UcIUi", "nc") 298263509SdimBUILTIN(__builtin_msa_bnegi_h, "V8UsV8UsIUi", "nc") 299263509SdimBUILTIN(__builtin_msa_bnegi_w, "V4UiV4UiIUi", "nc") 300263509SdimBUILTIN(__builtin_msa_bnegi_d, "V2ULLiV2ULLiIUi", "nc") 301263509Sdim 302263509SdimBUILTIN(__builtin_msa_bnz_b, "iV16Uc", "nc") 303263509SdimBUILTIN(__builtin_msa_bnz_h, "iV8Us", "nc") 304263509SdimBUILTIN(__builtin_msa_bnz_w, "iV4Ui", "nc") 305263509SdimBUILTIN(__builtin_msa_bnz_d, "iV2ULLi", "nc") 306263509Sdim 307263509SdimBUILTIN(__builtin_msa_bnz_v, "iV16Uc", "nc") 308263509Sdim 309263509SdimBUILTIN(__builtin_msa_bsel_v, "V16UcV16UcV16UcV16Uc", "nc") 310263509Sdim 311263509SdimBUILTIN(__builtin_msa_bseli_b, "V16UcV16UcV16UcIUi", "nc") 312263509Sdim 313263509SdimBUILTIN(__builtin_msa_bset_b, "V16UcV16UcV16Uc", "nc") 314263509SdimBUILTIN(__builtin_msa_bset_h, "V8UsV8UsV8Us", "nc") 315263509SdimBUILTIN(__builtin_msa_bset_w, "V4UiV4UiV4Ui", "nc") 316263509SdimBUILTIN(__builtin_msa_bset_d, "V2ULLiV2ULLiV2ULLi", "nc") 317263509Sdim 318263509SdimBUILTIN(__builtin_msa_bseti_b, "V16UcV16UcIUi", "nc") 319263509SdimBUILTIN(__builtin_msa_bseti_h, "V8UsV8UsIUi", "nc") 320263509SdimBUILTIN(__builtin_msa_bseti_w, "V4UiV4UiIUi", "nc") 321263509SdimBUILTIN(__builtin_msa_bseti_d, "V2ULLiV2ULLiIUi", "nc") 322263509Sdim 323263509SdimBUILTIN(__builtin_msa_bz_b, "iV16Uc", "nc") 324263509SdimBUILTIN(__builtin_msa_bz_h, "iV8Us", "nc") 325263509SdimBUILTIN(__builtin_msa_bz_w, "iV4Ui", "nc") 326263509SdimBUILTIN(__builtin_msa_bz_d, "iV2ULLi", "nc") 327263509Sdim 328263509SdimBUILTIN(__builtin_msa_bz_v, "iV16Uc", "nc") 329263509Sdim 330263509SdimBUILTIN(__builtin_msa_ceq_b, "V16ScV16ScV16Sc", "nc") 331263509SdimBUILTIN(__builtin_msa_ceq_h, "V8SsV8SsV8Ss", "nc") 332263509SdimBUILTIN(__builtin_msa_ceq_w, "V4SiV4SiV4Si", "nc") 333263509SdimBUILTIN(__builtin_msa_ceq_d, "V2SLLiV2SLLiV2SLLi", "nc") 334263509Sdim 335263509SdimBUILTIN(__builtin_msa_ceqi_b, "V16ScV16ScISi", "nc") 336263509SdimBUILTIN(__builtin_msa_ceqi_h, "V8SsV8SsISi", "nc") 337263509SdimBUILTIN(__builtin_msa_ceqi_w, "V4SiV4SiISi", "nc") 338263509SdimBUILTIN(__builtin_msa_ceqi_d, "V2SLLiV2SLLiISi", "nc") 339263509Sdim 340263509SdimBUILTIN(__builtin_msa_cfcmsa, "iIi", "n") 341263509Sdim 342263509SdimBUILTIN(__builtin_msa_cle_s_b, "V16ScV16ScV16Sc", "nc") 343263509SdimBUILTIN(__builtin_msa_cle_s_h, "V8SsV8SsV8Ss", "nc") 344263509SdimBUILTIN(__builtin_msa_cle_s_w, "V4SiV4SiV4Si", "nc") 345263509SdimBUILTIN(__builtin_msa_cle_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 346263509Sdim 347263509SdimBUILTIN(__builtin_msa_cle_u_b, "V16ScV16UcV16Uc", "nc") 348263509SdimBUILTIN(__builtin_msa_cle_u_h, "V8SsV8UsV8Us", "nc") 349263509SdimBUILTIN(__builtin_msa_cle_u_w, "V4SiV4UiV4Ui", "nc") 350263509SdimBUILTIN(__builtin_msa_cle_u_d, "V2SLLiV2ULLiV2ULLi", "nc") 351263509Sdim 352263509SdimBUILTIN(__builtin_msa_clei_s_b, "V16ScV16ScISi", "nc") 353263509SdimBUILTIN(__builtin_msa_clei_s_h, "V8SsV8SsISi", "nc") 354263509SdimBUILTIN(__builtin_msa_clei_s_w, "V4SiV4SiISi", "nc") 355263509SdimBUILTIN(__builtin_msa_clei_s_d, "V2SLLiV2SLLiISi", "nc") 356263509Sdim 357263509SdimBUILTIN(__builtin_msa_clei_u_b, "V16ScV16UcIUi", "nc") 358263509SdimBUILTIN(__builtin_msa_clei_u_h, "V8SsV8UsIUi", "nc") 359263509SdimBUILTIN(__builtin_msa_clei_u_w, "V4SiV4UiIUi", "nc") 360263509SdimBUILTIN(__builtin_msa_clei_u_d, "V2SLLiV2ULLiIUi", "nc") 361263509Sdim 362263509SdimBUILTIN(__builtin_msa_clt_s_b, "V16ScV16ScV16Sc", "nc") 363263509SdimBUILTIN(__builtin_msa_clt_s_h, "V8SsV8SsV8Ss", "nc") 364263509SdimBUILTIN(__builtin_msa_clt_s_w, "V4SiV4SiV4Si", "nc") 365263509SdimBUILTIN(__builtin_msa_clt_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 366263509Sdim 367263509SdimBUILTIN(__builtin_msa_clt_u_b, "V16ScV16UcV16Uc", "nc") 368263509SdimBUILTIN(__builtin_msa_clt_u_h, "V8SsV8UsV8Us", "nc") 369263509SdimBUILTIN(__builtin_msa_clt_u_w, "V4SiV4UiV4Ui", "nc") 370263509SdimBUILTIN(__builtin_msa_clt_u_d, "V2SLLiV2ULLiV2ULLi", "nc") 371263509Sdim 372263509SdimBUILTIN(__builtin_msa_clti_s_b, "V16ScV16ScISi", "nc") 373263509SdimBUILTIN(__builtin_msa_clti_s_h, "V8SsV8SsISi", "nc") 374263509SdimBUILTIN(__builtin_msa_clti_s_w, "V4SiV4SiISi", "nc") 375263509SdimBUILTIN(__builtin_msa_clti_s_d, "V2SLLiV2SLLiISi", "nc") 376263509Sdim 377263509SdimBUILTIN(__builtin_msa_clti_u_b, "V16ScV16UcIUi", "nc") 378263509SdimBUILTIN(__builtin_msa_clti_u_h, "V8SsV8UsIUi", "nc") 379263509SdimBUILTIN(__builtin_msa_clti_u_w, "V4SiV4UiIUi", "nc") 380263509SdimBUILTIN(__builtin_msa_clti_u_d, "V2SLLiV2ULLiIUi", "nc") 381263509Sdim 382263509SdimBUILTIN(__builtin_msa_copy_s_b, "iV16ScIUi", "nc") 383263509SdimBUILTIN(__builtin_msa_copy_s_h, "iV8SsIUi", "nc") 384263509SdimBUILTIN(__builtin_msa_copy_s_w, "iV4SiIUi", "nc") 385263509SdimBUILTIN(__builtin_msa_copy_s_d, "LLiV2SLLiIUi", "nc") 386263509Sdim 387263509SdimBUILTIN(__builtin_msa_copy_u_b, "iV16UcIUi", "nc") 388263509SdimBUILTIN(__builtin_msa_copy_u_h, "iV8UsIUi", "nc") 389263509SdimBUILTIN(__builtin_msa_copy_u_w, "iV4UiIUi", "nc") 390263509SdimBUILTIN(__builtin_msa_copy_u_d, "LLiV2ULLiIUi", "nc") 391263509Sdim 392263509SdimBUILTIN(__builtin_msa_ctcmsa, "vIii", "n") 393263509Sdim 394263509SdimBUILTIN(__builtin_msa_div_s_b, "V16ScV16ScV16Sc", "nc") 395263509SdimBUILTIN(__builtin_msa_div_s_h, "V8SsV8SsV8Ss", "nc") 396263509SdimBUILTIN(__builtin_msa_div_s_w, "V4SiV4SiV4Si", "nc") 397263509SdimBUILTIN(__builtin_msa_div_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 398263509Sdim 399263509SdimBUILTIN(__builtin_msa_div_u_b, "V16UcV16UcV16Uc", "nc") 400263509SdimBUILTIN(__builtin_msa_div_u_h, "V8UsV8UsV8Us", "nc") 401263509SdimBUILTIN(__builtin_msa_div_u_w, "V4UiV4UiV4Ui", "nc") 402263509SdimBUILTIN(__builtin_msa_div_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 403263509Sdim 404263509SdimBUILTIN(__builtin_msa_dotp_s_h, "V8SsV16ScV16Sc", "nc") 405263509SdimBUILTIN(__builtin_msa_dotp_s_w, "V4SiV8SsV8Ss", "nc") 406263509SdimBUILTIN(__builtin_msa_dotp_s_d, "V2SLLiV4SiV4Si", "nc") 407263509Sdim 408263509SdimBUILTIN(__builtin_msa_dotp_u_h, "V8UsV16UcV16Uc", "nc") 409263509SdimBUILTIN(__builtin_msa_dotp_u_w, "V4UiV8UsV8Us", "nc") 410263509SdimBUILTIN(__builtin_msa_dotp_u_d, "V2ULLiV4UiV4Ui", "nc") 411263509Sdim 412263509SdimBUILTIN(__builtin_msa_dpadd_s_h, "V8SsV8SsV16ScV16Sc", "nc") 413263509SdimBUILTIN(__builtin_msa_dpadd_s_w, "V4SiV4SiV8SsV8Ss", "nc") 414263509SdimBUILTIN(__builtin_msa_dpadd_s_d, "V2SLLiV2SLLiV4SiV4Si", "nc") 415263509Sdim 416263509SdimBUILTIN(__builtin_msa_dpadd_u_h, "V8UsV8UsV16UcV16Uc", "nc") 417263509SdimBUILTIN(__builtin_msa_dpadd_u_w, "V4UiV4UiV8UsV8Us", "nc") 418263509SdimBUILTIN(__builtin_msa_dpadd_u_d, "V2ULLiV2ULLiV4UiV4Ui", "nc") 419263509Sdim 420263509SdimBUILTIN(__builtin_msa_dpsub_s_h, "V8SsV8SsV16ScV16Sc", "nc") 421263509SdimBUILTIN(__builtin_msa_dpsub_s_w, "V4SiV4SiV8SsV8Ss", "nc") 422263509SdimBUILTIN(__builtin_msa_dpsub_s_d, "V2SLLiV2SLLiV4SiV4Si", "nc") 423263509Sdim 424263509SdimBUILTIN(__builtin_msa_dpsub_u_h, "V8UsV8UsV16UcV16Uc", "nc") 425263509SdimBUILTIN(__builtin_msa_dpsub_u_w, "V4UiV4UiV8UsV8Us", "nc") 426263509SdimBUILTIN(__builtin_msa_dpsub_u_d, "V2ULLiV2ULLiV4UiV4Ui", "nc") 427263509Sdim 428263509SdimBUILTIN(__builtin_msa_fadd_w, "V4fV4fV4f", "nc") 429263509SdimBUILTIN(__builtin_msa_fadd_d, "V2dV2dV2d", "nc") 430263509Sdim 431263509SdimBUILTIN(__builtin_msa_fcaf_w, "V4iV4fV4f", "nc") 432263509SdimBUILTIN(__builtin_msa_fcaf_d, "V2LLiV2dV2d", "nc") 433263509Sdim 434263509SdimBUILTIN(__builtin_msa_fceq_w, "V4iV4fV4f", "nc") 435263509SdimBUILTIN(__builtin_msa_fceq_d, "V2LLiV2dV2d", "nc") 436263509Sdim 437263509SdimBUILTIN(__builtin_msa_fclass_w, "V4iV4f", "nc") 438263509SdimBUILTIN(__builtin_msa_fclass_d, "V2LLiV2d", "nc") 439263509Sdim 440263509SdimBUILTIN(__builtin_msa_fcle_w, "V4iV4fV4f", "nc") 441263509SdimBUILTIN(__builtin_msa_fcle_d, "V2LLiV2dV2d", "nc") 442263509Sdim 443263509SdimBUILTIN(__builtin_msa_fclt_w, "V4iV4fV4f", "nc") 444263509SdimBUILTIN(__builtin_msa_fclt_d, "V2LLiV2dV2d", "nc") 445263509Sdim 446263509SdimBUILTIN(__builtin_msa_fcne_w, "V4iV4fV4f", "nc") 447263509SdimBUILTIN(__builtin_msa_fcne_d, "V2LLiV2dV2d", "nc") 448263509Sdim 449263509SdimBUILTIN(__builtin_msa_fcor_w, "V4iV4fV4f", "nc") 450263509SdimBUILTIN(__builtin_msa_fcor_d, "V2LLiV2dV2d", "nc") 451263509Sdim 452263509SdimBUILTIN(__builtin_msa_fcueq_w, "V4iV4fV4f", "nc") 453263509SdimBUILTIN(__builtin_msa_fcueq_d, "V2LLiV2dV2d", "nc") 454263509Sdim 455263509SdimBUILTIN(__builtin_msa_fcule_w, "V4iV4fV4f", "nc") 456263509SdimBUILTIN(__builtin_msa_fcule_d, "V2LLiV2dV2d", "nc") 457263509Sdim 458263509SdimBUILTIN(__builtin_msa_fcult_w, "V4iV4fV4f", "nc") 459263509SdimBUILTIN(__builtin_msa_fcult_d, "V2LLiV2dV2d", "nc") 460263509Sdim 461263509SdimBUILTIN(__builtin_msa_fcun_w, "V4iV4fV4f", "nc") 462263509SdimBUILTIN(__builtin_msa_fcun_d, "V2LLiV2dV2d", "nc") 463263509Sdim 464263509SdimBUILTIN(__builtin_msa_fcune_w, "V4iV4fV4f", "nc") 465263509SdimBUILTIN(__builtin_msa_fcune_d, "V2LLiV2dV2d", "nc") 466263509Sdim 467263509SdimBUILTIN(__builtin_msa_fdiv_w, "V4fV4fV4f", "nc") 468263509SdimBUILTIN(__builtin_msa_fdiv_d, "V2dV2dV2d", "nc") 469263509Sdim 470263509SdimBUILTIN(__builtin_msa_fexdo_h, "V8hV4fV4f", "nc") 471263509SdimBUILTIN(__builtin_msa_fexdo_w, "V4fV2dV2d", "nc") 472263509Sdim 473263509SdimBUILTIN(__builtin_msa_fexp2_w, "V4fV4fV4i", "nc") 474263509SdimBUILTIN(__builtin_msa_fexp2_d, "V2dV2dV2LLi", "nc") 475263509Sdim 476263509SdimBUILTIN(__builtin_msa_fexupl_w, "V4fV8h", "nc") 477263509SdimBUILTIN(__builtin_msa_fexupl_d, "V2dV4f", "nc") 478263509Sdim 479263509SdimBUILTIN(__builtin_msa_fexupr_w, "V4fV8h", "nc") 480263509SdimBUILTIN(__builtin_msa_fexupr_d, "V2dV4f", "nc") 481263509Sdim 482263509SdimBUILTIN(__builtin_msa_ffint_s_w, "V4fV4Si", "nc") 483263509SdimBUILTIN(__builtin_msa_ffint_s_d, "V2dV2SLLi", "nc") 484263509Sdim 485263509SdimBUILTIN(__builtin_msa_ffint_u_w, "V4fV4Ui", "nc") 486263509SdimBUILTIN(__builtin_msa_ffint_u_d, "V2dV2ULLi", "nc") 487263509Sdim 488263509Sdim// ffql uses integers since long _Fract is not implemented 489263509SdimBUILTIN(__builtin_msa_ffql_w, "V4fV8Ss", "nc") 490263509SdimBUILTIN(__builtin_msa_ffql_d, "V2dV4Si", "nc") 491263509Sdim 492263509Sdim// ffqr uses integers since long _Fract is not implemented 493263509SdimBUILTIN(__builtin_msa_ffqr_w, "V4fV8Ss", "nc") 494263509SdimBUILTIN(__builtin_msa_ffqr_d, "V2dV4Si", "nc") 495263509Sdim 496263509SdimBUILTIN(__builtin_msa_fill_b, "V16Sci", "nc") 497263509SdimBUILTIN(__builtin_msa_fill_h, "V8Ssi", "nc") 498263509SdimBUILTIN(__builtin_msa_fill_w, "V4Sii", "nc") 499263509SdimBUILTIN(__builtin_msa_fill_d, "V2SLLiLLi", "nc") 500263509Sdim 501263509SdimBUILTIN(__builtin_msa_flog2_w, "V4fV4f", "nc") 502263509SdimBUILTIN(__builtin_msa_flog2_d, "V2dV2d", "nc") 503263509Sdim 504263509SdimBUILTIN(__builtin_msa_fmadd_w, "V4fV4fV4fV4f", "nc") 505263509SdimBUILTIN(__builtin_msa_fmadd_d, "V2dV2dV2dV2d", "nc") 506263509Sdim 507263509SdimBUILTIN(__builtin_msa_fmax_w, "V4fV4fV4f", "nc") 508263509SdimBUILTIN(__builtin_msa_fmax_d, "V2dV2dV2d", "nc") 509263509Sdim 510263509SdimBUILTIN(__builtin_msa_fmax_a_w, "V4fV4fV4f", "nc") 511263509SdimBUILTIN(__builtin_msa_fmax_a_d, "V2dV2dV2d", "nc") 512263509Sdim 513263509SdimBUILTIN(__builtin_msa_fmin_w, "V4fV4fV4f", "nc") 514263509SdimBUILTIN(__builtin_msa_fmin_d, "V2dV2dV2d", "nc") 515263509Sdim 516263509SdimBUILTIN(__builtin_msa_fmin_a_w, "V4fV4fV4f", "nc") 517263509SdimBUILTIN(__builtin_msa_fmin_a_d, "V2dV2dV2d", "nc") 518263509Sdim 519263509SdimBUILTIN(__builtin_msa_fmsub_w, "V4fV4fV4fV4f", "nc") 520263509SdimBUILTIN(__builtin_msa_fmsub_d, "V2dV2dV2dV2d", "nc") 521263509Sdim 522263509SdimBUILTIN(__builtin_msa_fmul_w, "V4fV4fV4f", "nc") 523263509SdimBUILTIN(__builtin_msa_fmul_d, "V2dV2dV2d", "nc") 524263509Sdim 525263509SdimBUILTIN(__builtin_msa_frint_w, "V4fV4f", "nc") 526263509SdimBUILTIN(__builtin_msa_frint_d, "V2dV2d", "nc") 527263509Sdim 528263509SdimBUILTIN(__builtin_msa_frcp_w, "V4fV4f", "nc") 529263509SdimBUILTIN(__builtin_msa_frcp_d, "V2dV2d", "nc") 530263509Sdim 531263509SdimBUILTIN(__builtin_msa_frsqrt_w, "V4fV4f", "nc") 532263509SdimBUILTIN(__builtin_msa_frsqrt_d, "V2dV2d", "nc") 533263509Sdim 534263509SdimBUILTIN(__builtin_msa_fsaf_w, "V4iV4fV4f", "nc") 535263509SdimBUILTIN(__builtin_msa_fsaf_d, "V2LLiV2dV2d", "nc") 536263509Sdim 537263509SdimBUILTIN(__builtin_msa_fseq_w, "V4iV4fV4f", "nc") 538263509SdimBUILTIN(__builtin_msa_fseq_d, "V2LLiV2dV2d", "nc") 539263509Sdim 540263509SdimBUILTIN(__builtin_msa_fsle_w, "V4iV4fV4f", "nc") 541263509SdimBUILTIN(__builtin_msa_fsle_d, "V2LLiV2dV2d", "nc") 542263509Sdim 543263509SdimBUILTIN(__builtin_msa_fslt_w, "V4iV4fV4f", "nc") 544263509SdimBUILTIN(__builtin_msa_fslt_d, "V2LLiV2dV2d", "nc") 545263509Sdim 546263509SdimBUILTIN(__builtin_msa_fsne_w, "V4iV4fV4f", "nc") 547263509SdimBUILTIN(__builtin_msa_fsne_d, "V2LLiV2dV2d", "nc") 548263509Sdim 549263509SdimBUILTIN(__builtin_msa_fsor_w, "V4iV4fV4f", "nc") 550263509SdimBUILTIN(__builtin_msa_fsor_d, "V2LLiV2dV2d", "nc") 551263509Sdim 552263509SdimBUILTIN(__builtin_msa_fsqrt_w, "V4fV4f", "nc") 553263509SdimBUILTIN(__builtin_msa_fsqrt_d, "V2dV2d", "nc") 554263509Sdim 555263509SdimBUILTIN(__builtin_msa_fsub_w, "V4fV4fV4f", "nc") 556263509SdimBUILTIN(__builtin_msa_fsub_d, "V2dV2dV2d", "nc") 557263509Sdim 558263509SdimBUILTIN(__builtin_msa_fsueq_w, "V4iV4fV4f", "nc") 559263509SdimBUILTIN(__builtin_msa_fsueq_d, "V2LLiV2dV2d", "nc") 560263509Sdim 561263509SdimBUILTIN(__builtin_msa_fsule_w, "V4iV4fV4f", "nc") 562263509SdimBUILTIN(__builtin_msa_fsule_d, "V2LLiV2dV2d", "nc") 563263509Sdim 564263509SdimBUILTIN(__builtin_msa_fsult_w, "V4iV4fV4f", "nc") 565263509SdimBUILTIN(__builtin_msa_fsult_d, "V2LLiV2dV2d", "nc") 566263509Sdim 567263509SdimBUILTIN(__builtin_msa_fsun_w, "V4iV4fV4f", "nc") 568263509SdimBUILTIN(__builtin_msa_fsun_d, "V2LLiV2dV2d", "nc") 569263509Sdim 570263509SdimBUILTIN(__builtin_msa_fsune_w, "V4iV4fV4f", "nc") 571263509SdimBUILTIN(__builtin_msa_fsune_d, "V2LLiV2dV2d", "nc") 572263509Sdim 573263509SdimBUILTIN(__builtin_msa_ftint_s_w, "V4SiV4f", "nc") 574263509SdimBUILTIN(__builtin_msa_ftint_s_d, "V2SLLiV2d", "nc") 575263509Sdim 576263509SdimBUILTIN(__builtin_msa_ftint_u_w, "V4UiV4f", "nc") 577263509SdimBUILTIN(__builtin_msa_ftint_u_d, "V2ULLiV2d", "nc") 578263509Sdim 579263509SdimBUILTIN(__builtin_msa_ftq_h, "V4UiV4fV4f", "nc") 580263509SdimBUILTIN(__builtin_msa_ftq_w, "V2ULLiV2dV2d", "nc") 581263509Sdim 582263509SdimBUILTIN(__builtin_msa_ftrunc_s_w, "V4SiV4f", "nc") 583263509SdimBUILTIN(__builtin_msa_ftrunc_s_d, "V2SLLiV2d", "nc") 584263509Sdim 585263509SdimBUILTIN(__builtin_msa_ftrunc_u_w, "V4UiV4f", "nc") 586263509SdimBUILTIN(__builtin_msa_ftrunc_u_d, "V2ULLiV2d", "nc") 587263509Sdim 588263509SdimBUILTIN(__builtin_msa_hadd_s_h, "V8SsV16ScV16Sc", "nc") 589263509SdimBUILTIN(__builtin_msa_hadd_s_w, "V4SiV8SsV8Ss", "nc") 590263509SdimBUILTIN(__builtin_msa_hadd_s_d, "V2SLLiV4SiV4Si", "nc") 591263509Sdim 592263509SdimBUILTIN(__builtin_msa_hadd_u_h, "V8UsV16UcV16Uc", "nc") 593263509SdimBUILTIN(__builtin_msa_hadd_u_w, "V4UiV8UsV8Us", "nc") 594263509SdimBUILTIN(__builtin_msa_hadd_u_d, "V2ULLiV4UiV4Ui", "nc") 595263509Sdim 596263509SdimBUILTIN(__builtin_msa_hsub_s_h, "V8SsV16ScV16Sc", "nc") 597263509SdimBUILTIN(__builtin_msa_hsub_s_w, "V4SiV8SsV8Ss", "nc") 598263509SdimBUILTIN(__builtin_msa_hsub_s_d, "V2SLLiV4SiV4Si", "nc") 599263509Sdim 600263509SdimBUILTIN(__builtin_msa_hsub_u_h, "V8UsV16UcV16Uc", "nc") 601263509SdimBUILTIN(__builtin_msa_hsub_u_w, "V4UiV8UsV8Us", "nc") 602263509SdimBUILTIN(__builtin_msa_hsub_u_d, "V2ULLiV4UiV4Ui", "nc") 603263509Sdim 604263509SdimBUILTIN(__builtin_msa_ilvev_b, "V16cV16cV16c", "nc") 605263509SdimBUILTIN(__builtin_msa_ilvev_h, "V8sV8sV8s", "nc") 606263509SdimBUILTIN(__builtin_msa_ilvev_w, "V4iV4iV4i", "nc") 607263509SdimBUILTIN(__builtin_msa_ilvev_d, "V2LLiV2LLiV2LLi", "nc") 608263509Sdim 609263509SdimBUILTIN(__builtin_msa_ilvl_b, "V16cV16cV16c", "nc") 610263509SdimBUILTIN(__builtin_msa_ilvl_h, "V8sV8sV8s", "nc") 611263509SdimBUILTIN(__builtin_msa_ilvl_w, "V4iV4iV4i", "nc") 612263509SdimBUILTIN(__builtin_msa_ilvl_d, "V2LLiV2LLiV2LLi", "nc") 613263509Sdim 614263509SdimBUILTIN(__builtin_msa_ilvod_b, "V16cV16cV16c", "nc") 615263509SdimBUILTIN(__builtin_msa_ilvod_h, "V8sV8sV8s", "nc") 616263509SdimBUILTIN(__builtin_msa_ilvod_w, "V4iV4iV4i", "nc") 617263509SdimBUILTIN(__builtin_msa_ilvod_d, "V2LLiV2LLiV2LLi", "nc") 618263509Sdim 619263509SdimBUILTIN(__builtin_msa_ilvr_b, "V16cV16cV16c", "nc") 620263509SdimBUILTIN(__builtin_msa_ilvr_h, "V8sV8sV8s", "nc") 621263509SdimBUILTIN(__builtin_msa_ilvr_w, "V4iV4iV4i", "nc") 622263509SdimBUILTIN(__builtin_msa_ilvr_d, "V2LLiV2LLiV2LLi", "nc") 623263509Sdim 624263509SdimBUILTIN(__builtin_msa_insert_b, "V16ScV16ScIUii", "nc") 625263509SdimBUILTIN(__builtin_msa_insert_h, "V8SsV8SsIUii", "nc") 626263509SdimBUILTIN(__builtin_msa_insert_w, "V4SiV4SiIUii", "nc") 627263509SdimBUILTIN(__builtin_msa_insert_d, "V2SLLiV2SLLiIUiLLi", "nc") 628263509Sdim 629263509SdimBUILTIN(__builtin_msa_insve_b, "V16ScV16ScIUiV16Sc", "nc") 630263509SdimBUILTIN(__builtin_msa_insve_h, "V8SsV8SsIUiV8Ss", "nc") 631263509SdimBUILTIN(__builtin_msa_insve_w, "V4SiV4SiIUiV4Si", "nc") 632263509SdimBUILTIN(__builtin_msa_insve_d, "V2SLLiV2SLLiIUiV2SLLi", "nc") 633263509Sdim 634263509SdimBUILTIN(__builtin_msa_ld_b, "V16Scv*Ii", "nc") 635263509SdimBUILTIN(__builtin_msa_ld_h, "V8Ssv*Ii", "nc") 636263509SdimBUILTIN(__builtin_msa_ld_w, "V4Siv*Ii", "nc") 637263509SdimBUILTIN(__builtin_msa_ld_d, "V2SLLiv*Ii", "nc") 638263509Sdim 639263509SdimBUILTIN(__builtin_msa_ldi_b, "V16cIi", "nc") 640263509SdimBUILTIN(__builtin_msa_ldi_h, "V8sIi", "nc") 641263509SdimBUILTIN(__builtin_msa_ldi_w, "V4iIi", "nc") 642263509SdimBUILTIN(__builtin_msa_ldi_d, "V2LLiIi", "nc") 643263509Sdim 644263509SdimBUILTIN(__builtin_msa_madd_q_h, "V8SsV8SsV8SsV8Ss", "nc") 645263509SdimBUILTIN(__builtin_msa_madd_q_w, "V4SiV4SiV4SiV4Si", "nc") 646263509Sdim 647263509SdimBUILTIN(__builtin_msa_maddr_q_h, "V8SsV8SsV8SsV8Ss", "nc") 648263509SdimBUILTIN(__builtin_msa_maddr_q_w, "V4SiV4SiV4SiV4Si", "nc") 649263509Sdim 650263509SdimBUILTIN(__builtin_msa_maddv_b, "V16ScV16ScV16ScV16Sc", "nc") 651263509SdimBUILTIN(__builtin_msa_maddv_h, "V8SsV8SsV8SsV8Ss", "nc") 652263509SdimBUILTIN(__builtin_msa_maddv_w, "V4SiV4SiV4SiV4Si", "nc") 653263509SdimBUILTIN(__builtin_msa_maddv_d, "V2SLLiV2SLLiV2SLLiV2SLLi", "nc") 654263509Sdim 655263509SdimBUILTIN(__builtin_msa_max_a_b, "V16ScV16ScV16Sc", "nc") 656263509SdimBUILTIN(__builtin_msa_max_a_h, "V8SsV8SsV8Ss", "nc") 657263509SdimBUILTIN(__builtin_msa_max_a_w, "V4SiV4SiV4Si", "nc") 658263509SdimBUILTIN(__builtin_msa_max_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 659263509Sdim 660263509SdimBUILTIN(__builtin_msa_max_s_b, "V16ScV16ScV16Sc", "nc") 661263509SdimBUILTIN(__builtin_msa_max_s_h, "V8SsV8SsV8Ss", "nc") 662263509SdimBUILTIN(__builtin_msa_max_s_w, "V4SiV4SiV4Si", "nc") 663263509SdimBUILTIN(__builtin_msa_max_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 664263509Sdim 665263509SdimBUILTIN(__builtin_msa_max_u_b, "V16UcV16UcV16Uc", "nc") 666263509SdimBUILTIN(__builtin_msa_max_u_h, "V8UsV8UsV8Us", "nc") 667263509SdimBUILTIN(__builtin_msa_max_u_w, "V4UiV4UiV4Ui", "nc") 668263509SdimBUILTIN(__builtin_msa_max_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 669263509Sdim 670263509SdimBUILTIN(__builtin_msa_maxi_s_b, "V16ScV16ScIi", "nc") 671263509SdimBUILTIN(__builtin_msa_maxi_s_h, "V8SsV8SsIi", "nc") 672263509SdimBUILTIN(__builtin_msa_maxi_s_w, "V4SiV4SiIi", "nc") 673263509SdimBUILTIN(__builtin_msa_maxi_s_d, "V2SLLiV2SLLiIi", "nc") 674263509Sdim 675263509SdimBUILTIN(__builtin_msa_maxi_u_b, "V16UcV16UcIi", "nc") 676263509SdimBUILTIN(__builtin_msa_maxi_u_h, "V8UsV8UsIi", "nc") 677263509SdimBUILTIN(__builtin_msa_maxi_u_w, "V4UiV4UiIi", "nc") 678263509SdimBUILTIN(__builtin_msa_maxi_u_d, "V2ULLiV2ULLiIi", "nc") 679263509Sdim 680263509SdimBUILTIN(__builtin_msa_min_a_b, "V16ScV16ScV16Sc", "nc") 681263509SdimBUILTIN(__builtin_msa_min_a_h, "V8SsV8SsV8Ss", "nc") 682263509SdimBUILTIN(__builtin_msa_min_a_w, "V4SiV4SiV4Si", "nc") 683263509SdimBUILTIN(__builtin_msa_min_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 684263509Sdim 685263509SdimBUILTIN(__builtin_msa_min_s_b, "V16ScV16ScV16Sc", "nc") 686263509SdimBUILTIN(__builtin_msa_min_s_h, "V8SsV8SsV8Ss", "nc") 687263509SdimBUILTIN(__builtin_msa_min_s_w, "V4SiV4SiV4Si", "nc") 688263509SdimBUILTIN(__builtin_msa_min_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 689263509Sdim 690263509SdimBUILTIN(__builtin_msa_min_u_b, "V16UcV16UcV16Uc", "nc") 691263509SdimBUILTIN(__builtin_msa_min_u_h, "V8UsV8UsV8Us", "nc") 692263509SdimBUILTIN(__builtin_msa_min_u_w, "V4UiV4UiV4Ui", "nc") 693263509SdimBUILTIN(__builtin_msa_min_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 694263509Sdim 695263509SdimBUILTIN(__builtin_msa_mini_s_b, "V16ScV16ScIi", "nc") 696263509SdimBUILTIN(__builtin_msa_mini_s_h, "V8SsV8SsIi", "nc") 697263509SdimBUILTIN(__builtin_msa_mini_s_w, "V4SiV4SiIi", "nc") 698263509SdimBUILTIN(__builtin_msa_mini_s_d, "V2SLLiV2SLLiIi", "nc") 699263509Sdim 700263509SdimBUILTIN(__builtin_msa_mini_u_b, "V16UcV16UcIi", "nc") 701263509SdimBUILTIN(__builtin_msa_mini_u_h, "V8UsV8UsIi", "nc") 702263509SdimBUILTIN(__builtin_msa_mini_u_w, "V4UiV4UiIi", "nc") 703263509SdimBUILTIN(__builtin_msa_mini_u_d, "V2ULLiV2ULLiIi", "nc") 704263509Sdim 705263509SdimBUILTIN(__builtin_msa_mod_s_b, "V16ScV16ScV16Sc", "nc") 706263509SdimBUILTIN(__builtin_msa_mod_s_h, "V8SsV8SsV8Ss", "nc") 707263509SdimBUILTIN(__builtin_msa_mod_s_w, "V4SiV4SiV4Si", "nc") 708263509SdimBUILTIN(__builtin_msa_mod_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 709263509Sdim 710263509SdimBUILTIN(__builtin_msa_mod_u_b, "V16UcV16UcV16Uc", "nc") 711263509SdimBUILTIN(__builtin_msa_mod_u_h, "V8UsV8UsV8Us", "nc") 712263509SdimBUILTIN(__builtin_msa_mod_u_w, "V4UiV4UiV4Ui", "nc") 713263509SdimBUILTIN(__builtin_msa_mod_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 714263509Sdim 715263509SdimBUILTIN(__builtin_msa_move_v, "V16ScV16Sc", "nc") 716263509Sdim 717263509SdimBUILTIN(__builtin_msa_msub_q_h, "V8SsV8SsV8SsV8Ss", "nc") 718263509SdimBUILTIN(__builtin_msa_msub_q_w, "V4SiV4SiV4SiV4Si", "nc") 719263509Sdim 720263509SdimBUILTIN(__builtin_msa_msubr_q_h, "V8SsV8SsV8SsV8Ss", "nc") 721263509SdimBUILTIN(__builtin_msa_msubr_q_w, "V4SiV4SiV4SiV4Si", "nc") 722263509Sdim 723263509SdimBUILTIN(__builtin_msa_msubv_b, "V16ScV16ScV16ScV16Sc", "nc") 724263509SdimBUILTIN(__builtin_msa_msubv_h, "V8SsV8SsV8SsV8Ss", "nc") 725263509SdimBUILTIN(__builtin_msa_msubv_w, "V4SiV4SiV4SiV4Si", "nc") 726263509SdimBUILTIN(__builtin_msa_msubv_d, "V2SLLiV2SLLiV2SLLiV2SLLi", "nc") 727263509Sdim 728263509SdimBUILTIN(__builtin_msa_mul_q_h, "V8SsV8SsV8Ss", "nc") 729263509SdimBUILTIN(__builtin_msa_mul_q_w, "V4SiV4SiV4Si", "nc") 730263509Sdim 731263509SdimBUILTIN(__builtin_msa_mulr_q_h, "V8SsV8SsV8Ss", "nc") 732263509SdimBUILTIN(__builtin_msa_mulr_q_w, "V4SiV4SiV4Si", "nc") 733263509Sdim 734263509SdimBUILTIN(__builtin_msa_mulv_b, "V16ScV16ScV16Sc", "nc") 735263509SdimBUILTIN(__builtin_msa_mulv_h, "V8SsV8SsV8Ss", "nc") 736263509SdimBUILTIN(__builtin_msa_mulv_w, "V4SiV4SiV4Si", "nc") 737263509SdimBUILTIN(__builtin_msa_mulv_d, "V2SLLiV2SLLiV2SLLi", "nc") 738263509Sdim 739263509SdimBUILTIN(__builtin_msa_nloc_b, "V16ScV16Sc", "nc") 740263509SdimBUILTIN(__builtin_msa_nloc_h, "V8SsV8Ss", "nc") 741263509SdimBUILTIN(__builtin_msa_nloc_w, "V4SiV4Si", "nc") 742263509SdimBUILTIN(__builtin_msa_nloc_d, "V2SLLiV2SLLi", "nc") 743263509Sdim 744263509SdimBUILTIN(__builtin_msa_nlzc_b, "V16ScV16Sc", "nc") 745263509SdimBUILTIN(__builtin_msa_nlzc_h, "V8SsV8Ss", "nc") 746263509SdimBUILTIN(__builtin_msa_nlzc_w, "V4SiV4Si", "nc") 747263509SdimBUILTIN(__builtin_msa_nlzc_d, "V2SLLiV2SLLi", "nc") 748263509Sdim 749263509SdimBUILTIN(__builtin_msa_nor_v, "V16UcV16UcV16Uc", "nc") 750263509Sdim 751263509SdimBUILTIN(__builtin_msa_nori_b, "V16UcV16cIUi", "nc") 752263509Sdim 753263509SdimBUILTIN(__builtin_msa_or_v, "V16UcV16UcV16Uc", "nc") 754263509Sdim 755263509SdimBUILTIN(__builtin_msa_ori_b, "V16UcV16UcIUi", "nc") 756263509Sdim 757263509SdimBUILTIN(__builtin_msa_pckev_b, "V16cV16cV16c", "nc") 758263509SdimBUILTIN(__builtin_msa_pckev_h, "V8sV8sV8s", "nc") 759263509SdimBUILTIN(__builtin_msa_pckev_w, "V4iV4iV4i", "nc") 760263509SdimBUILTIN(__builtin_msa_pckev_d, "V2LLiV2LLiV2LLi", "nc") 761263509Sdim 762263509SdimBUILTIN(__builtin_msa_pckod_b, "V16cV16cV16c", "nc") 763263509SdimBUILTIN(__builtin_msa_pckod_h, "V8sV8sV8s", "nc") 764263509SdimBUILTIN(__builtin_msa_pckod_w, "V4iV4iV4i", "nc") 765263509SdimBUILTIN(__builtin_msa_pckod_d, "V2LLiV2LLiV2LLi", "nc") 766263509Sdim 767263509SdimBUILTIN(__builtin_msa_pcnt_b, "V16ScV16Sc", "nc") 768263509SdimBUILTIN(__builtin_msa_pcnt_h, "V8SsV8Ss", "nc") 769263509SdimBUILTIN(__builtin_msa_pcnt_w, "V4SiV4Si", "nc") 770263509SdimBUILTIN(__builtin_msa_pcnt_d, "V2SLLiV2SLLi", "nc") 771263509Sdim 772263509SdimBUILTIN(__builtin_msa_sat_s_b, "V16ScV16ScIUi", "nc") 773263509SdimBUILTIN(__builtin_msa_sat_s_h, "V8SsV8SsIUi", "nc") 774263509SdimBUILTIN(__builtin_msa_sat_s_w, "V4SiV4SiIUi", "nc") 775263509SdimBUILTIN(__builtin_msa_sat_s_d, "V2SLLiV2SLLiIUi", "nc") 776263509Sdim 777263509SdimBUILTIN(__builtin_msa_sat_u_b, "V16UcV16UcIUi", "nc") 778263509SdimBUILTIN(__builtin_msa_sat_u_h, "V8UsV8UsIUi", "nc") 779263509SdimBUILTIN(__builtin_msa_sat_u_w, "V4UiV4UiIUi", "nc") 780263509SdimBUILTIN(__builtin_msa_sat_u_d, "V2ULLiV2ULLiIUi", "nc") 781263509Sdim 782263509SdimBUILTIN(__builtin_msa_shf_b, "V16cV16cIUi", "nc") 783263509SdimBUILTIN(__builtin_msa_shf_h, "V8sV8sIUi", "nc") 784263509SdimBUILTIN(__builtin_msa_shf_w, "V4iV4iIUi", "nc") 785263509Sdim 786263509SdimBUILTIN(__builtin_msa_sld_b, "V16cV16cUi", "nc") 787263509SdimBUILTIN(__builtin_msa_sld_h, "V8sV8sUi", "nc") 788263509SdimBUILTIN(__builtin_msa_sld_w, "V4iV4iUi", "nc") 789263509SdimBUILTIN(__builtin_msa_sld_d, "V2LLiV2LLiUi", "nc") 790263509Sdim 791263509SdimBUILTIN(__builtin_msa_sldi_b, "V16cV16cIUi", "nc") 792263509SdimBUILTIN(__builtin_msa_sldi_h, "V8sV8sIUi", "nc") 793263509SdimBUILTIN(__builtin_msa_sldi_w, "V4iV4iIUi", "nc") 794263509SdimBUILTIN(__builtin_msa_sldi_d, "V2LLiV2LLiIUi", "nc") 795263509Sdim 796263509SdimBUILTIN(__builtin_msa_sll_b, "V16cV16cV16c", "nc") 797263509SdimBUILTIN(__builtin_msa_sll_h, "V8sV8sV8s", "nc") 798263509SdimBUILTIN(__builtin_msa_sll_w, "V4iV4iV4i", "nc") 799263509SdimBUILTIN(__builtin_msa_sll_d, "V2LLiV2LLiV2LLi", "nc") 800263509Sdim 801263509SdimBUILTIN(__builtin_msa_slli_b, "V16cV16cIUi", "nc") 802263509SdimBUILTIN(__builtin_msa_slli_h, "V8sV8sIUi", "nc") 803263509SdimBUILTIN(__builtin_msa_slli_w, "V4iV4iIUi", "nc") 804263509SdimBUILTIN(__builtin_msa_slli_d, "V2LLiV2LLiIUi", "nc") 805263509Sdim 806263509SdimBUILTIN(__builtin_msa_splat_b, "V16cV16cUi", "nc") 807263509SdimBUILTIN(__builtin_msa_splat_h, "V8sV8sUi", "nc") 808263509SdimBUILTIN(__builtin_msa_splat_w, "V4iV4iUi", "nc") 809263509SdimBUILTIN(__builtin_msa_splat_d, "V2LLiV2LLiUi", "nc") 810263509Sdim 811263509SdimBUILTIN(__builtin_msa_splati_b, "V16cV16cIUi", "nc") 812263509SdimBUILTIN(__builtin_msa_splati_h, "V8sV8sIUi", "nc") 813263509SdimBUILTIN(__builtin_msa_splati_w, "V4iV4iIUi", "nc") 814263509SdimBUILTIN(__builtin_msa_splati_d, "V2LLiV2LLiIUi", "nc") 815263509Sdim 816263509SdimBUILTIN(__builtin_msa_sra_b, "V16cV16cV16c", "nc") 817263509SdimBUILTIN(__builtin_msa_sra_h, "V8sV8sV8s", "nc") 818263509SdimBUILTIN(__builtin_msa_sra_w, "V4iV4iV4i", "nc") 819263509SdimBUILTIN(__builtin_msa_sra_d, "V2LLiV2LLiV2LLi", "nc") 820263509Sdim 821263509SdimBUILTIN(__builtin_msa_srai_b, "V16cV16cIUi", "nc") 822263509SdimBUILTIN(__builtin_msa_srai_h, "V8sV8sIUi", "nc") 823263509SdimBUILTIN(__builtin_msa_srai_w, "V4iV4iIUi", "nc") 824263509SdimBUILTIN(__builtin_msa_srai_d, "V2LLiV2LLiIUi", "nc") 825263509Sdim 826263509SdimBUILTIN(__builtin_msa_srar_b, "V16cV16cV16c", "nc") 827263509SdimBUILTIN(__builtin_msa_srar_h, "V8sV8sV8s", "nc") 828263509SdimBUILTIN(__builtin_msa_srar_w, "V4iV4iV4i", "nc") 829263509SdimBUILTIN(__builtin_msa_srar_d, "V2LLiV2LLiV2LLi", "nc") 830263509Sdim 831263509SdimBUILTIN(__builtin_msa_srari_b, "V16cV16cIUi", "nc") 832263509SdimBUILTIN(__builtin_msa_srari_h, "V8sV8sIUi", "nc") 833263509SdimBUILTIN(__builtin_msa_srari_w, "V4iV4iIUi", "nc") 834263509SdimBUILTIN(__builtin_msa_srari_d, "V2LLiV2LLiIUi", "nc") 835263509Sdim 836263509SdimBUILTIN(__builtin_msa_srl_b, "V16cV16cV16c", "nc") 837263509SdimBUILTIN(__builtin_msa_srl_h, "V8sV8sV8s", "nc") 838263509SdimBUILTIN(__builtin_msa_srl_w, "V4iV4iV4i", "nc") 839263509SdimBUILTIN(__builtin_msa_srl_d, "V2LLiV2LLiV2LLi", "nc") 840263509Sdim 841263509SdimBUILTIN(__builtin_msa_srli_b, "V16cV16cIUi", "nc") 842263509SdimBUILTIN(__builtin_msa_srli_h, "V8sV8sIUi", "nc") 843263509SdimBUILTIN(__builtin_msa_srli_w, "V4iV4iIUi", "nc") 844263509SdimBUILTIN(__builtin_msa_srli_d, "V2LLiV2LLiIUi", "nc") 845263509Sdim 846263509SdimBUILTIN(__builtin_msa_srlr_b, "V16cV16cV16c", "nc") 847263509SdimBUILTIN(__builtin_msa_srlr_h, "V8sV8sV8s", "nc") 848263509SdimBUILTIN(__builtin_msa_srlr_w, "V4iV4iV4i", "nc") 849263509SdimBUILTIN(__builtin_msa_srlr_d, "V2LLiV2LLiV2LLi", "nc") 850263509Sdim 851263509SdimBUILTIN(__builtin_msa_srlri_b, "V16cV16cIUi", "nc") 852263509SdimBUILTIN(__builtin_msa_srlri_h, "V8sV8sIUi", "nc") 853263509SdimBUILTIN(__builtin_msa_srlri_w, "V4iV4iIUi", "nc") 854263509SdimBUILTIN(__builtin_msa_srlri_d, "V2LLiV2LLiIUi", "nc") 855263509Sdim 856263509SdimBUILTIN(__builtin_msa_st_b, "vV16Scv*Ii", "nc") 857263509SdimBUILTIN(__builtin_msa_st_h, "vV8Ssv*Ii", "nc") 858263509SdimBUILTIN(__builtin_msa_st_w, "vV4Siv*Ii", "nc") 859263509SdimBUILTIN(__builtin_msa_st_d, "vV2SLLiv*Ii", "nc") 860263509Sdim 861263509SdimBUILTIN(__builtin_msa_subs_s_b, "V16ScV16ScV16Sc", "nc") 862263509SdimBUILTIN(__builtin_msa_subs_s_h, "V8SsV8SsV8Ss", "nc") 863263509SdimBUILTIN(__builtin_msa_subs_s_w, "V4SiV4SiV4Si", "nc") 864263509SdimBUILTIN(__builtin_msa_subs_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 865263509Sdim 866263509SdimBUILTIN(__builtin_msa_subs_u_b, "V16UcV16UcV16Uc", "nc") 867263509SdimBUILTIN(__builtin_msa_subs_u_h, "V8UsV8UsV8Us", "nc") 868263509SdimBUILTIN(__builtin_msa_subs_u_w, "V4UiV4UiV4Ui", "nc") 869263509SdimBUILTIN(__builtin_msa_subs_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 870263509Sdim 871263509SdimBUILTIN(__builtin_msa_subsus_u_b, "V16UcV16UcV16Sc", "nc") 872263509SdimBUILTIN(__builtin_msa_subsus_u_h, "V8UsV8UsV8Ss", "nc") 873263509SdimBUILTIN(__builtin_msa_subsus_u_w, "V4UiV4UiV4Si", "nc") 874263509SdimBUILTIN(__builtin_msa_subsus_u_d, "V2ULLiV2ULLiV2SLLi", "nc") 875263509Sdim 876263509SdimBUILTIN(__builtin_msa_subsuu_s_b, "V16ScV16UcV16Uc", "nc") 877263509SdimBUILTIN(__builtin_msa_subsuu_s_h, "V8SsV8UsV8Us", "nc") 878263509SdimBUILTIN(__builtin_msa_subsuu_s_w, "V4SiV4UiV4Ui", "nc") 879263509SdimBUILTIN(__builtin_msa_subsuu_s_d, "V2SLLiV2ULLiV2ULLi", "nc") 880263509Sdim 881263509SdimBUILTIN(__builtin_msa_subv_b, "V16cV16cV16c", "nc") 882263509SdimBUILTIN(__builtin_msa_subv_h, "V8sV8sV8s", "nc") 883263509SdimBUILTIN(__builtin_msa_subv_w, "V4iV4iV4i", "nc") 884263509SdimBUILTIN(__builtin_msa_subv_d, "V2LLiV2LLiV2LLi", "nc") 885263509Sdim 886263509SdimBUILTIN(__builtin_msa_subvi_b, "V16cV16cIUi", "nc") 887263509SdimBUILTIN(__builtin_msa_subvi_h, "V8sV8sIUi", "nc") 888263509SdimBUILTIN(__builtin_msa_subvi_w, "V4iV4iIUi", "nc") 889263509SdimBUILTIN(__builtin_msa_subvi_d, "V2LLiV2LLiIUi", "nc") 890263509Sdim 891263509SdimBUILTIN(__builtin_msa_vshf_b, "V16cV16cV16cV16c", "nc") 892263509SdimBUILTIN(__builtin_msa_vshf_h, "V8sV8sV8sV8s", "nc") 893263509SdimBUILTIN(__builtin_msa_vshf_w, "V4iV4iV4iV4i", "nc") 894263509SdimBUILTIN(__builtin_msa_vshf_d, "V2LLiV2LLiV2LLiV2LLi", "nc") 895263509Sdim 896263509SdimBUILTIN(__builtin_msa_xor_v, "V16cV16cV16c", "nc") 897263509Sdim 898263509SdimBUILTIN(__builtin_msa_xori_b, "V16cV16cIUi", "nc") 899263509Sdim 900239313Sdim#undef BUILTIN 901