1 //===-- BuiltinsMips.def - Mips Builtin function database --------*- C++ -*-==// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 // 10 // This file defines the MIPS-specific builtin function database. Users of 11 // this file must define the BUILTIN macro to make use of this information. 12 // 13 //===----------------------------------------------------------------------===// 14 15 // The format of this database matches clang/Basic/Builtins.def. 16 17 // MIPS DSP Rev 1 18 19 // Add/subtract with optional saturation 20 BUILTIN(__builtin_mips_addu_qb, "V4ScV4ScV4Sc", "n") 21 BUILTIN(__builtin_mips_addu_s_qb, "V4ScV4ScV4Sc", "n") 22 BUILTIN(__builtin_mips_subu_qb, "V4ScV4ScV4Sc", "n") 23 BUILTIN(__builtin_mips_subu_s_qb, "V4ScV4ScV4Sc", "n") 24 25 BUILTIN(__builtin_mips_addq_ph, "V2sV2sV2s", "n") 26 BUILTIN(__builtin_mips_addq_s_ph, "V2sV2sV2s", "n") 27 BUILTIN(__builtin_mips_subq_ph, "V2sV2sV2s", "n") 28 BUILTIN(__builtin_mips_subq_s_ph, "V2sV2sV2s", "n") 29 30 BUILTIN(__builtin_mips_madd, "LLiLLiii", "nc") 31 BUILTIN(__builtin_mips_maddu, "LLiLLiUiUi", "nc") 32 BUILTIN(__builtin_mips_msub, "LLiLLiii", "nc") 33 BUILTIN(__builtin_mips_msubu, "LLiLLiUiUi", "nc") 34 35 BUILTIN(__builtin_mips_addq_s_w, "iii", "n") 36 BUILTIN(__builtin_mips_subq_s_w, "iii", "n") 37 38 BUILTIN(__builtin_mips_addsc, "iii", "n") 39 BUILTIN(__builtin_mips_addwc, "iii", "n") 40 41 BUILTIN(__builtin_mips_modsub, "iii", "nc") 42 43 BUILTIN(__builtin_mips_raddu_w_qb, "iV4Sc", "nc") 44 45 BUILTIN(__builtin_mips_absq_s_ph, "V2sV2s", "n") 46 BUILTIN(__builtin_mips_absq_s_w, "ii", "n") 47 48 BUILTIN(__builtin_mips_precrq_qb_ph, "V4ScV2sV2s", "nc") 49 BUILTIN(__builtin_mips_precrqu_s_qb_ph, "V4ScV2sV2s", "n") 50 BUILTIN(__builtin_mips_precrq_ph_w, "V2sii", "nc") 51 BUILTIN(__builtin_mips_precrq_rs_ph_w, "V2sii", "n") 52 BUILTIN(__builtin_mips_preceq_w_phl, "iV2s", "nc") 53 BUILTIN(__builtin_mips_preceq_w_phr, "iV2s", "nc") 54 BUILTIN(__builtin_mips_precequ_ph_qbl, "V2sV4Sc", "nc") 55 BUILTIN(__builtin_mips_precequ_ph_qbr, "V2sV4Sc", "nc") 56 BUILTIN(__builtin_mips_precequ_ph_qbla, "V2sV4Sc", "nc") 57 BUILTIN(__builtin_mips_precequ_ph_qbra, "V2sV4Sc", "nc") 58 BUILTIN(__builtin_mips_preceu_ph_qbl, "V2sV4Sc", "nc") 59 BUILTIN(__builtin_mips_preceu_ph_qbr, "V2sV4Sc", "nc") 60 BUILTIN(__builtin_mips_preceu_ph_qbla, "V2sV4Sc", "nc") 61 BUILTIN(__builtin_mips_preceu_ph_qbra, "V2sV4Sc", "nc") 62 63 BUILTIN(__builtin_mips_shll_qb, "V4ScV4Sci", "n") 64 BUILTIN(__builtin_mips_shrl_qb, "V4ScV4Sci", "nc") 65 BUILTIN(__builtin_mips_shll_ph, "V2sV2si", "n") 66 BUILTIN(__builtin_mips_shll_s_ph, "V2sV2si", "n") 67 BUILTIN(__builtin_mips_shra_ph, "V2sV2si", "nc") 68 BUILTIN(__builtin_mips_shra_r_ph, "V2sV2si", "nc") 69 BUILTIN(__builtin_mips_shll_s_w, "iii", "n") 70 BUILTIN(__builtin_mips_shra_r_w, "iii", "nc") 71 BUILTIN(__builtin_mips_shilo, "LLiLLii", "nc") 72 73 BUILTIN(__builtin_mips_muleu_s_ph_qbl, "V2sV4ScV2s", "n") 74 BUILTIN(__builtin_mips_muleu_s_ph_qbr, "V2sV4ScV2s", "n") 75 BUILTIN(__builtin_mips_mulq_rs_ph, "V2sV2sV2s", "n") 76 BUILTIN(__builtin_mips_muleq_s_w_phl, "iV2sV2s", "n") 77 BUILTIN(__builtin_mips_muleq_s_w_phr, "iV2sV2s", "n") 78 BUILTIN(__builtin_mips_mulsaq_s_w_ph, "LLiLLiV2sV2s", "n") 79 BUILTIN(__builtin_mips_maq_s_w_phl, "LLiLLiV2sV2s", "n") 80 BUILTIN(__builtin_mips_maq_s_w_phr, "LLiLLiV2sV2s", "n") 81 BUILTIN(__builtin_mips_maq_sa_w_phl, "LLiLLiV2sV2s", "n") 82 BUILTIN(__builtin_mips_maq_sa_w_phr, "LLiLLiV2sV2s", "n") 83 BUILTIN(__builtin_mips_mult, "LLiii", "nc") 84 BUILTIN(__builtin_mips_multu, "LLiUiUi", "nc") 85 86 BUILTIN(__builtin_mips_dpau_h_qbl, "LLiLLiV4ScV4Sc", "nc") 87 BUILTIN(__builtin_mips_dpau_h_qbr, "LLiLLiV4ScV4Sc", "nc") 88 BUILTIN(__builtin_mips_dpsu_h_qbl, "LLiLLiV4ScV4Sc", "nc") 89 BUILTIN(__builtin_mips_dpsu_h_qbr, "LLiLLiV4ScV4Sc", "nc") 90 BUILTIN(__builtin_mips_dpaq_s_w_ph, "LLiLLiV2sV2s", "n") 91 BUILTIN(__builtin_mips_dpsq_s_w_ph, "LLiLLiV2sV2s", "n") 92 BUILTIN(__builtin_mips_dpaq_sa_l_w, "LLiLLiii", "n") 93 BUILTIN(__builtin_mips_dpsq_sa_l_w, "LLiLLiii", "n") 94 95 BUILTIN(__builtin_mips_cmpu_eq_qb, "vV4ScV4Sc", "n") 96 BUILTIN(__builtin_mips_cmpu_lt_qb, "vV4ScV4Sc", "n") 97 BUILTIN(__builtin_mips_cmpu_le_qb, "vV4ScV4Sc", "n") 98 BUILTIN(__builtin_mips_cmpgu_eq_qb, "iV4ScV4Sc", "n") 99 BUILTIN(__builtin_mips_cmpgu_lt_qb, "iV4ScV4Sc", "n") 100 BUILTIN(__builtin_mips_cmpgu_le_qb, "iV4ScV4Sc", "n") 101 BUILTIN(__builtin_mips_cmp_eq_ph, "vV2sV2s", "n") 102 BUILTIN(__builtin_mips_cmp_lt_ph, "vV2sV2s", "n") 103 BUILTIN(__builtin_mips_cmp_le_ph, "vV2sV2s", "n") 104 105 BUILTIN(__builtin_mips_extr_s_h, "iLLii", "n") 106 BUILTIN(__builtin_mips_extr_w, "iLLii", "n") 107 BUILTIN(__builtin_mips_extr_rs_w, "iLLii", "n") 108 BUILTIN(__builtin_mips_extr_r_w, "iLLii", "n") 109 BUILTIN(__builtin_mips_extp, "iLLii", "n") 110 BUILTIN(__builtin_mips_extpdp, "iLLii", "n") 111 112 BUILTIN(__builtin_mips_wrdsp, "viIi", "n") 113 BUILTIN(__builtin_mips_rddsp, "iIi", "n") 114 BUILTIN(__builtin_mips_insv, "iii", "n") 115 BUILTIN(__builtin_mips_bitrev, "ii", "nc") 116 BUILTIN(__builtin_mips_packrl_ph, "V2sV2sV2s", "nc") 117 BUILTIN(__builtin_mips_repl_qb, "V4Sci", "nc") 118 BUILTIN(__builtin_mips_repl_ph, "V2si", "nc") 119 BUILTIN(__builtin_mips_pick_qb, "V4ScV4ScV4Sc", "n") 120 BUILTIN(__builtin_mips_pick_ph, "V2sV2sV2s", "n") 121 BUILTIN(__builtin_mips_mthlip, "LLiLLii", "n") 122 BUILTIN(__builtin_mips_bposge32, "i", "n") 123 BUILTIN(__builtin_mips_lbux, "iv*i", "n") 124 BUILTIN(__builtin_mips_lhx, "iv*i", "n") 125 BUILTIN(__builtin_mips_lwx, "iv*i", "n") 126 127 // MIPS DSP Rev 2 128 129 BUILTIN(__builtin_mips_absq_s_qb, "V4ScV4Sc", "n") 130 131 BUILTIN(__builtin_mips_addqh_ph, "V2sV2sV2s", "nc") 132 BUILTIN(__builtin_mips_addqh_r_ph, "V2sV2sV2s", "nc") 133 BUILTIN(__builtin_mips_addqh_w, "iii", "nc") 134 BUILTIN(__builtin_mips_addqh_r_w, "iii", "nc") 135 136 BUILTIN(__builtin_mips_addu_ph, "V2sV2sV2s", "n") 137 BUILTIN(__builtin_mips_addu_s_ph, "V2sV2sV2s", "n") 138 139 BUILTIN(__builtin_mips_adduh_qb, "V4ScV4ScV4Sc", "nc") 140 BUILTIN(__builtin_mips_adduh_r_qb, "V4ScV4ScV4Sc", "nc") 141 142 BUILTIN(__builtin_mips_append, "iiiIi", "nc") 143 BUILTIN(__builtin_mips_balign, "iiiIi", "nc") 144 145 BUILTIN(__builtin_mips_cmpgdu_eq_qb, "iV4ScV4Sc", "n") 146 BUILTIN(__builtin_mips_cmpgdu_lt_qb, "iV4ScV4Sc", "n") 147 BUILTIN(__builtin_mips_cmpgdu_le_qb, "iV4ScV4Sc", "n") 148 149 BUILTIN(__builtin_mips_dpa_w_ph, "LLiLLiV2sV2s", "nc") 150 BUILTIN(__builtin_mips_dps_w_ph, "LLiLLiV2sV2s", "nc") 151 152 BUILTIN(__builtin_mips_dpaqx_s_w_ph, "LLiLLiV2sV2s", "n") 153 BUILTIN(__builtin_mips_dpaqx_sa_w_ph, "LLiLLiV2sV2s", "n") 154 BUILTIN(__builtin_mips_dpax_w_ph, "LLiLLiV2sV2s", "nc") 155 BUILTIN(__builtin_mips_dpsx_w_ph, "LLiLLiV2sV2s", "nc") 156 BUILTIN(__builtin_mips_dpsqx_s_w_ph, "LLiLLiV2sV2s", "n") 157 BUILTIN(__builtin_mips_dpsqx_sa_w_ph, "LLiLLiV2sV2s", "n") 158 159 BUILTIN(__builtin_mips_mul_ph, "V2sV2sV2s", "n") 160 BUILTIN(__builtin_mips_mul_s_ph, "V2sV2sV2s", "n") 161 162 BUILTIN(__builtin_mips_mulq_rs_w, "iii", "n") 163 BUILTIN(__builtin_mips_mulq_s_ph, "V2sV2sV2s", "n") 164 BUILTIN(__builtin_mips_mulq_s_w, "iii", "n") 165 BUILTIN(__builtin_mips_mulsa_w_ph, "LLiLLiV2sV2s", "nc") 166 167 BUILTIN(__builtin_mips_precr_qb_ph, "V4ScV2sV2s", "n") 168 BUILTIN(__builtin_mips_precr_sra_ph_w, "V2siiIi", "nc") 169 BUILTIN(__builtin_mips_precr_sra_r_ph_w, "V2siiIi", "nc") 170 171 BUILTIN(__builtin_mips_prepend, "iiiIi", "nc") 172 173 BUILTIN(__builtin_mips_shra_qb, "V4ScV4Sci", "nc") 174 BUILTIN(__builtin_mips_shra_r_qb, "V4ScV4Sci", "nc") 175 BUILTIN(__builtin_mips_shrl_ph, "V2sV2si", "nc") 176 177 BUILTIN(__builtin_mips_subqh_ph, "V2sV2sV2s", "nc") 178 BUILTIN(__builtin_mips_subqh_r_ph, "V2sV2sV2s", "nc") 179 BUILTIN(__builtin_mips_subqh_w, "iii", "nc") 180 BUILTIN(__builtin_mips_subqh_r_w, "iii", "nc") 181 182 BUILTIN(__builtin_mips_subu_ph, "V2sV2sV2s", "n") 183 BUILTIN(__builtin_mips_subu_s_ph, "V2sV2sV2s", "n") 184 185 BUILTIN(__builtin_mips_subuh_qb, "V4ScV4ScV4Sc", "nc") 186 BUILTIN(__builtin_mips_subuh_r_qb, "V4ScV4ScV4Sc", "nc") 187 188 // MIPS MSA 189 190 BUILTIN(__builtin_msa_add_a_b, "V16ScV16ScV16Sc", "nc") 191 BUILTIN(__builtin_msa_add_a_h, "V8SsV8SsV8Ss", "nc") 192 BUILTIN(__builtin_msa_add_a_w, "V4SiV4SiV4Si", "nc") 193 BUILTIN(__builtin_msa_add_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 194 195 BUILTIN(__builtin_msa_adds_a_b, "V16ScV16ScV16Sc", "nc") 196 BUILTIN(__builtin_msa_adds_a_h, "V8SsV8SsV8Ss", "nc") 197 BUILTIN(__builtin_msa_adds_a_w, "V4SiV4SiV4Si", "nc") 198 BUILTIN(__builtin_msa_adds_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 199 200 BUILTIN(__builtin_msa_adds_s_b, "V16ScV16ScV16Sc", "nc") 201 BUILTIN(__builtin_msa_adds_s_h, "V8SsV8SsV8Ss", "nc") 202 BUILTIN(__builtin_msa_adds_s_w, "V4SiV4SiV4Si", "nc") 203 BUILTIN(__builtin_msa_adds_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 204 205 BUILTIN(__builtin_msa_adds_u_b, "V16UcV16UcV16Uc", "nc") 206 BUILTIN(__builtin_msa_adds_u_h, "V8UsV8UsV8Us", "nc") 207 BUILTIN(__builtin_msa_adds_u_w, "V4UiV4UiV4Ui", "nc") 208 BUILTIN(__builtin_msa_adds_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 209 210 BUILTIN(__builtin_msa_addv_b, "V16cV16cV16c", "nc") 211 BUILTIN(__builtin_msa_addv_h, "V8sV8sV8s", "nc") 212 BUILTIN(__builtin_msa_addv_w, "V4iV4iV4i", "nc") 213 BUILTIN(__builtin_msa_addv_d, "V2LLiV2LLiV2LLi", "nc") 214 215 BUILTIN(__builtin_msa_addvi_b, "V16cV16cIUi", "nc") 216 BUILTIN(__builtin_msa_addvi_h, "V8sV8sIUi", "nc") 217 BUILTIN(__builtin_msa_addvi_w, "V4iV4iIUi", "nc") 218 BUILTIN(__builtin_msa_addvi_d, "V2LLiV2LLiIUi", "nc") 219 220 BUILTIN(__builtin_msa_and_v, "V16UcV16UcV16Uc", "nc") 221 222 BUILTIN(__builtin_msa_andi_b, "V16UcV16UcIUi", "nc") 223 224 BUILTIN(__builtin_msa_asub_s_b, "V16ScV16ScV16Sc", "nc") 225 BUILTIN(__builtin_msa_asub_s_h, "V8SsV8SsV8Ss", "nc") 226 BUILTIN(__builtin_msa_asub_s_w, "V4SiV4SiV4Si", "nc") 227 BUILTIN(__builtin_msa_asub_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 228 229 BUILTIN(__builtin_msa_asub_u_b, "V16UcV16UcV16Uc", "nc") 230 BUILTIN(__builtin_msa_asub_u_h, "V8UsV8UsV8Us", "nc") 231 BUILTIN(__builtin_msa_asub_u_w, "V4UiV4UiV4Ui", "nc") 232 BUILTIN(__builtin_msa_asub_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 233 234 BUILTIN(__builtin_msa_ave_s_b, "V16ScV16ScV16Sc", "nc") 235 BUILTIN(__builtin_msa_ave_s_h, "V8SsV8SsV8Ss", "nc") 236 BUILTIN(__builtin_msa_ave_s_w, "V4SiV4SiV4Si", "nc") 237 BUILTIN(__builtin_msa_ave_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 238 239 BUILTIN(__builtin_msa_ave_u_b, "V16UcV16UcV16Uc", "nc") 240 BUILTIN(__builtin_msa_ave_u_h, "V8UsV8UsV8Us", "nc") 241 BUILTIN(__builtin_msa_ave_u_w, "V4UiV4UiV4Ui", "nc") 242 BUILTIN(__builtin_msa_ave_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 243 244 BUILTIN(__builtin_msa_aver_s_b, "V16ScV16ScV16Sc", "nc") 245 BUILTIN(__builtin_msa_aver_s_h, "V8SsV8SsV8Ss", "nc") 246 BUILTIN(__builtin_msa_aver_s_w, "V4SiV4SiV4Si", "nc") 247 BUILTIN(__builtin_msa_aver_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 248 249 BUILTIN(__builtin_msa_aver_u_b, "V16UcV16UcV16Uc", "nc") 250 BUILTIN(__builtin_msa_aver_u_h, "V8UsV8UsV8Us", "nc") 251 BUILTIN(__builtin_msa_aver_u_w, "V4UiV4UiV4Ui", "nc") 252 BUILTIN(__builtin_msa_aver_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 253 254 BUILTIN(__builtin_msa_bclr_b, "V16UcV16UcV16Uc", "nc") 255 BUILTIN(__builtin_msa_bclr_h, "V8UsV8UsV8Us", "nc") 256 BUILTIN(__builtin_msa_bclr_w, "V4UiV4UiV4Ui", "nc") 257 BUILTIN(__builtin_msa_bclr_d, "V2ULLiV2ULLiV2ULLi", "nc") 258 259 BUILTIN(__builtin_msa_bclri_b, "V16UcV16UcIUi", "nc") 260 BUILTIN(__builtin_msa_bclri_h, "V8UsV8UsIUi", "nc") 261 BUILTIN(__builtin_msa_bclri_w, "V4UiV4UiIUi", "nc") 262 BUILTIN(__builtin_msa_bclri_d, "V2ULLiV2ULLiIUi", "nc") 263 264 BUILTIN(__builtin_msa_binsl_b, "V16UcV16UcV16UcV16Uc", "nc") 265 BUILTIN(__builtin_msa_binsl_h, "V8UsV8UsV8UsV8Us", "nc") 266 BUILTIN(__builtin_msa_binsl_w, "V4UiV4UiV4UiV4Ui", "nc") 267 BUILTIN(__builtin_msa_binsl_d, "V2ULLiV2ULLiV2ULLiV2ULLi", "nc") 268 269 BUILTIN(__builtin_msa_binsli_b, "V16UcV16UcV16UcIUi", "nc") 270 BUILTIN(__builtin_msa_binsli_h, "V8UsV8UsV8UsIUi", "nc") 271 BUILTIN(__builtin_msa_binsli_w, "V4UiV4UiV4UiIUi", "nc") 272 BUILTIN(__builtin_msa_binsli_d, "V2ULLiV2ULLiV2ULLiIUi", "nc") 273 274 BUILTIN(__builtin_msa_binsr_b, "V16UcV16UcV16UcV16Uc", "nc") 275 BUILTIN(__builtin_msa_binsr_h, "V8UsV8UsV8UsV8Us", "nc") 276 BUILTIN(__builtin_msa_binsr_w, "V4UiV4UiV4UiV4Ui", "nc") 277 BUILTIN(__builtin_msa_binsr_d, "V2ULLiV2ULLiV2ULLiV2ULLi", "nc") 278 279 BUILTIN(__builtin_msa_binsri_b, "V16UcV16UcV16UcIUi", "nc") 280 BUILTIN(__builtin_msa_binsri_h, "V8UsV8UsV8UsIUi", "nc") 281 BUILTIN(__builtin_msa_binsri_w, "V4UiV4UiV4UiIUi", "nc") 282 BUILTIN(__builtin_msa_binsri_d, "V2ULLiV2ULLiV2ULLiIUi", "nc") 283 284 BUILTIN(__builtin_msa_bmnz_v, "V16UcV16UcV16UcV16Uc", "nc") 285 286 BUILTIN(__builtin_msa_bmnzi_b, "V16UcV16UcV16UcIUi", "nc") 287 288 BUILTIN(__builtin_msa_bmz_v, "V16UcV16UcV16UcV16Uc", "nc") 289 290 BUILTIN(__builtin_msa_bmzi_b, "V16UcV16UcV16UcIUi", "nc") 291 292 BUILTIN(__builtin_msa_bneg_b, "V16UcV16UcV16Uc", "nc") 293 BUILTIN(__builtin_msa_bneg_h, "V8UsV8UsV8Us", "nc") 294 BUILTIN(__builtin_msa_bneg_w, "V4UiV4UiV4Ui", "nc") 295 BUILTIN(__builtin_msa_bneg_d, "V2ULLiV2ULLiV2ULLi", "nc") 296 297 BUILTIN(__builtin_msa_bnegi_b, "V16UcV16UcIUi", "nc") 298 BUILTIN(__builtin_msa_bnegi_h, "V8UsV8UsIUi", "nc") 299 BUILTIN(__builtin_msa_bnegi_w, "V4UiV4UiIUi", "nc") 300 BUILTIN(__builtin_msa_bnegi_d, "V2ULLiV2ULLiIUi", "nc") 301 302 BUILTIN(__builtin_msa_bnz_b, "iV16Uc", "nc") 303 BUILTIN(__builtin_msa_bnz_h, "iV8Us", "nc") 304 BUILTIN(__builtin_msa_bnz_w, "iV4Ui", "nc") 305 BUILTIN(__builtin_msa_bnz_d, "iV2ULLi", "nc") 306 307 BUILTIN(__builtin_msa_bnz_v, "iV16Uc", "nc") 308 309 BUILTIN(__builtin_msa_bsel_v, "V16UcV16UcV16UcV16Uc", "nc") 310 311 BUILTIN(__builtin_msa_bseli_b, "V16UcV16UcV16UcIUi", "nc") 312 313 BUILTIN(__builtin_msa_bset_b, "V16UcV16UcV16Uc", "nc") 314 BUILTIN(__builtin_msa_bset_h, "V8UsV8UsV8Us", "nc") 315 BUILTIN(__builtin_msa_bset_w, "V4UiV4UiV4Ui", "nc") 316 BUILTIN(__builtin_msa_bset_d, "V2ULLiV2ULLiV2ULLi", "nc") 317 318 BUILTIN(__builtin_msa_bseti_b, "V16UcV16UcIUi", "nc") 319 BUILTIN(__builtin_msa_bseti_h, "V8UsV8UsIUi", "nc") 320 BUILTIN(__builtin_msa_bseti_w, "V4UiV4UiIUi", "nc") 321 BUILTIN(__builtin_msa_bseti_d, "V2ULLiV2ULLiIUi", "nc") 322 323 BUILTIN(__builtin_msa_bz_b, "iV16Uc", "nc") 324 BUILTIN(__builtin_msa_bz_h, "iV8Us", "nc") 325 BUILTIN(__builtin_msa_bz_w, "iV4Ui", "nc") 326 BUILTIN(__builtin_msa_bz_d, "iV2ULLi", "nc") 327 328 BUILTIN(__builtin_msa_bz_v, "iV16Uc", "nc") 329 330 BUILTIN(__builtin_msa_ceq_b, "V16ScV16ScV16Sc", "nc") 331 BUILTIN(__builtin_msa_ceq_h, "V8SsV8SsV8Ss", "nc") 332 BUILTIN(__builtin_msa_ceq_w, "V4SiV4SiV4Si", "nc") 333 BUILTIN(__builtin_msa_ceq_d, "V2SLLiV2SLLiV2SLLi", "nc") 334 335 BUILTIN(__builtin_msa_ceqi_b, "V16ScV16ScISi", "nc") 336 BUILTIN(__builtin_msa_ceqi_h, "V8SsV8SsISi", "nc") 337 BUILTIN(__builtin_msa_ceqi_w, "V4SiV4SiISi", "nc") 338 BUILTIN(__builtin_msa_ceqi_d, "V2SLLiV2SLLiISi", "nc") 339 340 BUILTIN(__builtin_msa_cfcmsa, "iIi", "n") 341 342 BUILTIN(__builtin_msa_cle_s_b, "V16ScV16ScV16Sc", "nc") 343 BUILTIN(__builtin_msa_cle_s_h, "V8SsV8SsV8Ss", "nc") 344 BUILTIN(__builtin_msa_cle_s_w, "V4SiV4SiV4Si", "nc") 345 BUILTIN(__builtin_msa_cle_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 346 347 BUILTIN(__builtin_msa_cle_u_b, "V16ScV16UcV16Uc", "nc") 348 BUILTIN(__builtin_msa_cle_u_h, "V8SsV8UsV8Us", "nc") 349 BUILTIN(__builtin_msa_cle_u_w, "V4SiV4UiV4Ui", "nc") 350 BUILTIN(__builtin_msa_cle_u_d, "V2SLLiV2ULLiV2ULLi", "nc") 351 352 BUILTIN(__builtin_msa_clei_s_b, "V16ScV16ScISi", "nc") 353 BUILTIN(__builtin_msa_clei_s_h, "V8SsV8SsISi", "nc") 354 BUILTIN(__builtin_msa_clei_s_w, "V4SiV4SiISi", "nc") 355 BUILTIN(__builtin_msa_clei_s_d, "V2SLLiV2SLLiISi", "nc") 356 357 BUILTIN(__builtin_msa_clei_u_b, "V16ScV16UcIUi", "nc") 358 BUILTIN(__builtin_msa_clei_u_h, "V8SsV8UsIUi", "nc") 359 BUILTIN(__builtin_msa_clei_u_w, "V4SiV4UiIUi", "nc") 360 BUILTIN(__builtin_msa_clei_u_d, "V2SLLiV2ULLiIUi", "nc") 361 362 BUILTIN(__builtin_msa_clt_s_b, "V16ScV16ScV16Sc", "nc") 363 BUILTIN(__builtin_msa_clt_s_h, "V8SsV8SsV8Ss", "nc") 364 BUILTIN(__builtin_msa_clt_s_w, "V4SiV4SiV4Si", "nc") 365 BUILTIN(__builtin_msa_clt_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 366 367 BUILTIN(__builtin_msa_clt_u_b, "V16ScV16UcV16Uc", "nc") 368 BUILTIN(__builtin_msa_clt_u_h, "V8SsV8UsV8Us", "nc") 369 BUILTIN(__builtin_msa_clt_u_w, "V4SiV4UiV4Ui", "nc") 370 BUILTIN(__builtin_msa_clt_u_d, "V2SLLiV2ULLiV2ULLi", "nc") 371 372 BUILTIN(__builtin_msa_clti_s_b, "V16ScV16ScISi", "nc") 373 BUILTIN(__builtin_msa_clti_s_h, "V8SsV8SsISi", "nc") 374 BUILTIN(__builtin_msa_clti_s_w, "V4SiV4SiISi", "nc") 375 BUILTIN(__builtin_msa_clti_s_d, "V2SLLiV2SLLiISi", "nc") 376 377 BUILTIN(__builtin_msa_clti_u_b, "V16ScV16UcIUi", "nc") 378 BUILTIN(__builtin_msa_clti_u_h, "V8SsV8UsIUi", "nc") 379 BUILTIN(__builtin_msa_clti_u_w, "V4SiV4UiIUi", "nc") 380 BUILTIN(__builtin_msa_clti_u_d, "V2SLLiV2ULLiIUi", "nc") 381 382 BUILTIN(__builtin_msa_copy_s_b, "iV16ScIUi", "nc") 383 BUILTIN(__builtin_msa_copy_s_h, "iV8SsIUi", "nc") 384 BUILTIN(__builtin_msa_copy_s_w, "iV4SiIUi", "nc") 385 BUILTIN(__builtin_msa_copy_s_d, "LLiV2SLLiIUi", "nc") 386 387 BUILTIN(__builtin_msa_copy_u_b, "iV16UcIUi", "nc") 388 BUILTIN(__builtin_msa_copy_u_h, "iV8UsIUi", "nc") 389 BUILTIN(__builtin_msa_copy_u_w, "iV4UiIUi", "nc") 390 BUILTIN(__builtin_msa_copy_u_d, "LLiV2ULLiIUi", "nc") 391 392 BUILTIN(__builtin_msa_ctcmsa, "vIii", "n") 393 394 BUILTIN(__builtin_msa_div_s_b, "V16ScV16ScV16Sc", "nc") 395 BUILTIN(__builtin_msa_div_s_h, "V8SsV8SsV8Ss", "nc") 396 BUILTIN(__builtin_msa_div_s_w, "V4SiV4SiV4Si", "nc") 397 BUILTIN(__builtin_msa_div_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 398 399 BUILTIN(__builtin_msa_div_u_b, "V16UcV16UcV16Uc", "nc") 400 BUILTIN(__builtin_msa_div_u_h, "V8UsV8UsV8Us", "nc") 401 BUILTIN(__builtin_msa_div_u_w, "V4UiV4UiV4Ui", "nc") 402 BUILTIN(__builtin_msa_div_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 403 404 BUILTIN(__builtin_msa_dotp_s_h, "V8SsV16ScV16Sc", "nc") 405 BUILTIN(__builtin_msa_dotp_s_w, "V4SiV8SsV8Ss", "nc") 406 BUILTIN(__builtin_msa_dotp_s_d, "V2SLLiV4SiV4Si", "nc") 407 408 BUILTIN(__builtin_msa_dotp_u_h, "V8UsV16UcV16Uc", "nc") 409 BUILTIN(__builtin_msa_dotp_u_w, "V4UiV8UsV8Us", "nc") 410 BUILTIN(__builtin_msa_dotp_u_d, "V2ULLiV4UiV4Ui", "nc") 411 412 BUILTIN(__builtin_msa_dpadd_s_h, "V8SsV8SsV16ScV16Sc", "nc") 413 BUILTIN(__builtin_msa_dpadd_s_w, "V4SiV4SiV8SsV8Ss", "nc") 414 BUILTIN(__builtin_msa_dpadd_s_d, "V2SLLiV2SLLiV4SiV4Si", "nc") 415 416 BUILTIN(__builtin_msa_dpadd_u_h, "V8UsV8UsV16UcV16Uc", "nc") 417 BUILTIN(__builtin_msa_dpadd_u_w, "V4UiV4UiV8UsV8Us", "nc") 418 BUILTIN(__builtin_msa_dpadd_u_d, "V2ULLiV2ULLiV4UiV4Ui", "nc") 419 420 BUILTIN(__builtin_msa_dpsub_s_h, "V8SsV8SsV16ScV16Sc", "nc") 421 BUILTIN(__builtin_msa_dpsub_s_w, "V4SiV4SiV8SsV8Ss", "nc") 422 BUILTIN(__builtin_msa_dpsub_s_d, "V2SLLiV2SLLiV4SiV4Si", "nc") 423 424 BUILTIN(__builtin_msa_dpsub_u_h, "V8UsV8UsV16UcV16Uc", "nc") 425 BUILTIN(__builtin_msa_dpsub_u_w, "V4UiV4UiV8UsV8Us", "nc") 426 BUILTIN(__builtin_msa_dpsub_u_d, "V2ULLiV2ULLiV4UiV4Ui", "nc") 427 428 BUILTIN(__builtin_msa_fadd_w, "V4fV4fV4f", "nc") 429 BUILTIN(__builtin_msa_fadd_d, "V2dV2dV2d", "nc") 430 431 BUILTIN(__builtin_msa_fcaf_w, "V4iV4fV4f", "nc") 432 BUILTIN(__builtin_msa_fcaf_d, "V2LLiV2dV2d", "nc") 433 434 BUILTIN(__builtin_msa_fceq_w, "V4iV4fV4f", "nc") 435 BUILTIN(__builtin_msa_fceq_d, "V2LLiV2dV2d", "nc") 436 437 BUILTIN(__builtin_msa_fclass_w, "V4iV4f", "nc") 438 BUILTIN(__builtin_msa_fclass_d, "V2LLiV2d", "nc") 439 440 BUILTIN(__builtin_msa_fcle_w, "V4iV4fV4f", "nc") 441 BUILTIN(__builtin_msa_fcle_d, "V2LLiV2dV2d", "nc") 442 443 BUILTIN(__builtin_msa_fclt_w, "V4iV4fV4f", "nc") 444 BUILTIN(__builtin_msa_fclt_d, "V2LLiV2dV2d", "nc") 445 446 BUILTIN(__builtin_msa_fcne_w, "V4iV4fV4f", "nc") 447 BUILTIN(__builtin_msa_fcne_d, "V2LLiV2dV2d", "nc") 448 449 BUILTIN(__builtin_msa_fcor_w, "V4iV4fV4f", "nc") 450 BUILTIN(__builtin_msa_fcor_d, "V2LLiV2dV2d", "nc") 451 452 BUILTIN(__builtin_msa_fcueq_w, "V4iV4fV4f", "nc") 453 BUILTIN(__builtin_msa_fcueq_d, "V2LLiV2dV2d", "nc") 454 455 BUILTIN(__builtin_msa_fcule_w, "V4iV4fV4f", "nc") 456 BUILTIN(__builtin_msa_fcule_d, "V2LLiV2dV2d", "nc") 457 458 BUILTIN(__builtin_msa_fcult_w, "V4iV4fV4f", "nc") 459 BUILTIN(__builtin_msa_fcult_d, "V2LLiV2dV2d", "nc") 460 461 BUILTIN(__builtin_msa_fcun_w, "V4iV4fV4f", "nc") 462 BUILTIN(__builtin_msa_fcun_d, "V2LLiV2dV2d", "nc") 463 464 BUILTIN(__builtin_msa_fcune_w, "V4iV4fV4f", "nc") 465 BUILTIN(__builtin_msa_fcune_d, "V2LLiV2dV2d", "nc") 466 467 BUILTIN(__builtin_msa_fdiv_w, "V4fV4fV4f", "nc") 468 BUILTIN(__builtin_msa_fdiv_d, "V2dV2dV2d", "nc") 469 470 BUILTIN(__builtin_msa_fexdo_h, "V8hV4fV4f", "nc") 471 BUILTIN(__builtin_msa_fexdo_w, "V4fV2dV2d", "nc") 472 473 BUILTIN(__builtin_msa_fexp2_w, "V4fV4fV4i", "nc") 474 BUILTIN(__builtin_msa_fexp2_d, "V2dV2dV2LLi", "nc") 475 476 BUILTIN(__builtin_msa_fexupl_w, "V4fV8h", "nc") 477 BUILTIN(__builtin_msa_fexupl_d, "V2dV4f", "nc") 478 479 BUILTIN(__builtin_msa_fexupr_w, "V4fV8h", "nc") 480 BUILTIN(__builtin_msa_fexupr_d, "V2dV4f", "nc") 481 482 BUILTIN(__builtin_msa_ffint_s_w, "V4fV4Si", "nc") 483 BUILTIN(__builtin_msa_ffint_s_d, "V2dV2SLLi", "nc") 484 485 BUILTIN(__builtin_msa_ffint_u_w, "V4fV4Ui", "nc") 486 BUILTIN(__builtin_msa_ffint_u_d, "V2dV2ULLi", "nc") 487 488 // ffql uses integers since long _Fract is not implemented 489 BUILTIN(__builtin_msa_ffql_w, "V4fV8Ss", "nc") 490 BUILTIN(__builtin_msa_ffql_d, "V2dV4Si", "nc") 491 492 // ffqr uses integers since long _Fract is not implemented 493 BUILTIN(__builtin_msa_ffqr_w, "V4fV8Ss", "nc") 494 BUILTIN(__builtin_msa_ffqr_d, "V2dV4Si", "nc") 495 496 BUILTIN(__builtin_msa_fill_b, "V16Sci", "nc") 497 BUILTIN(__builtin_msa_fill_h, "V8Ssi", "nc") 498 BUILTIN(__builtin_msa_fill_w, "V4Sii", "nc") 499 BUILTIN(__builtin_msa_fill_d, "V2SLLiLLi", "nc") 500 501 BUILTIN(__builtin_msa_flog2_w, "V4fV4f", "nc") 502 BUILTIN(__builtin_msa_flog2_d, "V2dV2d", "nc") 503 504 BUILTIN(__builtin_msa_fmadd_w, "V4fV4fV4fV4f", "nc") 505 BUILTIN(__builtin_msa_fmadd_d, "V2dV2dV2dV2d", "nc") 506 507 BUILTIN(__builtin_msa_fmax_w, "V4fV4fV4f", "nc") 508 BUILTIN(__builtin_msa_fmax_d, "V2dV2dV2d", "nc") 509 510 BUILTIN(__builtin_msa_fmax_a_w, "V4fV4fV4f", "nc") 511 BUILTIN(__builtin_msa_fmax_a_d, "V2dV2dV2d", "nc") 512 513 BUILTIN(__builtin_msa_fmin_w, "V4fV4fV4f", "nc") 514 BUILTIN(__builtin_msa_fmin_d, "V2dV2dV2d", "nc") 515 516 BUILTIN(__builtin_msa_fmin_a_w, "V4fV4fV4f", "nc") 517 BUILTIN(__builtin_msa_fmin_a_d, "V2dV2dV2d", "nc") 518 519 BUILTIN(__builtin_msa_fmsub_w, "V4fV4fV4fV4f", "nc") 520 BUILTIN(__builtin_msa_fmsub_d, "V2dV2dV2dV2d", "nc") 521 522 BUILTIN(__builtin_msa_fmul_w, "V4fV4fV4f", "nc") 523 BUILTIN(__builtin_msa_fmul_d, "V2dV2dV2d", "nc") 524 525 BUILTIN(__builtin_msa_frint_w, "V4fV4f", "nc") 526 BUILTIN(__builtin_msa_frint_d, "V2dV2d", "nc") 527 528 BUILTIN(__builtin_msa_frcp_w, "V4fV4f", "nc") 529 BUILTIN(__builtin_msa_frcp_d, "V2dV2d", "nc") 530 531 BUILTIN(__builtin_msa_frsqrt_w, "V4fV4f", "nc") 532 BUILTIN(__builtin_msa_frsqrt_d, "V2dV2d", "nc") 533 534 BUILTIN(__builtin_msa_fsaf_w, "V4iV4fV4f", "nc") 535 BUILTIN(__builtin_msa_fsaf_d, "V2LLiV2dV2d", "nc") 536 537 BUILTIN(__builtin_msa_fseq_w, "V4iV4fV4f", "nc") 538 BUILTIN(__builtin_msa_fseq_d, "V2LLiV2dV2d", "nc") 539 540 BUILTIN(__builtin_msa_fsle_w, "V4iV4fV4f", "nc") 541 BUILTIN(__builtin_msa_fsle_d, "V2LLiV2dV2d", "nc") 542 543 BUILTIN(__builtin_msa_fslt_w, "V4iV4fV4f", "nc") 544 BUILTIN(__builtin_msa_fslt_d, "V2LLiV2dV2d", "nc") 545 546 BUILTIN(__builtin_msa_fsne_w, "V4iV4fV4f", "nc") 547 BUILTIN(__builtin_msa_fsne_d, "V2LLiV2dV2d", "nc") 548 549 BUILTIN(__builtin_msa_fsor_w, "V4iV4fV4f", "nc") 550 BUILTIN(__builtin_msa_fsor_d, "V2LLiV2dV2d", "nc") 551 552 BUILTIN(__builtin_msa_fsqrt_w, "V4fV4f", "nc") 553 BUILTIN(__builtin_msa_fsqrt_d, "V2dV2d", "nc") 554 555 BUILTIN(__builtin_msa_fsub_w, "V4fV4fV4f", "nc") 556 BUILTIN(__builtin_msa_fsub_d, "V2dV2dV2d", "nc") 557 558 BUILTIN(__builtin_msa_fsueq_w, "V4iV4fV4f", "nc") 559 BUILTIN(__builtin_msa_fsueq_d, "V2LLiV2dV2d", "nc") 560 561 BUILTIN(__builtin_msa_fsule_w, "V4iV4fV4f", "nc") 562 BUILTIN(__builtin_msa_fsule_d, "V2LLiV2dV2d", "nc") 563 564 BUILTIN(__builtin_msa_fsult_w, "V4iV4fV4f", "nc") 565 BUILTIN(__builtin_msa_fsult_d, "V2LLiV2dV2d", "nc") 566 567 BUILTIN(__builtin_msa_fsun_w, "V4iV4fV4f", "nc") 568 BUILTIN(__builtin_msa_fsun_d, "V2LLiV2dV2d", "nc") 569 570 BUILTIN(__builtin_msa_fsune_w, "V4iV4fV4f", "nc") 571 BUILTIN(__builtin_msa_fsune_d, "V2LLiV2dV2d", "nc") 572 573 BUILTIN(__builtin_msa_ftint_s_w, "V4SiV4f", "nc") 574 BUILTIN(__builtin_msa_ftint_s_d, "V2SLLiV2d", "nc") 575 576 BUILTIN(__builtin_msa_ftint_u_w, "V4UiV4f", "nc") 577 BUILTIN(__builtin_msa_ftint_u_d, "V2ULLiV2d", "nc") 578 579 BUILTIN(__builtin_msa_ftq_h, "V4UiV4fV4f", "nc") 580 BUILTIN(__builtin_msa_ftq_w, "V2ULLiV2dV2d", "nc") 581 582 BUILTIN(__builtin_msa_ftrunc_s_w, "V4SiV4f", "nc") 583 BUILTIN(__builtin_msa_ftrunc_s_d, "V2SLLiV2d", "nc") 584 585 BUILTIN(__builtin_msa_ftrunc_u_w, "V4UiV4f", "nc") 586 BUILTIN(__builtin_msa_ftrunc_u_d, "V2ULLiV2d", "nc") 587 588 BUILTIN(__builtin_msa_hadd_s_h, "V8SsV16ScV16Sc", "nc") 589 BUILTIN(__builtin_msa_hadd_s_w, "V4SiV8SsV8Ss", "nc") 590 BUILTIN(__builtin_msa_hadd_s_d, "V2SLLiV4SiV4Si", "nc") 591 592 BUILTIN(__builtin_msa_hadd_u_h, "V8UsV16UcV16Uc", "nc") 593 BUILTIN(__builtin_msa_hadd_u_w, "V4UiV8UsV8Us", "nc") 594 BUILTIN(__builtin_msa_hadd_u_d, "V2ULLiV4UiV4Ui", "nc") 595 596 BUILTIN(__builtin_msa_hsub_s_h, "V8SsV16ScV16Sc", "nc") 597 BUILTIN(__builtin_msa_hsub_s_w, "V4SiV8SsV8Ss", "nc") 598 BUILTIN(__builtin_msa_hsub_s_d, "V2SLLiV4SiV4Si", "nc") 599 600 BUILTIN(__builtin_msa_hsub_u_h, "V8UsV16UcV16Uc", "nc") 601 BUILTIN(__builtin_msa_hsub_u_w, "V4UiV8UsV8Us", "nc") 602 BUILTIN(__builtin_msa_hsub_u_d, "V2ULLiV4UiV4Ui", "nc") 603 604 BUILTIN(__builtin_msa_ilvev_b, "V16cV16cV16c", "nc") 605 BUILTIN(__builtin_msa_ilvev_h, "V8sV8sV8s", "nc") 606 BUILTIN(__builtin_msa_ilvev_w, "V4iV4iV4i", "nc") 607 BUILTIN(__builtin_msa_ilvev_d, "V2LLiV2LLiV2LLi", "nc") 608 609 BUILTIN(__builtin_msa_ilvl_b, "V16cV16cV16c", "nc") 610 BUILTIN(__builtin_msa_ilvl_h, "V8sV8sV8s", "nc") 611 BUILTIN(__builtin_msa_ilvl_w, "V4iV4iV4i", "nc") 612 BUILTIN(__builtin_msa_ilvl_d, "V2LLiV2LLiV2LLi", "nc") 613 614 BUILTIN(__builtin_msa_ilvod_b, "V16cV16cV16c", "nc") 615 BUILTIN(__builtin_msa_ilvod_h, "V8sV8sV8s", "nc") 616 BUILTIN(__builtin_msa_ilvod_w, "V4iV4iV4i", "nc") 617 BUILTIN(__builtin_msa_ilvod_d, "V2LLiV2LLiV2LLi", "nc") 618 619 BUILTIN(__builtin_msa_ilvr_b, "V16cV16cV16c", "nc") 620 BUILTIN(__builtin_msa_ilvr_h, "V8sV8sV8s", "nc") 621 BUILTIN(__builtin_msa_ilvr_w, "V4iV4iV4i", "nc") 622 BUILTIN(__builtin_msa_ilvr_d, "V2LLiV2LLiV2LLi", "nc") 623 624 BUILTIN(__builtin_msa_insert_b, "V16ScV16ScIUii", "nc") 625 BUILTIN(__builtin_msa_insert_h, "V8SsV8SsIUii", "nc") 626 BUILTIN(__builtin_msa_insert_w, "V4SiV4SiIUii", "nc") 627 BUILTIN(__builtin_msa_insert_d, "V2SLLiV2SLLiIUiLLi", "nc") 628 629 BUILTIN(__builtin_msa_insve_b, "V16ScV16ScIUiV16Sc", "nc") 630 BUILTIN(__builtin_msa_insve_h, "V8SsV8SsIUiV8Ss", "nc") 631 BUILTIN(__builtin_msa_insve_w, "V4SiV4SiIUiV4Si", "nc") 632 BUILTIN(__builtin_msa_insve_d, "V2SLLiV2SLLiIUiV2SLLi", "nc") 633 634 BUILTIN(__builtin_msa_ld_b, "V16Scv*Ii", "nc") 635 BUILTIN(__builtin_msa_ld_h, "V8Ssv*Ii", "nc") 636 BUILTIN(__builtin_msa_ld_w, "V4Siv*Ii", "nc") 637 BUILTIN(__builtin_msa_ld_d, "V2SLLiv*Ii", "nc") 638 639 BUILTIN(__builtin_msa_ldi_b, "V16cIi", "nc") 640 BUILTIN(__builtin_msa_ldi_h, "V8sIi", "nc") 641 BUILTIN(__builtin_msa_ldi_w, "V4iIi", "nc") 642 BUILTIN(__builtin_msa_ldi_d, "V2LLiIi", "nc") 643 644 BUILTIN(__builtin_msa_madd_q_h, "V8SsV8SsV8SsV8Ss", "nc") 645 BUILTIN(__builtin_msa_madd_q_w, "V4SiV4SiV4SiV4Si", "nc") 646 647 BUILTIN(__builtin_msa_maddr_q_h, "V8SsV8SsV8SsV8Ss", "nc") 648 BUILTIN(__builtin_msa_maddr_q_w, "V4SiV4SiV4SiV4Si", "nc") 649 650 BUILTIN(__builtin_msa_maddv_b, "V16ScV16ScV16ScV16Sc", "nc") 651 BUILTIN(__builtin_msa_maddv_h, "V8SsV8SsV8SsV8Ss", "nc") 652 BUILTIN(__builtin_msa_maddv_w, "V4SiV4SiV4SiV4Si", "nc") 653 BUILTIN(__builtin_msa_maddv_d, "V2SLLiV2SLLiV2SLLiV2SLLi", "nc") 654 655 BUILTIN(__builtin_msa_max_a_b, "V16ScV16ScV16Sc", "nc") 656 BUILTIN(__builtin_msa_max_a_h, "V8SsV8SsV8Ss", "nc") 657 BUILTIN(__builtin_msa_max_a_w, "V4SiV4SiV4Si", "nc") 658 BUILTIN(__builtin_msa_max_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 659 660 BUILTIN(__builtin_msa_max_s_b, "V16ScV16ScV16Sc", "nc") 661 BUILTIN(__builtin_msa_max_s_h, "V8SsV8SsV8Ss", "nc") 662 BUILTIN(__builtin_msa_max_s_w, "V4SiV4SiV4Si", "nc") 663 BUILTIN(__builtin_msa_max_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 664 665 BUILTIN(__builtin_msa_max_u_b, "V16UcV16UcV16Uc", "nc") 666 BUILTIN(__builtin_msa_max_u_h, "V8UsV8UsV8Us", "nc") 667 BUILTIN(__builtin_msa_max_u_w, "V4UiV4UiV4Ui", "nc") 668 BUILTIN(__builtin_msa_max_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 669 670 BUILTIN(__builtin_msa_maxi_s_b, "V16ScV16ScIi", "nc") 671 BUILTIN(__builtin_msa_maxi_s_h, "V8SsV8SsIi", "nc") 672 BUILTIN(__builtin_msa_maxi_s_w, "V4SiV4SiIi", "nc") 673 BUILTIN(__builtin_msa_maxi_s_d, "V2SLLiV2SLLiIi", "nc") 674 675 BUILTIN(__builtin_msa_maxi_u_b, "V16UcV16UcIi", "nc") 676 BUILTIN(__builtin_msa_maxi_u_h, "V8UsV8UsIi", "nc") 677 BUILTIN(__builtin_msa_maxi_u_w, "V4UiV4UiIi", "nc") 678 BUILTIN(__builtin_msa_maxi_u_d, "V2ULLiV2ULLiIi", "nc") 679 680 BUILTIN(__builtin_msa_min_a_b, "V16ScV16ScV16Sc", "nc") 681 BUILTIN(__builtin_msa_min_a_h, "V8SsV8SsV8Ss", "nc") 682 BUILTIN(__builtin_msa_min_a_w, "V4SiV4SiV4Si", "nc") 683 BUILTIN(__builtin_msa_min_a_d, "V2SLLiV2SLLiV2SLLi", "nc") 684 685 BUILTIN(__builtin_msa_min_s_b, "V16ScV16ScV16Sc", "nc") 686 BUILTIN(__builtin_msa_min_s_h, "V8SsV8SsV8Ss", "nc") 687 BUILTIN(__builtin_msa_min_s_w, "V4SiV4SiV4Si", "nc") 688 BUILTIN(__builtin_msa_min_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 689 690 BUILTIN(__builtin_msa_min_u_b, "V16UcV16UcV16Uc", "nc") 691 BUILTIN(__builtin_msa_min_u_h, "V8UsV8UsV8Us", "nc") 692 BUILTIN(__builtin_msa_min_u_w, "V4UiV4UiV4Ui", "nc") 693 BUILTIN(__builtin_msa_min_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 694 695 BUILTIN(__builtin_msa_mini_s_b, "V16ScV16ScIi", "nc") 696 BUILTIN(__builtin_msa_mini_s_h, "V8SsV8SsIi", "nc") 697 BUILTIN(__builtin_msa_mini_s_w, "V4SiV4SiIi", "nc") 698 BUILTIN(__builtin_msa_mini_s_d, "V2SLLiV2SLLiIi", "nc") 699 700 BUILTIN(__builtin_msa_mini_u_b, "V16UcV16UcIi", "nc") 701 BUILTIN(__builtin_msa_mini_u_h, "V8UsV8UsIi", "nc") 702 BUILTIN(__builtin_msa_mini_u_w, "V4UiV4UiIi", "nc") 703 BUILTIN(__builtin_msa_mini_u_d, "V2ULLiV2ULLiIi", "nc") 704 705 BUILTIN(__builtin_msa_mod_s_b, "V16ScV16ScV16Sc", "nc") 706 BUILTIN(__builtin_msa_mod_s_h, "V8SsV8SsV8Ss", "nc") 707 BUILTIN(__builtin_msa_mod_s_w, "V4SiV4SiV4Si", "nc") 708 BUILTIN(__builtin_msa_mod_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 709 710 BUILTIN(__builtin_msa_mod_u_b, "V16UcV16UcV16Uc", "nc") 711 BUILTIN(__builtin_msa_mod_u_h, "V8UsV8UsV8Us", "nc") 712 BUILTIN(__builtin_msa_mod_u_w, "V4UiV4UiV4Ui", "nc") 713 BUILTIN(__builtin_msa_mod_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 714 715 BUILTIN(__builtin_msa_move_v, "V16ScV16Sc", "nc") 716 717 BUILTIN(__builtin_msa_msub_q_h, "V8SsV8SsV8SsV8Ss", "nc") 718 BUILTIN(__builtin_msa_msub_q_w, "V4SiV4SiV4SiV4Si", "nc") 719 720 BUILTIN(__builtin_msa_msubr_q_h, "V8SsV8SsV8SsV8Ss", "nc") 721 BUILTIN(__builtin_msa_msubr_q_w, "V4SiV4SiV4SiV4Si", "nc") 722 723 BUILTIN(__builtin_msa_msubv_b, "V16ScV16ScV16ScV16Sc", "nc") 724 BUILTIN(__builtin_msa_msubv_h, "V8SsV8SsV8SsV8Ss", "nc") 725 BUILTIN(__builtin_msa_msubv_w, "V4SiV4SiV4SiV4Si", "nc") 726 BUILTIN(__builtin_msa_msubv_d, "V2SLLiV2SLLiV2SLLiV2SLLi", "nc") 727 728 BUILTIN(__builtin_msa_mul_q_h, "V8SsV8SsV8Ss", "nc") 729 BUILTIN(__builtin_msa_mul_q_w, "V4SiV4SiV4Si", "nc") 730 731 BUILTIN(__builtin_msa_mulr_q_h, "V8SsV8SsV8Ss", "nc") 732 BUILTIN(__builtin_msa_mulr_q_w, "V4SiV4SiV4Si", "nc") 733 734 BUILTIN(__builtin_msa_mulv_b, "V16ScV16ScV16Sc", "nc") 735 BUILTIN(__builtin_msa_mulv_h, "V8SsV8SsV8Ss", "nc") 736 BUILTIN(__builtin_msa_mulv_w, "V4SiV4SiV4Si", "nc") 737 BUILTIN(__builtin_msa_mulv_d, "V2SLLiV2SLLiV2SLLi", "nc") 738 739 BUILTIN(__builtin_msa_nloc_b, "V16ScV16Sc", "nc") 740 BUILTIN(__builtin_msa_nloc_h, "V8SsV8Ss", "nc") 741 BUILTIN(__builtin_msa_nloc_w, "V4SiV4Si", "nc") 742 BUILTIN(__builtin_msa_nloc_d, "V2SLLiV2SLLi", "nc") 743 744 BUILTIN(__builtin_msa_nlzc_b, "V16ScV16Sc", "nc") 745 BUILTIN(__builtin_msa_nlzc_h, "V8SsV8Ss", "nc") 746 BUILTIN(__builtin_msa_nlzc_w, "V4SiV4Si", "nc") 747 BUILTIN(__builtin_msa_nlzc_d, "V2SLLiV2SLLi", "nc") 748 749 BUILTIN(__builtin_msa_nor_v, "V16UcV16UcV16Uc", "nc") 750 751 BUILTIN(__builtin_msa_nori_b, "V16UcV16cIUi", "nc") 752 753 BUILTIN(__builtin_msa_or_v, "V16UcV16UcV16Uc", "nc") 754 755 BUILTIN(__builtin_msa_ori_b, "V16UcV16UcIUi", "nc") 756 757 BUILTIN(__builtin_msa_pckev_b, "V16cV16cV16c", "nc") 758 BUILTIN(__builtin_msa_pckev_h, "V8sV8sV8s", "nc") 759 BUILTIN(__builtin_msa_pckev_w, "V4iV4iV4i", "nc") 760 BUILTIN(__builtin_msa_pckev_d, "V2LLiV2LLiV2LLi", "nc") 761 762 BUILTIN(__builtin_msa_pckod_b, "V16cV16cV16c", "nc") 763 BUILTIN(__builtin_msa_pckod_h, "V8sV8sV8s", "nc") 764 BUILTIN(__builtin_msa_pckod_w, "V4iV4iV4i", "nc") 765 BUILTIN(__builtin_msa_pckod_d, "V2LLiV2LLiV2LLi", "nc") 766 767 BUILTIN(__builtin_msa_pcnt_b, "V16ScV16Sc", "nc") 768 BUILTIN(__builtin_msa_pcnt_h, "V8SsV8Ss", "nc") 769 BUILTIN(__builtin_msa_pcnt_w, "V4SiV4Si", "nc") 770 BUILTIN(__builtin_msa_pcnt_d, "V2SLLiV2SLLi", "nc") 771 772 BUILTIN(__builtin_msa_sat_s_b, "V16ScV16ScIUi", "nc") 773 BUILTIN(__builtin_msa_sat_s_h, "V8SsV8SsIUi", "nc") 774 BUILTIN(__builtin_msa_sat_s_w, "V4SiV4SiIUi", "nc") 775 BUILTIN(__builtin_msa_sat_s_d, "V2SLLiV2SLLiIUi", "nc") 776 777 BUILTIN(__builtin_msa_sat_u_b, "V16UcV16UcIUi", "nc") 778 BUILTIN(__builtin_msa_sat_u_h, "V8UsV8UsIUi", "nc") 779 BUILTIN(__builtin_msa_sat_u_w, "V4UiV4UiIUi", "nc") 780 BUILTIN(__builtin_msa_sat_u_d, "V2ULLiV2ULLiIUi", "nc") 781 782 BUILTIN(__builtin_msa_shf_b, "V16cV16cIUi", "nc") 783 BUILTIN(__builtin_msa_shf_h, "V8sV8sIUi", "nc") 784 BUILTIN(__builtin_msa_shf_w, "V4iV4iIUi", "nc") 785 786 BUILTIN(__builtin_msa_sld_b, "V16cV16cV16cUi", "nc") 787 BUILTIN(__builtin_msa_sld_h, "V8sV8sV8sUi", "nc") 788 BUILTIN(__builtin_msa_sld_w, "V4iV4iV4iUi", "nc") 789 BUILTIN(__builtin_msa_sld_d, "V2LLiV2LLiV2LLiUi", "nc") 790 791 BUILTIN(__builtin_msa_sldi_b, "V16cV16cV16cIUi", "nc") 792 BUILTIN(__builtin_msa_sldi_h, "V8sV8sV8sIUi", "nc") 793 BUILTIN(__builtin_msa_sldi_w, "V4iV4iV4iIUi", "nc") 794 BUILTIN(__builtin_msa_sldi_d, "V2LLiV2LLiV2LLiIUi", "nc") 795 796 BUILTIN(__builtin_msa_sll_b, "V16cV16cV16c", "nc") 797 BUILTIN(__builtin_msa_sll_h, "V8sV8sV8s", "nc") 798 BUILTIN(__builtin_msa_sll_w, "V4iV4iV4i", "nc") 799 BUILTIN(__builtin_msa_sll_d, "V2LLiV2LLiV2LLi", "nc") 800 801 BUILTIN(__builtin_msa_slli_b, "V16cV16cIUi", "nc") 802 BUILTIN(__builtin_msa_slli_h, "V8sV8sIUi", "nc") 803 BUILTIN(__builtin_msa_slli_w, "V4iV4iIUi", "nc") 804 BUILTIN(__builtin_msa_slli_d, "V2LLiV2LLiIUi", "nc") 805 806 BUILTIN(__builtin_msa_splat_b, "V16cV16cUi", "nc") 807 BUILTIN(__builtin_msa_splat_h, "V8sV8sUi", "nc") 808 BUILTIN(__builtin_msa_splat_w, "V4iV4iUi", "nc") 809 BUILTIN(__builtin_msa_splat_d, "V2LLiV2LLiUi", "nc") 810 811 BUILTIN(__builtin_msa_splati_b, "V16cV16cIUi", "nc") 812 BUILTIN(__builtin_msa_splati_h, "V8sV8sIUi", "nc") 813 BUILTIN(__builtin_msa_splati_w, "V4iV4iIUi", "nc") 814 BUILTIN(__builtin_msa_splati_d, "V2LLiV2LLiIUi", "nc") 815 816 BUILTIN(__builtin_msa_sra_b, "V16cV16cV16c", "nc") 817 BUILTIN(__builtin_msa_sra_h, "V8sV8sV8s", "nc") 818 BUILTIN(__builtin_msa_sra_w, "V4iV4iV4i", "nc") 819 BUILTIN(__builtin_msa_sra_d, "V2LLiV2LLiV2LLi", "nc") 820 821 BUILTIN(__builtin_msa_srai_b, "V16cV16cIUi", "nc") 822 BUILTIN(__builtin_msa_srai_h, "V8sV8sIUi", "nc") 823 BUILTIN(__builtin_msa_srai_w, "V4iV4iIUi", "nc") 824 BUILTIN(__builtin_msa_srai_d, "V2LLiV2LLiIUi", "nc") 825 826 BUILTIN(__builtin_msa_srar_b, "V16cV16cV16c", "nc") 827 BUILTIN(__builtin_msa_srar_h, "V8sV8sV8s", "nc") 828 BUILTIN(__builtin_msa_srar_w, "V4iV4iV4i", "nc") 829 BUILTIN(__builtin_msa_srar_d, "V2LLiV2LLiV2LLi", "nc") 830 831 BUILTIN(__builtin_msa_srari_b, "V16cV16cIUi", "nc") 832 BUILTIN(__builtin_msa_srari_h, "V8sV8sIUi", "nc") 833 BUILTIN(__builtin_msa_srari_w, "V4iV4iIUi", "nc") 834 BUILTIN(__builtin_msa_srari_d, "V2LLiV2LLiIUi", "nc") 835 836 BUILTIN(__builtin_msa_srl_b, "V16cV16cV16c", "nc") 837 BUILTIN(__builtin_msa_srl_h, "V8sV8sV8s", "nc") 838 BUILTIN(__builtin_msa_srl_w, "V4iV4iV4i", "nc") 839 BUILTIN(__builtin_msa_srl_d, "V2LLiV2LLiV2LLi", "nc") 840 841 BUILTIN(__builtin_msa_srli_b, "V16cV16cIUi", "nc") 842 BUILTIN(__builtin_msa_srli_h, "V8sV8sIUi", "nc") 843 BUILTIN(__builtin_msa_srli_w, "V4iV4iIUi", "nc") 844 BUILTIN(__builtin_msa_srli_d, "V2LLiV2LLiIUi", "nc") 845 846 BUILTIN(__builtin_msa_srlr_b, "V16cV16cV16c", "nc") 847 BUILTIN(__builtin_msa_srlr_h, "V8sV8sV8s", "nc") 848 BUILTIN(__builtin_msa_srlr_w, "V4iV4iV4i", "nc") 849 BUILTIN(__builtin_msa_srlr_d, "V2LLiV2LLiV2LLi", "nc") 850 851 BUILTIN(__builtin_msa_srlri_b, "V16cV16cIUi", "nc") 852 BUILTIN(__builtin_msa_srlri_h, "V8sV8sIUi", "nc") 853 BUILTIN(__builtin_msa_srlri_w, "V4iV4iIUi", "nc") 854 BUILTIN(__builtin_msa_srlri_d, "V2LLiV2LLiIUi", "nc") 855 856 BUILTIN(__builtin_msa_st_b, "vV16Scv*Ii", "nc") 857 BUILTIN(__builtin_msa_st_h, "vV8Ssv*Ii", "nc") 858 BUILTIN(__builtin_msa_st_w, "vV4Siv*Ii", "nc") 859 BUILTIN(__builtin_msa_st_d, "vV2SLLiv*Ii", "nc") 860 861 BUILTIN(__builtin_msa_subs_s_b, "V16ScV16ScV16Sc", "nc") 862 BUILTIN(__builtin_msa_subs_s_h, "V8SsV8SsV8Ss", "nc") 863 BUILTIN(__builtin_msa_subs_s_w, "V4SiV4SiV4Si", "nc") 864 BUILTIN(__builtin_msa_subs_s_d, "V2SLLiV2SLLiV2SLLi", "nc") 865 866 BUILTIN(__builtin_msa_subs_u_b, "V16UcV16UcV16Uc", "nc") 867 BUILTIN(__builtin_msa_subs_u_h, "V8UsV8UsV8Us", "nc") 868 BUILTIN(__builtin_msa_subs_u_w, "V4UiV4UiV4Ui", "nc") 869 BUILTIN(__builtin_msa_subs_u_d, "V2ULLiV2ULLiV2ULLi", "nc") 870 871 BUILTIN(__builtin_msa_subsus_u_b, "V16UcV16UcV16Sc", "nc") 872 BUILTIN(__builtin_msa_subsus_u_h, "V8UsV8UsV8Ss", "nc") 873 BUILTIN(__builtin_msa_subsus_u_w, "V4UiV4UiV4Si", "nc") 874 BUILTIN(__builtin_msa_subsus_u_d, "V2ULLiV2ULLiV2SLLi", "nc") 875 876 BUILTIN(__builtin_msa_subsuu_s_b, "V16ScV16UcV16Uc", "nc") 877 BUILTIN(__builtin_msa_subsuu_s_h, "V8SsV8UsV8Us", "nc") 878 BUILTIN(__builtin_msa_subsuu_s_w, "V4SiV4UiV4Ui", "nc") 879 BUILTIN(__builtin_msa_subsuu_s_d, "V2SLLiV2ULLiV2ULLi", "nc") 880 881 BUILTIN(__builtin_msa_subv_b, "V16cV16cV16c", "nc") 882 BUILTIN(__builtin_msa_subv_h, "V8sV8sV8s", "nc") 883 BUILTIN(__builtin_msa_subv_w, "V4iV4iV4i", "nc") 884 BUILTIN(__builtin_msa_subv_d, "V2LLiV2LLiV2LLi", "nc") 885 886 BUILTIN(__builtin_msa_subvi_b, "V16cV16cIUi", "nc") 887 BUILTIN(__builtin_msa_subvi_h, "V8sV8sIUi", "nc") 888 BUILTIN(__builtin_msa_subvi_w, "V4iV4iIUi", "nc") 889 BUILTIN(__builtin_msa_subvi_d, "V2LLiV2LLiIUi", "nc") 890 891 BUILTIN(__builtin_msa_vshf_b, "V16cV16cV16cV16c", "nc") 892 BUILTIN(__builtin_msa_vshf_h, "V8sV8sV8sV8s", "nc") 893 BUILTIN(__builtin_msa_vshf_w, "V4iV4iV4iV4i", "nc") 894 BUILTIN(__builtin_msa_vshf_d, "V2LLiV2LLiV2LLiV2LLi", "nc") 895 896 BUILTIN(__builtin_msa_xor_v, "V16cV16cV16c", "nc") 897 898 BUILTIN(__builtin_msa_xori_b, "V16cV16cIUi", "nc") 899 900 #undef BUILTIN 901