Home | History | Annotate | Download | only in include
      1 /*===---- msa.h - MIPS MSA intrinsics --------------------------------------===
      2  *
      3  * Permission is hereby granted, free of charge, to any person obtaining a copy
      4  * of this software and associated documentation files (the "Software"), to deal
      5  * in the Software without restriction, including without limitation the rights
      6  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      7  * copies of the Software, and to permit persons to whom the Software is
      8  * furnished to do so, subject to the following conditions:
      9  *
     10  * The above copyright notice and this permission notice shall be included in
     11  * all copies or substantial portions of the Software.
     12  *
     13  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     14  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     16  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     18  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     19  * THE SOFTWARE.
     20  *
     21  *===-----------------------------------------------------------------------===
     22  */
     23 
     24 #ifndef _MSA_H
     25 #define _MSA_H 1
     26 
     27 #if defined(__mips_msa)
     28 typedef signed char v16i8 __attribute__((vector_size(16), aligned(16)));
     29 typedef signed char v16i8_b __attribute__((vector_size(16), aligned(1)));
     30 typedef unsigned char v16u8 __attribute__((vector_size(16), aligned(16)));
     31 typedef unsigned char v16u8_b __attribute__((vector_size(16), aligned(1)));
     32 typedef short v8i16 __attribute__((vector_size(16), aligned(16)));
     33 typedef short v8i16_h __attribute__((vector_size(16), aligned(2)));
     34 typedef unsigned short v8u16 __attribute__((vector_size(16), aligned(16)));
     35 typedef unsigned short v8u16_h __attribute__((vector_size(16), aligned(2)));
     36 typedef int v4i32 __attribute__((vector_size(16), aligned(16)));
     37 typedef int v4i32_w __attribute__((vector_size(16), aligned(4)));
     38 typedef unsigned int v4u32 __attribute__((vector_size(16), aligned(16)));
     39 typedef unsigned int v4u32_w __attribute__((vector_size(16), aligned(4)));
     40 typedef long long v2i64 __attribute__((vector_size(16), aligned(16)));
     41 typedef long long v2i64_d __attribute__((vector_size(16), aligned(8)));
     42 typedef unsigned long long v2u64 __attribute__((vector_size(16), aligned(16)));
     43 typedef unsigned long long v2u64_d __attribute__((vector_size(16), aligned(8)));
     44 typedef float v4f32 __attribute__((vector_size(16), aligned(16)));
     45 typedef float v4f32_w __attribute__((vector_size(16), aligned(4)));
     46 typedef double v2f64 __attribute__ ((vector_size(16), aligned(16)));
     47 typedef double v2f64_d __attribute__ ((vector_size(16), aligned(8)));
     48 
     49 #define __msa_sll_b __builtin_msa_sll_b
     50 #define __msa_sll_h __builtin_msa_sll_h
     51 #define __msa_sll_w __builtin_msa_sll_w
     52 #define __msa_sll_d __builtin_msa_sll_d
     53 #define __msa_slli_b __builtin_msa_slli_b
     54 #define __msa_slli_h __builtin_msa_slli_h
     55 #define __msa_slli_w __builtin_msa_slli_w
     56 #define __msa_slli_d __builtin_msa_slli_d
     57 #define __msa_sra_b __builtin_msa_sra_b
     58 #define __msa_sra_h __builtin_msa_sra_h
     59 #define __msa_sra_w __builtin_msa_sra_w
     60 #define __msa_sra_d __builtin_msa_sra_d
     61 #define __msa_srai_b __builtin_msa_srai_b
     62 #define __msa_srai_h __builtin_msa_srai_h
     63 #define __msa_srai_w __builtin_msa_srai_w
     64 #define __msa_srai_d __builtin_msa_srai_d
     65 #define __msa_srar_b __builtin_msa_srar_b
     66 #define __msa_srar_h __builtin_msa_srar_h
     67 #define __msa_srar_w __builtin_msa_srar_w
     68 #define __msa_srar_d __builtin_msa_srar_d
     69 #define __msa_srari_b __builtin_msa_srari_b
     70 #define __msa_srari_h __builtin_msa_srari_h
     71 #define __msa_srari_w __builtin_msa_srari_w
     72 #define __msa_srari_d __builtin_msa_srari_d
     73 #define __msa_srl_b __builtin_msa_srl_b
     74 #define __msa_srl_h __builtin_msa_srl_h
     75 #define __msa_srl_w __builtin_msa_srl_w
     76 #define __msa_srl_d __builtin_msa_srl_d
     77 #define __msa_srli_b __builtin_msa_srli_b
     78 #define __msa_srli_h __builtin_msa_srli_h
     79 #define __msa_srli_w __builtin_msa_srli_w
     80 #define __msa_srli_d __builtin_msa_srli_d
     81 #define __msa_srlr_b __builtin_msa_srlr_b
     82 #define __msa_srlr_h __builtin_msa_srlr_h
     83 #define __msa_srlr_w __builtin_msa_srlr_w
     84 #define __msa_srlr_d __builtin_msa_srlr_d
     85 #define __msa_srlri_b __builtin_msa_srlri_b
     86 #define __msa_srlri_h __builtin_msa_srlri_h
     87 #define __msa_srlri_w __builtin_msa_srlri_w
     88 #define __msa_srlri_d __builtin_msa_srlri_d
     89 #define __msa_bclr_b __builtin_msa_bclr_b
     90 #define __msa_bclr_h __builtin_msa_bclr_h
     91 #define __msa_bclr_w __builtin_msa_bclr_w
     92 #define __msa_bclr_d __builtin_msa_bclr_d
     93 #define __msa_bclri_b __builtin_msa_bclri_b
     94 #define __msa_bclri_h __builtin_msa_bclri_h
     95 #define __msa_bclri_w __builtin_msa_bclri_w
     96 #define __msa_bclri_d __builtin_msa_bclri_d
     97 #define __msa_bset_b __builtin_msa_bset_b
     98 #define __msa_bset_h __builtin_msa_bset_h
     99 #define __msa_bset_w __builtin_msa_bset_w
    100 #define __msa_bset_d __builtin_msa_bset_d
    101 #define __msa_bseti_b __builtin_msa_bseti_b
    102 #define __msa_bseti_h __builtin_msa_bseti_h
    103 #define __msa_bseti_w __builtin_msa_bseti_w
    104 #define __msa_bseti_d __builtin_msa_bseti_d
    105 #define __msa_bneg_b __builtin_msa_bneg_b
    106 #define __msa_bneg_h __builtin_msa_bneg_h
    107 #define __msa_bneg_w __builtin_msa_bneg_w
    108 #define __msa_bneg_d __builtin_msa_bneg_d
    109 #define __msa_bnegi_b __builtin_msa_bnegi_b
    110 #define __msa_bnegi_h __builtin_msa_bnegi_h
    111 #define __msa_bnegi_w __builtin_msa_bnegi_w
    112 #define __msa_bnegi_d __builtin_msa_bnegi_d
    113 #define __msa_binsl_b __builtin_msa_binsl_b
    114 #define __msa_binsl_h __builtin_msa_binsl_h
    115 #define __msa_binsl_w __builtin_msa_binsl_w
    116 #define __msa_binsl_d __builtin_msa_binsl_d
    117 #define __msa_binsli_b __builtin_msa_binsli_b
    118 #define __msa_binsli_h __builtin_msa_binsli_h
    119 #define __msa_binsli_w __builtin_msa_binsli_w
    120 #define __msa_binsli_d __builtin_msa_binsli_d
    121 #define __msa_binsr_b __builtin_msa_binsr_b
    122 #define __msa_binsr_h __builtin_msa_binsr_h
    123 #define __msa_binsr_w __builtin_msa_binsr_w
    124 #define __msa_binsr_d __builtin_msa_binsr_d
    125 #define __msa_binsri_b __builtin_msa_binsri_b
    126 #define __msa_binsri_h __builtin_msa_binsri_h
    127 #define __msa_binsri_w __builtin_msa_binsri_w
    128 #define __msa_binsri_d __builtin_msa_binsri_d
    129 #define __msa_addv_b __builtin_msa_addv_b
    130 #define __msa_addv_h __builtin_msa_addv_h
    131 #define __msa_addv_w __builtin_msa_addv_w
    132 #define __msa_addv_d __builtin_msa_addv_d
    133 #define __msa_addvi_b __builtin_msa_addvi_b
    134 #define __msa_addvi_h __builtin_msa_addvi_h
    135 #define __msa_addvi_w __builtin_msa_addvi_w
    136 #define __msa_addvi_d __builtin_msa_addvi_d
    137 #define __msa_subv_b __builtin_msa_subv_b
    138 #define __msa_subv_h __builtin_msa_subv_h
    139 #define __msa_subv_w __builtin_msa_subv_w
    140 #define __msa_subv_d __builtin_msa_subv_d
    141 #define __msa_subvi_b __builtin_msa_subvi_b
    142 #define __msa_subvi_h __builtin_msa_subvi_h
    143 #define __msa_subvi_w __builtin_msa_subvi_w
    144 #define __msa_subvi_d __builtin_msa_subvi_d
    145 #define __msa_max_s_b __builtin_msa_max_s_b
    146 #define __msa_max_s_h __builtin_msa_max_s_h
    147 #define __msa_max_s_w __builtin_msa_max_s_w
    148 #define __msa_max_s_d __builtin_msa_max_s_d
    149 #define __msa_maxi_s_b __builtin_msa_maxi_s_b
    150 #define __msa_maxi_s_h __builtin_msa_maxi_s_h
    151 #define __msa_maxi_s_w __builtin_msa_maxi_s_w
    152 #define __msa_maxi_s_d __builtin_msa_maxi_s_d
    153 #define __msa_max_u_b __builtin_msa_max_u_b
    154 #define __msa_max_u_h __builtin_msa_max_u_h
    155 #define __msa_max_u_w __builtin_msa_max_u_w
    156 #define __msa_max_u_d __builtin_msa_max_u_d
    157 #define __msa_maxi_u_b __builtin_msa_maxi_u_b
    158 #define __msa_maxi_u_h __builtin_msa_maxi_u_h
    159 #define __msa_maxi_u_w __builtin_msa_maxi_u_w
    160 #define __msa_maxi_u_d __builtin_msa_maxi_u_d
    161 #define __msa_min_s_b __builtin_msa_min_s_b
    162 #define __msa_min_s_h __builtin_msa_min_s_h
    163 #define __msa_min_s_w __builtin_msa_min_s_w
    164 #define __msa_min_s_d __builtin_msa_min_s_d
    165 #define __msa_mini_s_b __builtin_msa_mini_s_b
    166 #define __msa_mini_s_h __builtin_msa_mini_s_h
    167 #define __msa_mini_s_w __builtin_msa_mini_s_w
    168 #define __msa_mini_s_d __builtin_msa_mini_s_d
    169 #define __msa_min_u_b __builtin_msa_min_u_b
    170 #define __msa_min_u_h __builtin_msa_min_u_h
    171 #define __msa_min_u_w __builtin_msa_min_u_w
    172 #define __msa_min_u_d __builtin_msa_min_u_d
    173 #define __msa_mini_u_b __builtin_msa_mini_u_b
    174 #define __msa_mini_u_h __builtin_msa_mini_u_h
    175 #define __msa_mini_u_w __builtin_msa_mini_u_w
    176 #define __msa_mini_u_d __builtin_msa_mini_u_d
    177 #define __msa_max_a_b __builtin_msa_max_a_b
    178 #define __msa_max_a_h __builtin_msa_max_a_h
    179 #define __msa_max_a_w __builtin_msa_max_a_w
    180 #define __msa_max_a_d __builtin_msa_max_a_d
    181 #define __msa_min_a_b __builtin_msa_min_a_b
    182 #define __msa_min_a_h __builtin_msa_min_a_h
    183 #define __msa_min_a_w __builtin_msa_min_a_w
    184 #define __msa_min_a_d __builtin_msa_min_a_d
    185 #define __msa_ceq_b __builtin_msa_ceq_b
    186 #define __msa_ceq_h __builtin_msa_ceq_h
    187 #define __msa_ceq_w __builtin_msa_ceq_w
    188 #define __msa_ceq_d __builtin_msa_ceq_d
    189 #define __msa_ceqi_b __builtin_msa_ceqi_b
    190 #define __msa_ceqi_h __builtin_msa_ceqi_h
    191 #define __msa_ceqi_w __builtin_msa_ceqi_w
    192 #define __msa_ceqi_d __builtin_msa_ceqi_d
    193 #define __msa_clt_s_b __builtin_msa_clt_s_b
    194 #define __msa_clt_s_h __builtin_msa_clt_s_h
    195 #define __msa_clt_s_w __builtin_msa_clt_s_w
    196 #define __msa_clt_s_d __builtin_msa_clt_s_d
    197 #define __msa_clti_s_b __builtin_msa_clti_s_b
    198 #define __msa_clti_s_h __builtin_msa_clti_s_h
    199 #define __msa_clti_s_w __builtin_msa_clti_s_w
    200 #define __msa_clti_s_d __builtin_msa_clti_s_d
    201 #define __msa_clt_u_b __builtin_msa_clt_u_b
    202 #define __msa_clt_u_h __builtin_msa_clt_u_h
    203 #define __msa_clt_u_w __builtin_msa_clt_u_w
    204 #define __msa_clt_u_d __builtin_msa_clt_u_d
    205 #define __msa_clti_u_b __builtin_msa_clti_u_b
    206 #define __msa_clti_u_h __builtin_msa_clti_u_h
    207 #define __msa_clti_u_w __builtin_msa_clti_u_w
    208 #define __msa_clti_u_d __builtin_msa_clti_u_d
    209 #define __msa_cle_s_b __builtin_msa_cle_s_b
    210 #define __msa_cle_s_h __builtin_msa_cle_s_h
    211 #define __msa_cle_s_w __builtin_msa_cle_s_w
    212 #define __msa_cle_s_d __builtin_msa_cle_s_d
    213 #define __msa_clei_s_b __builtin_msa_clei_s_b
    214 #define __msa_clei_s_h __builtin_msa_clei_s_h
    215 #define __msa_clei_s_w __builtin_msa_clei_s_w
    216 #define __msa_clei_s_d __builtin_msa_clei_s_d
    217 #define __msa_cle_u_b __builtin_msa_cle_u_b
    218 #define __msa_cle_u_h __builtin_msa_cle_u_h
    219 #define __msa_cle_u_w __builtin_msa_cle_u_w
    220 #define __msa_cle_u_d __builtin_msa_cle_u_d
    221 #define __msa_clei_u_b __builtin_msa_clei_u_b
    222 #define __msa_clei_u_h __builtin_msa_clei_u_h
    223 #define __msa_clei_u_w __builtin_msa_clei_u_w
    224 #define __msa_clei_u_d __builtin_msa_clei_u_d
    225 #define __msa_ld_b __builtin_msa_ld_b
    226 #define __msa_ld_h __builtin_msa_ld_h
    227 #define __msa_ld_w __builtin_msa_ld_w
    228 #define __msa_ld_d __builtin_msa_ld_d
    229 #define __msa_st_b __builtin_msa_st_b
    230 #define __msa_st_h __builtin_msa_st_h
    231 #define __msa_st_w __builtin_msa_st_w
    232 #define __msa_st_d __builtin_msa_st_d
    233 #define __msa_sat_s_b __builtin_msa_sat_s_b
    234 #define __msa_sat_s_h __builtin_msa_sat_s_h
    235 #define __msa_sat_s_w __builtin_msa_sat_s_w
    236 #define __msa_sat_s_d __builtin_msa_sat_s_d
    237 #define __msa_sat_u_b __builtin_msa_sat_u_b
    238 #define __msa_sat_u_h __builtin_msa_sat_u_h
    239 #define __msa_sat_u_w __builtin_msa_sat_u_w
    240 #define __msa_sat_u_d __builtin_msa_sat_u_d
    241 #define __msa_add_a_b __builtin_msa_add_a_b
    242 #define __msa_add_a_h __builtin_msa_add_a_h
    243 #define __msa_add_a_w __builtin_msa_add_a_w
    244 #define __msa_add_a_d __builtin_msa_add_a_d
    245 #define __msa_adds_a_b __builtin_msa_adds_a_b
    246 #define __msa_adds_a_h __builtin_msa_adds_a_h
    247 #define __msa_adds_a_w __builtin_msa_adds_a_w
    248 #define __msa_adds_a_d __builtin_msa_adds_a_d
    249 #define __msa_adds_s_b __builtin_msa_adds_s_b
    250 #define __msa_adds_s_h __builtin_msa_adds_s_h
    251 #define __msa_adds_s_w __builtin_msa_adds_s_w
    252 #define __msa_adds_s_d __builtin_msa_adds_s_d
    253 #define __msa_adds_u_b __builtin_msa_adds_u_b
    254 #define __msa_adds_u_h __builtin_msa_adds_u_h
    255 #define __msa_adds_u_w __builtin_msa_adds_u_w
    256 #define __msa_adds_u_d __builtin_msa_adds_u_d
    257 #define __msa_ave_s_b __builtin_msa_ave_s_b
    258 #define __msa_ave_s_h __builtin_msa_ave_s_h
    259 #define __msa_ave_s_w __builtin_msa_ave_s_w
    260 #define __msa_ave_s_d __builtin_msa_ave_s_d
    261 #define __msa_ave_u_b __builtin_msa_ave_u_b
    262 #define __msa_ave_u_h __builtin_msa_ave_u_h
    263 #define __msa_ave_u_w __builtin_msa_ave_u_w
    264 #define __msa_ave_u_d __builtin_msa_ave_u_d
    265 #define __msa_aver_s_b __builtin_msa_aver_s_b
    266 #define __msa_aver_s_h __builtin_msa_aver_s_h
    267 #define __msa_aver_s_w __builtin_msa_aver_s_w
    268 #define __msa_aver_s_d __builtin_msa_aver_s_d
    269 #define __msa_aver_u_b __builtin_msa_aver_u_b
    270 #define __msa_aver_u_h __builtin_msa_aver_u_h
    271 #define __msa_aver_u_w __builtin_msa_aver_u_w
    272 #define __msa_aver_u_d __builtin_msa_aver_u_d
    273 #define __msa_subs_s_b __builtin_msa_subs_s_b
    274 #define __msa_subs_s_h __builtin_msa_subs_s_h
    275 #define __msa_subs_s_w __builtin_msa_subs_s_w
    276 #define __msa_subs_s_d __builtin_msa_subs_s_d
    277 #define __msa_subs_u_b __builtin_msa_subs_u_b
    278 #define __msa_subs_u_h __builtin_msa_subs_u_h
    279 #define __msa_subs_u_w __builtin_msa_subs_u_w
    280 #define __msa_subs_u_d __builtin_msa_subs_u_d
    281 #define __msa_subsuu_s_b __builtin_msa_subsuu_s_b
    282 #define __msa_subsuu_s_h __builtin_msa_subsuu_s_h
    283 #define __msa_subsuu_s_w __builtin_msa_subsuu_s_w
    284 #define __msa_subsuu_s_d __builtin_msa_subsuu_s_d
    285 #define __msa_subsus_u_b __builtin_msa_subsus_u_b
    286 #define __msa_subsus_u_h __builtin_msa_subsus_u_h
    287 #define __msa_subsus_u_w __builtin_msa_subsus_u_w
    288 #define __msa_subsus_u_d __builtin_msa_subsus_u_d
    289 #define __msa_asub_s_b __builtin_msa_asub_s_b
    290 #define __msa_asub_s_h __builtin_msa_asub_s_h
    291 #define __msa_asub_s_w __builtin_msa_asub_s_w
    292 #define __msa_asub_s_d __builtin_msa_asub_s_d
    293 #define __msa_asub_u_b __builtin_msa_asub_u_b
    294 #define __msa_asub_u_h __builtin_msa_asub_u_h
    295 #define __msa_asub_u_w __builtin_msa_asub_u_w
    296 #define __msa_asub_u_d __builtin_msa_asub_u_d
    297 #define __msa_mulv_b __builtin_msa_mulv_b
    298 #define __msa_mulv_h __builtin_msa_mulv_h
    299 #define __msa_mulv_w __builtin_msa_mulv_w
    300 #define __msa_mulv_d __builtin_msa_mulv_d
    301 #define __msa_maddv_b __builtin_msa_maddv_b
    302 #define __msa_maddv_h __builtin_msa_maddv_h
    303 #define __msa_maddv_w __builtin_msa_maddv_w
    304 #define __msa_maddv_d __builtin_msa_maddv_d
    305 #define __msa_msubv_b __builtin_msa_msubv_b
    306 #define __msa_msubv_h __builtin_msa_msubv_h
    307 #define __msa_msubv_w __builtin_msa_msubv_w
    308 #define __msa_msubv_d __builtin_msa_msubv_d
    309 #define __msa_div_s_b __builtin_msa_div_s_b
    310 #define __msa_div_s_h __builtin_msa_div_s_h
    311 #define __msa_div_s_w __builtin_msa_div_s_w
    312 #define __msa_div_s_d __builtin_msa_div_s_d
    313 #define __msa_div_u_b __builtin_msa_div_u_b
    314 #define __msa_div_u_h __builtin_msa_div_u_h
    315 #define __msa_div_u_w __builtin_msa_div_u_w
    316 #define __msa_div_u_d __builtin_msa_div_u_d
    317 #define __msa_hadd_s_h __builtin_msa_hadd_s_h
    318 #define __msa_hadd_s_w __builtin_msa_hadd_s_w
    319 #define __msa_hadd_s_d __builtin_msa_hadd_s_d
    320 #define __msa_hadd_u_h __builtin_msa_hadd_u_h
    321 #define __msa_hadd_u_w __builtin_msa_hadd_u_w
    322 #define __msa_hadd_u_d __builtin_msa_hadd_u_d
    323 #define __msa_hsub_s_h __builtin_msa_hsub_s_h
    324 #define __msa_hsub_s_w __builtin_msa_hsub_s_w
    325 #define __msa_hsub_s_d __builtin_msa_hsub_s_d
    326 #define __msa_hsub_u_h __builtin_msa_hsub_u_h
    327 #define __msa_hsub_u_w __builtin_msa_hsub_u_w
    328 #define __msa_hsub_u_d __builtin_msa_hsub_u_d
    329 #define __msa_mod_s_b __builtin_msa_mod_s_b
    330 #define __msa_mod_s_h __builtin_msa_mod_s_h
    331 #define __msa_mod_s_w __builtin_msa_mod_s_w
    332 #define __msa_mod_s_d __builtin_msa_mod_s_d
    333 #define __msa_mod_u_b __builtin_msa_mod_u_b
    334 #define __msa_mod_u_h __builtin_msa_mod_u_h
    335 #define __msa_mod_u_w __builtin_msa_mod_u_w
    336 #define __msa_mod_u_d __builtin_msa_mod_u_d
    337 #define __msa_dotp_s_h __builtin_msa_dotp_s_h
    338 #define __msa_dotp_s_w __builtin_msa_dotp_s_w
    339 #define __msa_dotp_s_d __builtin_msa_dotp_s_d
    340 #define __msa_dotp_u_h __builtin_msa_dotp_u_h
    341 #define __msa_dotp_u_w __builtin_msa_dotp_u_w
    342 #define __msa_dotp_u_d __builtin_msa_dotp_u_d
    343 #define __msa_dpadd_s_h __builtin_msa_dpadd_s_h
    344 #define __msa_dpadd_s_w __builtin_msa_dpadd_s_w
    345 #define __msa_dpadd_s_d __builtin_msa_dpadd_s_d
    346 #define __msa_dpadd_u_h __builtin_msa_dpadd_u_h
    347 #define __msa_dpadd_u_w __builtin_msa_dpadd_u_w
    348 #define __msa_dpadd_u_d __builtin_msa_dpadd_u_d
    349 #define __msa_dpsub_s_h __builtin_msa_dpsub_s_h
    350 #define __msa_dpsub_s_w __builtin_msa_dpsub_s_w
    351 #define __msa_dpsub_s_d __builtin_msa_dpsub_s_d
    352 #define __msa_dpsub_u_h __builtin_msa_dpsub_u_h
    353 #define __msa_dpsub_u_w __builtin_msa_dpsub_u_w
    354 #define __msa_dpsub_u_d __builtin_msa_dpsub_u_d
    355 #define __msa_sld_b __builtin_msa_sld_b
    356 #define __msa_sld_h __builtin_msa_sld_h
    357 #define __msa_sld_w __builtin_msa_sld_w
    358 #define __msa_sld_d __builtin_msa_sld_d
    359 #define __msa_sldi_b __builtin_msa_sldi_b
    360 #define __msa_sldi_h __builtin_msa_sldi_h
    361 #define __msa_sldi_w __builtin_msa_sldi_w
    362 #define __msa_sldi_d __builtin_msa_sldi_d
    363 #define __msa_splat_b __builtin_msa_splat_b
    364 #define __msa_splat_h __builtin_msa_splat_h
    365 #define __msa_splat_w __builtin_msa_splat_w
    366 #define __msa_splat_d __builtin_msa_splat_d
    367 #define __msa_splati_b __builtin_msa_splati_b
    368 #define __msa_splati_h __builtin_msa_splati_h
    369 #define __msa_splati_w __builtin_msa_splati_w
    370 #define __msa_splati_d __builtin_msa_splati_d
    371 #define __msa_pckev_b __builtin_msa_pckev_b
    372 #define __msa_pckev_h __builtin_msa_pckev_h
    373 #define __msa_pckev_w __builtin_msa_pckev_w
    374 #define __msa_pckev_d __builtin_msa_pckev_d
    375 #define __msa_pckod_b __builtin_msa_pckod_b
    376 #define __msa_pckod_h __builtin_msa_pckod_h
    377 #define __msa_pckod_w __builtin_msa_pckod_w
    378 #define __msa_pckod_d __builtin_msa_pckod_d
    379 #define __msa_ilvl_b __builtin_msa_ilvl_b
    380 #define __msa_ilvl_h __builtin_msa_ilvl_h
    381 #define __msa_ilvl_w __builtin_msa_ilvl_w
    382 #define __msa_ilvl_d __builtin_msa_ilvl_d
    383 #define __msa_ilvr_b __builtin_msa_ilvr_b
    384 #define __msa_ilvr_h __builtin_msa_ilvr_h
    385 #define __msa_ilvr_w __builtin_msa_ilvr_w
    386 #define __msa_ilvr_d __builtin_msa_ilvr_d
    387 #define __msa_ilvev_b __builtin_msa_ilvev_b
    388 #define __msa_ilvev_h __builtin_msa_ilvev_h
    389 #define __msa_ilvev_w __builtin_msa_ilvev_w
    390 #define __msa_ilvev_d __builtin_msa_ilvev_d
    391 #define __msa_ilvod_b __builtin_msa_ilvod_b
    392 #define __msa_ilvod_h __builtin_msa_ilvod_h
    393 #define __msa_ilvod_w __builtin_msa_ilvod_w
    394 #define __msa_ilvod_d __builtin_msa_ilvod_d
    395 #define __msa_vshf_b __builtin_msa_vshf_b
    396 #define __msa_vshf_h __builtin_msa_vshf_h
    397 #define __msa_vshf_w __builtin_msa_vshf_w
    398 #define __msa_vshf_d __builtin_msa_vshf_d
    399 #define __msa_and_v __builtin_msa_and_v
    400 #define __msa_andi_b __builtin_msa_andi_b
    401 #define __msa_or_v __builtin_msa_or_v
    402 #define __msa_ori_b __builtin_msa_ori_b
    403 #define __msa_nor_v __builtin_msa_nor_v
    404 #define __msa_nori_b __builtin_msa_nori_b
    405 #define __msa_xor_v __builtin_msa_xor_v
    406 #define __msa_xori_b __builtin_msa_xori_b
    407 #define __msa_bmnz_v __builtin_msa_bmnz_v
    408 #define __msa_bmnzi_b __builtin_msa_bmnzi_b
    409 #define __msa_bmz_v __builtin_msa_bmz_v
    410 #define __msa_bmzi_b __builtin_msa_bmzi_b
    411 #define __msa_bsel_v __builtin_msa_bsel_v
    412 #define __msa_bseli_b __builtin_msa_bseli_b
    413 #define __msa_shf_b __builtin_msa_shf_b
    414 #define __msa_shf_h __builtin_msa_shf_h
    415 #define __msa_shf_w __builtin_msa_shf_w
    416 #define __msa_test_bnz_v __builtin_msa_bnz_v
    417 #define __msa_test_bz_v __builtin_msa_bz_v
    418 #define __msa_fill_b __builtin_msa_fill_b
    419 #define __msa_fill_h __builtin_msa_fill_h
    420 #define __msa_fill_w __builtin_msa_fill_w
    421 #define __msa_fill_d __builtin_msa_fill_d
    422 #define __msa_pcnt_b __builtin_msa_pcnt_b
    423 #define __msa_pcnt_h __builtin_msa_pcnt_h
    424 #define __msa_pcnt_w __builtin_msa_pcnt_w
    425 #define __msa_pcnt_d __builtin_msa_pcnt_d
    426 #define __msa_nloc_b __builtin_msa_nloc_b
    427 #define __msa_nloc_h __builtin_msa_nloc_h
    428 #define __msa_nloc_w __builtin_msa_nloc_w
    429 #define __msa_nloc_d __builtin_msa_nloc_d
    430 #define __msa_nlzc_b __builtin_msa_nlzc_b
    431 #define __msa_nlzc_h __builtin_msa_nlzc_h
    432 #define __msa_nlzc_w __builtin_msa_nlzc_w
    433 #define __msa_nlzc_d __builtin_msa_nlzc_d
    434 #define __msa_copy_s_b __builtin_msa_copy_s_b
    435 #define __msa_copy_s_h __builtin_msa_copy_s_h
    436 #define __msa_copy_s_w __builtin_msa_copy_s_w
    437 #define __msa_copy_s_d __builtin_msa_copy_s_d
    438 #define __msa_copy_u_b __builtin_msa_copy_u_b
    439 #define __msa_copy_u_h __builtin_msa_copy_u_h
    440 #define __msa_copy_u_w __builtin_msa_copy_u_w
    441 #define __msa_copy_u_d __builtin_msa_copy_u_d
    442 #define __msa_insert_b __builtin_msa_insert_b
    443 #define __msa_insert_h __builtin_msa_insert_h
    444 #define __msa_insert_w __builtin_msa_insert_w
    445 #define __msa_insert_d __builtin_msa_insert_d
    446 #define __msa_insve_b __builtin_msa_insve_b
    447 #define __msa_insve_h __builtin_msa_insve_h
    448 #define __msa_insve_w __builtin_msa_insve_w
    449 #define __msa_insve_d __builtin_msa_insve_d
    450 #define __msa_test_bnz_b __builtin_msa_bnz_b
    451 #define __msa_test_bnz_h __builtin_msa_bnz_h
    452 #define __msa_test_bnz_w __builtin_msa_bnz_w
    453 #define __msa_test_bnz_d __builtin_msa_bnz_d
    454 #define __msa_test_bz_b __builtin_msa_bz_b
    455 #define __msa_test_bz_h __builtin_msa_bz_h
    456 #define __msa_test_bz_w __builtin_msa_bz_w
    457 #define __msa_test_bz_d __builtin_msa_bz_d
    458 #define __msa_ldi_b __builtin_msa_ldi_b
    459 #define __msa_ldi_h __builtin_msa_ldi_h
    460 #define __msa_ldi_w __builtin_msa_ldi_w
    461 #define __msa_ldi_d __builtin_msa_ldi_d
    462 #define __msa_fcaf_w __builtin_msa_fcaf_w
    463 #define __msa_fcaf_d __builtin_msa_fcaf_d
    464 #define __msa_fcor_w __builtin_msa_fcor_w
    465 #define __msa_fcor_d __builtin_msa_fcor_d
    466 #define __msa_fcun_w __builtin_msa_fcun_w
    467 #define __msa_fcun_d __builtin_msa_fcun_d
    468 #define __msa_fcune_w __builtin_msa_fcune_w
    469 #define __msa_fcune_d __builtin_msa_fcune_d
    470 #define __msa_fcueq_w __builtin_msa_fcueq_w
    471 #define __msa_fcueq_d __builtin_msa_fcueq_d
    472 #define __msa_fceq_w __builtin_msa_fceq_w
    473 #define __msa_fceq_d __builtin_msa_fceq_d
    474 #define __msa_fcne_w __builtin_msa_fcne_w
    475 #define __msa_fcne_d __builtin_msa_fcne_d
    476 #define __msa_fclt_w __builtin_msa_fclt_w
    477 #define __msa_fclt_d __builtin_msa_fclt_d
    478 #define __msa_fcult_w __builtin_msa_fcult_w
    479 #define __msa_fcult_d __builtin_msa_fcult_d
    480 #define __msa_fcle_w __builtin_msa_fcle_w
    481 #define __msa_fcle_d __builtin_msa_fcle_d
    482 #define __msa_fcule_w __builtin_msa_fcule_w
    483 #define __msa_fcule_d __builtin_msa_fcule_d
    484 #define __msa_fsaf_w __builtin_msa_fsaf_w
    485 #define __msa_fsaf_d __builtin_msa_fsaf_d
    486 #define __msa_fsor_w __builtin_msa_fsor_w
    487 #define __msa_fsor_d __builtin_msa_fsor_d
    488 #define __msa_fsun_w __builtin_msa_fsun_w
    489 #define __msa_fsun_d __builtin_msa_fsun_d
    490 #define __msa_fsune_w __builtin_msa_fsune_w
    491 #define __msa_fsune_d __builtin_msa_fsune_d
    492 #define __msa_fsueq_w __builtin_msa_fsueq_w
    493 #define __msa_fsueq_d __builtin_msa_fsueq_d
    494 #define __msa_fseq_w __builtin_msa_fseq_w
    495 #define __msa_fseq_d __builtin_msa_fseq_d
    496 #define __msa_fsne_w __builtin_msa_fsne_w
    497 #define __msa_fsne_d __builtin_msa_fsne_d
    498 #define __msa_fslt_w __builtin_msa_fslt_w
    499 #define __msa_fslt_d __builtin_msa_fslt_d
    500 #define __msa_fsult_w __builtin_msa_fsult_w
    501 #define __msa_fsult_d __builtin_msa_fsult_d
    502 #define __msa_fsle_w __builtin_msa_fsle_w
    503 #define __msa_fsle_d __builtin_msa_fsle_d
    504 #define __msa_fsule_w __builtin_msa_fsule_w
    505 #define __msa_fsule_d __builtin_msa_fsule_d
    506 #define __msa_fadd_w __builtin_msa_fadd_w
    507 #define __msa_fadd_d __builtin_msa_fadd_d
    508 #define __msa_fsub_w __builtin_msa_fsub_w
    509 #define __msa_fsub_d __builtin_msa_fsub_d
    510 #define __msa_fmul_w __builtin_msa_fmul_w
    511 #define __msa_fmul_d __builtin_msa_fmul_d
    512 #define __msa_fdiv_w __builtin_msa_fdiv_w
    513 #define __msa_fdiv_d __builtin_msa_fdiv_d
    514 #define __msa_fmadd_w __builtin_msa_fmadd_w
    515 #define __msa_fmadd_d __builtin_msa_fmadd_d
    516 #define __msa_fmsub_w __builtin_msa_fmsub_w
    517 #define __msa_fmsub_d __builtin_msa_fmsub_d
    518 #define __msa_fexp2_w __builtin_msa_fexp2_w
    519 #define __msa_fexp2_d __builtin_msa_fexp2_d
    520 #define __msa_fexdo_h __builtin_msa_fexdo_h
    521 #define __msa_fexdo_w __builtin_msa_fexdo_w
    522 #define __msa_ftq_h __builtin_msa_ftq_h
    523 #define __msa_ftq_w __builtin_msa_ftq_w
    524 #define __msa_fmin_w __builtin_msa_fmin_w
    525 #define __msa_fmin_d __builtin_msa_fmin_d
    526 #define __msa_fmin_a_w __builtin_msa_fmin_a_w
    527 #define __msa_fmin_a_d __builtin_msa_fmin_a_d
    528 #define __msa_fmax_w __builtin_msa_fmax_w
    529 #define __msa_fmax_d __builtin_msa_fmax_d
    530 #define __msa_fmax_a_w __builtin_msa_fmax_a_w
    531 #define __msa_fmax_a_d __builtin_msa_fmax_a_d
    532 #define __msa_mul_q_h __builtin_msa_mul_q_h
    533 #define __msa_mul_q_w __builtin_msa_mul_q_w
    534 #define __msa_mulr_q_h __builtin_msa_mulr_q_h
    535 #define __msa_mulr_q_w __builtin_msa_mulr_q_w
    536 #define __msa_madd_q_h __builtin_msa_madd_q_h
    537 #define __msa_madd_q_w __builtin_msa_madd_q_w
    538 #define __msa_maddr_q_h __builtin_msa_maddr_q_h
    539 #define __msa_maddr_q_w __builtin_msa_maddr_q_w
    540 #define __msa_msub_q_h __builtin_msa_msub_q_h
    541 #define __msa_msub_q_w __builtin_msa_msub_q_w
    542 #define __msa_msubr_q_h __builtin_msa_msubr_q_h
    543 #define __msa_msubr_q_w __builtin_msa_msubr_q_w
    544 #define __msa_fclass_w __builtin_msa_fclass_w
    545 #define __msa_fclass_d __builtin_msa_fclass_d
    546 #define __msa_fsqrt_w __builtin_msa_fsqrt_w
    547 #define __msa_fsqrt_d __builtin_msa_fsqrt_d
    548 #define __msa_frcp_w __builtin_msa_frcp_w
    549 #define __msa_frcp_d __builtin_msa_frcp_d
    550 #define __msa_frint_w __builtin_msa_frint_w
    551 #define __msa_frint_d __builtin_msa_frint_d
    552 #define __msa_frsqrt_w __builtin_msa_frsqrt_w
    553 #define __msa_frsqrt_d __builtin_msa_frsqrt_d
    554 #define __msa_flog2_w __builtin_msa_flog2_w
    555 #define __msa_flog2_d __builtin_msa_flog2_d
    556 #define __msa_fexupl_w __builtin_msa_fexupl_w
    557 #define __msa_fexupl_d __builtin_msa_fexupl_d
    558 #define __msa_fexupr_w __builtin_msa_fexupr_w
    559 #define __msa_fexupr_d __builtin_msa_fexupr_d
    560 #define __msa_ffql_w __builtin_msa_ffql_w
    561 #define __msa_ffql_d __builtin_msa_ffql_d
    562 #define __msa_ffqr_w __builtin_msa_ffqr_w
    563 #define __msa_ffqr_d __builtin_msa_ffqr_d
    564 #define __msa_ftint_s_w __builtin_msa_ftint_s_w
    565 #define __msa_ftint_s_d __builtin_msa_ftint_s_d
    566 #define __msa_ftint_u_w __builtin_msa_ftint_u_w
    567 #define __msa_ftint_u_d __builtin_msa_ftint_u_d
    568 #define __msa_ftrunc_s_w __builtin_msa_ftrunc_s_w
    569 #define __msa_ftrunc_s_d __builtin_msa_ftrunc_s_d
    570 #define __msa_ftrunc_u_w __builtin_msa_ftrunc_u_w
    571 #define __msa_ftrunc_u_d __builtin_msa_ftrunc_u_d
    572 #define __msa_ffint_s_w __builtin_msa_ffint_s_w
    573 #define __msa_ffint_s_d __builtin_msa_ffint_s_d
    574 #define __msa_ffint_u_w __builtin_msa_ffint_u_w
    575 #define __msa_ffint_u_d __builtin_msa_ffint_u_d
    576 #define __msa_cfcmsa __builtin_msa_cfcmsa
    577 #define __msa_move_v __builtin_msa_move_v
    578 #define __msa_cast_to_vector_float __builtin_msa_cast_to_vector_float
    579 #define __msa_cast_to_vector_double __builtin_msa_cast_to_vector_double
    580 #define __msa_cast_to_scalar_float __builtin_msa_cast_to_scalar_float
    581 #define __msa_cast_to_scalar_double __builtin_msa_cast_to_scalar_double
    582 #endif /* defined(__mips_msa) */
    583 #endif /* _MSA_H */
    584