1 /* MIPS MSA intrinsics include file. 2 3 Copyright (C) 2014 Free Software Foundation, Inc. 4 Contributed by Imagination Technologies Ltd. 5 6 This file is part of GCC. 7 8 GCC is free software; you can redistribute it and/or modify it 9 under the terms of the GNU General Public License as published 10 by the Free Software Foundation; either version 3, or (at your 11 option) any later version. 12 13 GCC is distributed in the hope that it will be useful, but WITHOUT 14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 15 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 16 License for more details. 17 18 Under Section 7 of GPL version 3, you are granted additional 19 permissions described in the GCC Runtime Library Exception, version 20 3.1, as published by the Free Software Foundation. 21 22 You should have received a copy of the GNU General Public License and 23 a copy of the GCC Runtime Library Exception along with this program; 24 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 25 <http://www.gnu.org/licenses/>. */ 26 27 #ifndef _MSA_H 28 #define _MSA_H 1 29 30 #if defined(__mips_msa) 31 typedef signed char v16i8 __attribute__((vector_size(16), aligned(16))); 32 typedef signed char v16i8_b __attribute__((vector_size(16), aligned(1))); 33 typedef unsigned char v16u8 __attribute__((vector_size(16), aligned(16))); 34 typedef unsigned char v16u8_b __attribute__((vector_size(16), aligned(1))); 35 typedef short v8i16 __attribute__((vector_size(16), aligned(16))); 36 typedef short v8i16_h __attribute__((vector_size(16), aligned(2))); 37 typedef unsigned short v8u16 __attribute__((vector_size(16), aligned(16))); 38 typedef unsigned short v8u16_h __attribute__((vector_size(16), aligned(2))); 39 typedef int v4i32 __attribute__((vector_size(16), aligned(16))); 40 typedef int v4i32_w __attribute__((vector_size(16), aligned(4))); 41 typedef unsigned int v4u32 __attribute__((vector_size(16), aligned(16))); 42 typedef unsigned int v4u32_w __attribute__((vector_size(16), aligned(4))); 43 typedef long long v2i64 __attribute__((vector_size(16), aligned(16))); 44 typedef long long v2i64_d __attribute__((vector_size(16), aligned(8))); 45 typedef unsigned long long v2u64 __attribute__((vector_size(16), aligned(16))); 46 typedef unsigned long long v2u64_d __attribute__((vector_size(16), aligned(8))); 47 typedef float v4f32 __attribute__((vector_size(16), aligned(16))); 48 typedef float v4f32_w __attribute__((vector_size(16), aligned(4))); 49 typedef double v2f64 __attribute__ ((vector_size(16), aligned(16))); 50 typedef double v2f64_d __attribute__ ((vector_size(16), aligned(8))); 51 52 #ifndef __clang__ 53 extern v16i8 __builtin_msa_sll_b(v16i8, v16i8); 54 #define __msa_sll_b __builtin_msa_sll_b 55 extern v8i16 __builtin_msa_sll_h(v8i16, v8i16); 56 #define __msa_sll_h __builtin_msa_sll_h 57 extern v4i32 __builtin_msa_sll_w(v4i32, v4i32); 58 #define __msa_sll_w __builtin_msa_sll_w 59 extern v2i64 __builtin_msa_sll_d(v2i64, v2i64); 60 #define __msa_sll_d __builtin_msa_sll_d 61 extern v16i8 __builtin_msa_slli_b(v16i8, unsigned char); 62 #define __msa_slli_b __builtin_msa_slli_b 63 extern v8i16 __builtin_msa_slli_h(v8i16, unsigned char); 64 #define __msa_slli_h __builtin_msa_slli_h 65 extern v4i32 __builtin_msa_slli_w(v4i32, unsigned char); 66 #define __msa_slli_w __builtin_msa_slli_w 67 extern v2i64 __builtin_msa_slli_d(v2i64, unsigned char); 68 #define __msa_slli_d __builtin_msa_slli_d 69 extern v16i8 __builtin_msa_sra_b(v16i8, v16i8); 70 #define __msa_sra_b __builtin_msa_sra_b 71 extern v8i16 __builtin_msa_sra_h(v8i16, v8i16); 72 #define __msa_sra_h __builtin_msa_sra_h 73 extern v4i32 __builtin_msa_sra_w(v4i32, v4i32); 74 #define __msa_sra_w __builtin_msa_sra_w 75 extern v2i64 __builtin_msa_sra_d(v2i64, v2i64); 76 #define __msa_sra_d __builtin_msa_sra_d 77 extern v16i8 __builtin_msa_srai_b(v16i8, unsigned char); 78 #define __msa_srai_b __builtin_msa_srai_b 79 extern v8i16 __builtin_msa_srai_h(v8i16, unsigned char); 80 #define __msa_srai_h __builtin_msa_srai_h 81 extern v4i32 __builtin_msa_srai_w(v4i32, unsigned char); 82 #define __msa_srai_w __builtin_msa_srai_w 83 extern v2i64 __builtin_msa_srai_d(v2i64, unsigned char); 84 #define __msa_srai_d __builtin_msa_srai_d 85 extern v16i8 __builtin_msa_srar_b(v16i8, v16i8); 86 #define __msa_srar_b __builtin_msa_srar_b 87 extern v8i16 __builtin_msa_srar_h(v8i16, v8i16); 88 #define __msa_srar_h __builtin_msa_srar_h 89 extern v4i32 __builtin_msa_srar_w(v4i32, v4i32); 90 #define __msa_srar_w __builtin_msa_srar_w 91 extern v2i64 __builtin_msa_srar_d(v2i64, v2i64); 92 #define __msa_srar_d __builtin_msa_srar_d 93 extern v16i8 __builtin_msa_srari_b(v16i8, unsigned char); 94 #define __msa_srari_b __builtin_msa_srari_b 95 extern v8i16 __builtin_msa_srari_h(v8i16, unsigned char); 96 #define __msa_srari_h __builtin_msa_srari_h 97 extern v4i32 __builtin_msa_srari_w(v4i32, unsigned char); 98 #define __msa_srari_w __builtin_msa_srari_w 99 extern v2i64 __builtin_msa_srari_d(v2i64, unsigned char); 100 #define __msa_srari_d __builtin_msa_srari_d 101 extern v16i8 __builtin_msa_srl_b(v16i8, v16i8); 102 #define __msa_srl_b __builtin_msa_srl_b 103 extern v8i16 __builtin_msa_srl_h(v8i16, v8i16); 104 #define __msa_srl_h __builtin_msa_srl_h 105 extern v4i32 __builtin_msa_srl_w(v4i32, v4i32); 106 #define __msa_srl_w __builtin_msa_srl_w 107 extern v2i64 __builtin_msa_srl_d(v2i64, v2i64); 108 #define __msa_srl_d __builtin_msa_srl_d 109 extern v16i8 __builtin_msa_srli_b(v16i8, unsigned char); 110 #define __msa_srli_b __builtin_msa_srli_b 111 extern v8i16 __builtin_msa_srli_h(v8i16, unsigned char); 112 #define __msa_srli_h __builtin_msa_srli_h 113 extern v4i32 __builtin_msa_srli_w(v4i32, unsigned char); 114 #define __msa_srli_w __builtin_msa_srli_w 115 extern v2i64 __builtin_msa_srli_d(v2i64, unsigned char); 116 #define __msa_srli_d __builtin_msa_srli_d 117 extern v16i8 __builtin_msa_srlr_b(v16i8, v16i8); 118 #define __msa_srlr_b __builtin_msa_srlr_b 119 extern v8i16 __builtin_msa_srlr_h(v8i16, v8i16); 120 #define __msa_srlr_h __builtin_msa_srlr_h 121 extern v4i32 __builtin_msa_srlr_w(v4i32, v4i32); 122 #define __msa_srlr_w __builtin_msa_srlr_w 123 extern v2i64 __builtin_msa_srlr_d(v2i64, v2i64); 124 #define __msa_srlr_d __builtin_msa_srlr_d 125 extern v16i8 __builtin_msa_srlri_b(v16i8, unsigned char); 126 #define __msa_srlri_b __builtin_msa_srlri_b 127 extern v8i16 __builtin_msa_srlri_h(v8i16, unsigned char); 128 #define __msa_srlri_h __builtin_msa_srlri_h 129 extern v4i32 __builtin_msa_srlri_w(v4i32, unsigned char); 130 #define __msa_srlri_w __builtin_msa_srlri_w 131 extern v2i64 __builtin_msa_srlri_d(v2i64, unsigned char); 132 #define __msa_srlri_d __builtin_msa_srlri_d 133 extern v16u8 __builtin_msa_bclr_b(v16u8, v16u8); 134 #define __msa_bclr_b __builtin_msa_bclr_b 135 extern v8u16 __builtin_msa_bclr_h(v8u16, v8u16); 136 #define __msa_bclr_h __builtin_msa_bclr_h 137 extern v4u32 __builtin_msa_bclr_w(v4u32, v4u32); 138 #define __msa_bclr_w __builtin_msa_bclr_w 139 extern v2u64 __builtin_msa_bclr_d(v2u64, v2u64); 140 #define __msa_bclr_d __builtin_msa_bclr_d 141 extern v16u8 __builtin_msa_bclri_b(v16u8, unsigned char); 142 #define __msa_bclri_b __builtin_msa_bclri_b 143 extern v8u16 __builtin_msa_bclri_h(v8u16, unsigned char); 144 #define __msa_bclri_h __builtin_msa_bclri_h 145 extern v4u32 __builtin_msa_bclri_w(v4u32, unsigned char); 146 #define __msa_bclri_w __builtin_msa_bclri_w 147 extern v2u64 __builtin_msa_bclri_d(v2u64, unsigned char); 148 #define __msa_bclri_d __builtin_msa_bclri_d 149 extern v16u8 __builtin_msa_bset_b(v16u8, v16u8); 150 #define __msa_bset_b __builtin_msa_bset_b 151 extern v8u16 __builtin_msa_bset_h(v8u16, v8u16); 152 #define __msa_bset_h __builtin_msa_bset_h 153 extern v4u32 __builtin_msa_bset_w(v4u32, v4u32); 154 #define __msa_bset_w __builtin_msa_bset_w 155 extern v2u64 __builtin_msa_bset_d(v2u64, v2u64); 156 #define __msa_bset_d __builtin_msa_bset_d 157 extern v16u8 __builtin_msa_bseti_b(v16u8, unsigned char); 158 #define __msa_bseti_b __builtin_msa_bseti_b 159 extern v8u16 __builtin_msa_bseti_h(v8u16, unsigned char); 160 #define __msa_bseti_h __builtin_msa_bseti_h 161 extern v4u32 __builtin_msa_bseti_w(v4u32, unsigned char); 162 #define __msa_bseti_w __builtin_msa_bseti_w 163 extern v2u64 __builtin_msa_bseti_d(v2u64, unsigned char); 164 #define __msa_bseti_d __builtin_msa_bseti_d 165 extern v16u8 __builtin_msa_bneg_b(v16u8, v16u8); 166 #define __msa_bneg_b __builtin_msa_bneg_b 167 extern v8u16 __builtin_msa_bneg_h(v8u16, v8u16); 168 #define __msa_bneg_h __builtin_msa_bneg_h 169 extern v4u32 __builtin_msa_bneg_w(v4u32, v4u32); 170 #define __msa_bneg_w __builtin_msa_bneg_w 171 extern v2u64 __builtin_msa_bneg_d(v2u64, v2u64); 172 #define __msa_bneg_d __builtin_msa_bneg_d 173 extern v16u8 __builtin_msa_bnegi_b(v16u8, unsigned char); 174 #define __msa_bnegi_b __builtin_msa_bnegi_b 175 extern v8u16 __builtin_msa_bnegi_h(v8u16, unsigned char); 176 #define __msa_bnegi_h __builtin_msa_bnegi_h 177 extern v4u32 __builtin_msa_bnegi_w(v4u32, unsigned char); 178 #define __msa_bnegi_w __builtin_msa_bnegi_w 179 extern v2u64 __builtin_msa_bnegi_d(v2u64, unsigned char); 180 #define __msa_bnegi_d __builtin_msa_bnegi_d 181 extern v16u8 __builtin_msa_binsl_b(v16u8, v16u8, v16u8); 182 #define __msa_binsl_b __builtin_msa_binsl_b 183 extern v8u16 __builtin_msa_binsl_h(v8u16, v8u16, v8u16); 184 #define __msa_binsl_h __builtin_msa_binsl_h 185 extern v4u32 __builtin_msa_binsl_w(v4u32, v4u32, v4u32); 186 #define __msa_binsl_w __builtin_msa_binsl_w 187 extern v2u64 __builtin_msa_binsl_d(v2u64, v2u64, v2u64); 188 #define __msa_binsl_d __builtin_msa_binsl_d 189 extern v16u8 __builtin_msa_binsli_b(v16u8, v16u8, unsigned char); 190 #define __msa_binsli_b __builtin_msa_binsli_b 191 extern v8u16 __builtin_msa_binsli_h(v8u16, v8u16, unsigned char); 192 #define __msa_binsli_h __builtin_msa_binsli_h 193 extern v4u32 __builtin_msa_binsli_w(v4u32, v4u32, unsigned char); 194 #define __msa_binsli_w __builtin_msa_binsli_w 195 extern v2u64 __builtin_msa_binsli_d(v2u64, v2u64, unsigned char); 196 #define __msa_binsli_d __builtin_msa_binsli_d 197 extern v16u8 __builtin_msa_binsr_b(v16u8, v16u8, v16u8); 198 #define __msa_binsr_b __builtin_msa_binsr_b 199 extern v8u16 __builtin_msa_binsr_h(v8u16, v8u16, v8u16); 200 #define __msa_binsr_h __builtin_msa_binsr_h 201 extern v4u32 __builtin_msa_binsr_w(v4u32, v4u32, v4u32); 202 #define __msa_binsr_w __builtin_msa_binsr_w 203 extern v2u64 __builtin_msa_binsr_d(v2u64, v2u64, v2u64); 204 #define __msa_binsr_d __builtin_msa_binsr_d 205 extern v16u8 __builtin_msa_binsri_b(v16u8, v16u8, unsigned char); 206 #define __msa_binsri_b __builtin_msa_binsri_b 207 extern v8u16 __builtin_msa_binsri_h(v8u16, v8u16, unsigned char); 208 #define __msa_binsri_h __builtin_msa_binsri_h 209 extern v4u32 __builtin_msa_binsri_w(v4u32, v4u32, unsigned char); 210 #define __msa_binsri_w __builtin_msa_binsri_w 211 extern v2u64 __builtin_msa_binsri_d(v2u64, v2u64, unsigned char); 212 #define __msa_binsri_d __builtin_msa_binsri_d 213 extern v16i8 __builtin_msa_addv_b(v16i8, v16i8); 214 #define __msa_addv_b __builtin_msa_addv_b 215 extern v8i16 __builtin_msa_addv_h(v8i16, v8i16); 216 #define __msa_addv_h __builtin_msa_addv_h 217 extern v4i32 __builtin_msa_addv_w(v4i32, v4i32); 218 #define __msa_addv_w __builtin_msa_addv_w 219 extern v2i64 __builtin_msa_addv_d(v2i64, v2i64); 220 #define __msa_addv_d __builtin_msa_addv_d 221 extern v16i8 __builtin_msa_addvi_b(v16i8, unsigned char); 222 #define __msa_addvi_b __builtin_msa_addvi_b 223 extern v8i16 __builtin_msa_addvi_h(v8i16, unsigned char); 224 #define __msa_addvi_h __builtin_msa_addvi_h 225 extern v4i32 __builtin_msa_addvi_w(v4i32, unsigned char); 226 #define __msa_addvi_w __builtin_msa_addvi_w 227 extern v2i64 __builtin_msa_addvi_d(v2i64, unsigned char); 228 #define __msa_addvi_d __builtin_msa_addvi_d 229 extern v16i8 __builtin_msa_subv_b(v16i8, v16i8); 230 #define __msa_subv_b __builtin_msa_subv_b 231 extern v8i16 __builtin_msa_subv_h(v8i16, v8i16); 232 #define __msa_subv_h __builtin_msa_subv_h 233 extern v4i32 __builtin_msa_subv_w(v4i32, v4i32); 234 #define __msa_subv_w __builtin_msa_subv_w 235 extern v2i64 __builtin_msa_subv_d(v2i64, v2i64); 236 #define __msa_subv_d __builtin_msa_subv_d 237 extern v16i8 __builtin_msa_subvi_b(v16i8, unsigned char); 238 #define __msa_subvi_b __builtin_msa_subvi_b 239 extern v8i16 __builtin_msa_subvi_h(v8i16, unsigned char); 240 #define __msa_subvi_h __builtin_msa_subvi_h 241 extern v4i32 __builtin_msa_subvi_w(v4i32, unsigned char); 242 #define __msa_subvi_w __builtin_msa_subvi_w 243 extern v2i64 __builtin_msa_subvi_d(v2i64, unsigned char); 244 #define __msa_subvi_d __builtin_msa_subvi_d 245 extern v16i8 __builtin_msa_max_s_b(v16i8, v16i8); 246 #define __msa_max_s_b __builtin_msa_max_s_b 247 extern v8i16 __builtin_msa_max_s_h(v8i16, v8i16); 248 #define __msa_max_s_h __builtin_msa_max_s_h 249 extern v4i32 __builtin_msa_max_s_w(v4i32, v4i32); 250 #define __msa_max_s_w __builtin_msa_max_s_w 251 extern v2i64 __builtin_msa_max_s_d(v2i64, v2i64); 252 #define __msa_max_s_d __builtin_msa_max_s_d 253 extern v16i8 __builtin_msa_maxi_s_b(v16i8, char); 254 #define __msa_maxi_s_b __builtin_msa_maxi_s_b 255 extern v8i16 __builtin_msa_maxi_s_h(v8i16, char); 256 #define __msa_maxi_s_h __builtin_msa_maxi_s_h 257 extern v4i32 __builtin_msa_maxi_s_w(v4i32, char); 258 #define __msa_maxi_s_w __builtin_msa_maxi_s_w 259 extern v2i64 __builtin_msa_maxi_s_d(v2i64, char); 260 #define __msa_maxi_s_d __builtin_msa_maxi_s_d 261 extern v16u8 __builtin_msa_max_u_b(v16u8, v16u8); 262 #define __msa_max_u_b __builtin_msa_max_u_b 263 extern v8u16 __builtin_msa_max_u_h(v8u16, v8u16); 264 #define __msa_max_u_h __builtin_msa_max_u_h 265 extern v4u32 __builtin_msa_max_u_w(v4u32, v4u32); 266 #define __msa_max_u_w __builtin_msa_max_u_w 267 extern v2u64 __builtin_msa_max_u_d(v2u64, v2u64); 268 #define __msa_max_u_d __builtin_msa_max_u_d 269 extern v16u8 __builtin_msa_maxi_u_b(v16u8, unsigned char); 270 #define __msa_maxi_u_b __builtin_msa_maxi_u_b 271 extern v8u16 __builtin_msa_maxi_u_h(v8u16, unsigned char); 272 #define __msa_maxi_u_h __builtin_msa_maxi_u_h 273 extern v4u32 __builtin_msa_maxi_u_w(v4u32, unsigned char); 274 #define __msa_maxi_u_w __builtin_msa_maxi_u_w 275 extern v2u64 __builtin_msa_maxi_u_d(v2u64, unsigned char); 276 #define __msa_maxi_u_d __builtin_msa_maxi_u_d 277 extern v16i8 __builtin_msa_min_s_b(v16i8, v16i8); 278 #define __msa_min_s_b __builtin_msa_min_s_b 279 extern v8i16 __builtin_msa_min_s_h(v8i16, v8i16); 280 #define __msa_min_s_h __builtin_msa_min_s_h 281 extern v4i32 __builtin_msa_min_s_w(v4i32, v4i32); 282 #define __msa_min_s_w __builtin_msa_min_s_w 283 extern v2i64 __builtin_msa_min_s_d(v2i64, v2i64); 284 #define __msa_min_s_d __builtin_msa_min_s_d 285 extern v16i8 __builtin_msa_mini_s_b(v16i8, char); 286 #define __msa_mini_s_b __builtin_msa_mini_s_b 287 extern v8i16 __builtin_msa_mini_s_h(v8i16, char); 288 #define __msa_mini_s_h __builtin_msa_mini_s_h 289 extern v4i32 __builtin_msa_mini_s_w(v4i32, char); 290 #define __msa_mini_s_w __builtin_msa_mini_s_w 291 extern v2i64 __builtin_msa_mini_s_d(v2i64, char); 292 #define __msa_mini_s_d __builtin_msa_mini_s_d 293 extern v16u8 __builtin_msa_min_u_b(v16u8, v16u8); 294 #define __msa_min_u_b __builtin_msa_min_u_b 295 extern v8u16 __builtin_msa_min_u_h(v8u16, v8u16); 296 #define __msa_min_u_h __builtin_msa_min_u_h 297 extern v4u32 __builtin_msa_min_u_w(v4u32, v4u32); 298 #define __msa_min_u_w __builtin_msa_min_u_w 299 extern v2u64 __builtin_msa_min_u_d(v2u64, v2u64); 300 #define __msa_min_u_d __builtin_msa_min_u_d 301 extern v16u8 __builtin_msa_mini_u_b(v16u8, unsigned char); 302 #define __msa_mini_u_b __builtin_msa_mini_u_b 303 extern v8u16 __builtin_msa_mini_u_h(v8u16, unsigned char); 304 #define __msa_mini_u_h __builtin_msa_mini_u_h 305 extern v4u32 __builtin_msa_mini_u_w(v4u32, unsigned char); 306 #define __msa_mini_u_w __builtin_msa_mini_u_w 307 extern v2u64 __builtin_msa_mini_u_d(v2u64, unsigned char); 308 #define __msa_mini_u_d __builtin_msa_mini_u_d 309 extern v16i8 __builtin_msa_max_a_b(v16i8, v16i8); 310 #define __msa_max_a_b __builtin_msa_max_a_b 311 extern v8i16 __builtin_msa_max_a_h(v8i16, v8i16); 312 #define __msa_max_a_h __builtin_msa_max_a_h 313 extern v4i32 __builtin_msa_max_a_w(v4i32, v4i32); 314 #define __msa_max_a_w __builtin_msa_max_a_w 315 extern v2i64 __builtin_msa_max_a_d(v2i64, v2i64); 316 #define __msa_max_a_d __builtin_msa_max_a_d 317 extern v16i8 __builtin_msa_min_a_b(v16i8, v16i8); 318 #define __msa_min_a_b __builtin_msa_min_a_b 319 extern v8i16 __builtin_msa_min_a_h(v8i16, v8i16); 320 #define __msa_min_a_h __builtin_msa_min_a_h 321 extern v4i32 __builtin_msa_min_a_w(v4i32, v4i32); 322 #define __msa_min_a_w __builtin_msa_min_a_w 323 extern v2i64 __builtin_msa_min_a_d(v2i64, v2i64); 324 #define __msa_min_a_d __builtin_msa_min_a_d 325 extern v16i8 __builtin_msa_ceq_b(v16i8, v16i8); 326 #define __msa_ceq_b __builtin_msa_ceq_b 327 extern v8i16 __builtin_msa_ceq_h(v8i16, v8i16); 328 #define __msa_ceq_h __builtin_msa_ceq_h 329 extern v4i32 __builtin_msa_ceq_w(v4i32, v4i32); 330 #define __msa_ceq_w __builtin_msa_ceq_w 331 extern v2i64 __builtin_msa_ceq_d(v2i64, v2i64); 332 #define __msa_ceq_d __builtin_msa_ceq_d 333 extern v16i8 __builtin_msa_ceqi_b(v16i8, char); 334 #define __msa_ceqi_b __builtin_msa_ceqi_b 335 extern v8i16 __builtin_msa_ceqi_h(v8i16, char); 336 #define __msa_ceqi_h __builtin_msa_ceqi_h 337 extern v4i32 __builtin_msa_ceqi_w(v4i32, char); 338 #define __msa_ceqi_w __builtin_msa_ceqi_w 339 extern v2i64 __builtin_msa_ceqi_d(v2i64, char); 340 #define __msa_ceqi_d __builtin_msa_ceqi_d 341 extern v16i8 __builtin_msa_clt_s_b(v16i8, v16i8); 342 #define __msa_clt_s_b __builtin_msa_clt_s_b 343 extern v8i16 __builtin_msa_clt_s_h(v8i16, v8i16); 344 #define __msa_clt_s_h __builtin_msa_clt_s_h 345 extern v4i32 __builtin_msa_clt_s_w(v4i32, v4i32); 346 #define __msa_clt_s_w __builtin_msa_clt_s_w 347 extern v2i64 __builtin_msa_clt_s_d(v2i64, v2i64); 348 #define __msa_clt_s_d __builtin_msa_clt_s_d 349 extern v16i8 __builtin_msa_clti_s_b(v16i8, char); 350 #define __msa_clti_s_b __builtin_msa_clti_s_b 351 extern v8i16 __builtin_msa_clti_s_h(v8i16, char); 352 #define __msa_clti_s_h __builtin_msa_clti_s_h 353 extern v4i32 __builtin_msa_clti_s_w(v4i32, char); 354 #define __msa_clti_s_w __builtin_msa_clti_s_w 355 extern v2i64 __builtin_msa_clti_s_d(v2i64, char); 356 #define __msa_clti_s_d __builtin_msa_clti_s_d 357 extern v16i8 __builtin_msa_clt_u_b(v16u8, v16u8); 358 #define __msa_clt_u_b __builtin_msa_clt_u_b 359 extern v8i16 __builtin_msa_clt_u_h(v8u16, v8u16); 360 #define __msa_clt_u_h __builtin_msa_clt_u_h 361 extern v4i32 __builtin_msa_clt_u_w(v4u32, v4u32); 362 #define __msa_clt_u_w __builtin_msa_clt_u_w 363 extern v2i64 __builtin_msa_clt_u_d(v2u64, v2u64); 364 #define __msa_clt_u_d __builtin_msa_clt_u_d 365 extern v16i8 __builtin_msa_clti_u_b(v16u8, unsigned char); 366 #define __msa_clti_u_b __builtin_msa_clti_u_b 367 extern v8i16 __builtin_msa_clti_u_h(v8u16, unsigned char); 368 #define __msa_clti_u_h __builtin_msa_clti_u_h 369 extern v4i32 __builtin_msa_clti_u_w(v4u32, unsigned char); 370 #define __msa_clti_u_w __builtin_msa_clti_u_w 371 extern v2i64 __builtin_msa_clti_u_d(v2u64, unsigned char); 372 #define __msa_clti_u_d __builtin_msa_clti_u_d 373 extern v16i8 __builtin_msa_cle_s_b(v16i8, v16i8); 374 #define __msa_cle_s_b __builtin_msa_cle_s_b 375 extern v8i16 __builtin_msa_cle_s_h(v8i16, v8i16); 376 #define __msa_cle_s_h __builtin_msa_cle_s_h 377 extern v4i32 __builtin_msa_cle_s_w(v4i32, v4i32); 378 #define __msa_cle_s_w __builtin_msa_cle_s_w 379 extern v2i64 __builtin_msa_cle_s_d(v2i64, v2i64); 380 #define __msa_cle_s_d __builtin_msa_cle_s_d 381 extern v16i8 __builtin_msa_clei_s_b(v16i8, char); 382 #define __msa_clei_s_b __builtin_msa_clei_s_b 383 extern v8i16 __builtin_msa_clei_s_h(v8i16, char); 384 #define __msa_clei_s_h __builtin_msa_clei_s_h 385 extern v4i32 __builtin_msa_clei_s_w(v4i32, char); 386 #define __msa_clei_s_w __builtin_msa_clei_s_w 387 extern v2i64 __builtin_msa_clei_s_d(v2i64, char); 388 #define __msa_clei_s_d __builtin_msa_clei_s_d 389 extern v16i8 __builtin_msa_cle_u_b(v16u8, v16u8); 390 #define __msa_cle_u_b __builtin_msa_cle_u_b 391 extern v8i16 __builtin_msa_cle_u_h(v8u16, v8u16); 392 #define __msa_cle_u_h __builtin_msa_cle_u_h 393 extern v4i32 __builtin_msa_cle_u_w(v4u32, v4u32); 394 #define __msa_cle_u_w __builtin_msa_cle_u_w 395 extern v2i64 __builtin_msa_cle_u_d(v2u64, v2u64); 396 #define __msa_cle_u_d __builtin_msa_cle_u_d 397 extern v16i8 __builtin_msa_clei_u_b(v16u8, unsigned char); 398 #define __msa_clei_u_b __builtin_msa_clei_u_b 399 extern v8i16 __builtin_msa_clei_u_h(v8u16, unsigned char); 400 #define __msa_clei_u_h __builtin_msa_clei_u_h 401 extern v4i32 __builtin_msa_clei_u_w(v4u32, unsigned char); 402 #define __msa_clei_u_w __builtin_msa_clei_u_w 403 extern v2i64 __builtin_msa_clei_u_d(v2u64, unsigned char); 404 #define __msa_clei_u_d __builtin_msa_clei_u_d 405 extern v16i8 __builtin_msa_ld_b(void *, int); 406 #define __msa_ld_b __builtin_msa_ld_b 407 extern v8i16 __builtin_msa_ld_h(void *, int); 408 #define __msa_ld_h __builtin_msa_ld_h 409 extern v4i32 __builtin_msa_ld_w(void *, int); 410 #define __msa_ld_w __builtin_msa_ld_w 411 extern v2i64 __builtin_msa_ld_d(void *, int); 412 #define __msa_ld_d __builtin_msa_ld_d 413 extern v16i8 __builtin_msa_sat_s_b(v16i8, unsigned char); 414 #define __msa_sat_s_b __builtin_msa_sat_s_b 415 extern v8i16 __builtin_msa_sat_s_h(v8i16, unsigned char); 416 #define __msa_sat_s_h __builtin_msa_sat_s_h 417 extern v4i32 __builtin_msa_sat_s_w(v4i32, unsigned char); 418 #define __msa_sat_s_w __builtin_msa_sat_s_w 419 extern v2i64 __builtin_msa_sat_s_d(v2i64, unsigned char); 420 #define __msa_sat_s_d __builtin_msa_sat_s_d 421 extern v16u8 __builtin_msa_sat_u_b(v16u8, unsigned char); 422 #define __msa_sat_u_b __builtin_msa_sat_u_b 423 extern v8u16 __builtin_msa_sat_u_h(v8u16, unsigned char); 424 #define __msa_sat_u_h __builtin_msa_sat_u_h 425 extern v4u32 __builtin_msa_sat_u_w(v4u32, unsigned char); 426 #define __msa_sat_u_w __builtin_msa_sat_u_w 427 extern v2u64 __builtin_msa_sat_u_d(v2u64, unsigned char); 428 #define __msa_sat_u_d __builtin_msa_sat_u_d 429 extern v16i8 __builtin_msa_add_a_b(v16i8, v16i8); 430 #define __msa_add_a_b __builtin_msa_add_a_b 431 extern v8i16 __builtin_msa_add_a_h(v8i16, v8i16); 432 #define __msa_add_a_h __builtin_msa_add_a_h 433 extern v4i32 __builtin_msa_add_a_w(v4i32, v4i32); 434 #define __msa_add_a_w __builtin_msa_add_a_w 435 extern v2i64 __builtin_msa_add_a_d(v2i64, v2i64); 436 #define __msa_add_a_d __builtin_msa_add_a_d 437 extern v16i8 __builtin_msa_adds_a_b(v16i8, v16i8); 438 #define __msa_adds_a_b __builtin_msa_adds_a_b 439 extern v8i16 __builtin_msa_adds_a_h(v8i16, v8i16); 440 #define __msa_adds_a_h __builtin_msa_adds_a_h 441 extern v4i32 __builtin_msa_adds_a_w(v4i32, v4i32); 442 #define __msa_adds_a_w __builtin_msa_adds_a_w 443 extern v2i64 __builtin_msa_adds_a_d(v2i64, v2i64); 444 #define __msa_adds_a_d __builtin_msa_adds_a_d 445 extern v16i8 __builtin_msa_adds_s_b(v16i8, v16i8); 446 #define __msa_adds_s_b __builtin_msa_adds_s_b 447 extern v8i16 __builtin_msa_adds_s_h(v8i16, v8i16); 448 #define __msa_adds_s_h __builtin_msa_adds_s_h 449 extern v4i32 __builtin_msa_adds_s_w(v4i32, v4i32); 450 #define __msa_adds_s_w __builtin_msa_adds_s_w 451 extern v2i64 __builtin_msa_adds_s_d(v2i64, v2i64); 452 #define __msa_adds_s_d __builtin_msa_adds_s_d 453 extern v16u8 __builtin_msa_adds_u_b(v16u8, v16u8); 454 #define __msa_adds_u_b __builtin_msa_adds_u_b 455 extern v8u16 __builtin_msa_adds_u_h(v8u16, v8u16); 456 #define __msa_adds_u_h __builtin_msa_adds_u_h 457 extern v4u32 __builtin_msa_adds_u_w(v4u32, v4u32); 458 #define __msa_adds_u_w __builtin_msa_adds_u_w 459 extern v2u64 __builtin_msa_adds_u_d(v2u64, v2u64); 460 #define __msa_adds_u_d __builtin_msa_adds_u_d 461 extern v16i8 __builtin_msa_ave_s_b(v16i8, v16i8); 462 #define __msa_ave_s_b __builtin_msa_ave_s_b 463 extern v8i16 __builtin_msa_ave_s_h(v8i16, v8i16); 464 #define __msa_ave_s_h __builtin_msa_ave_s_h 465 extern v4i32 __builtin_msa_ave_s_w(v4i32, v4i32); 466 #define __msa_ave_s_w __builtin_msa_ave_s_w 467 extern v2i64 __builtin_msa_ave_s_d(v2i64, v2i64); 468 #define __msa_ave_s_d __builtin_msa_ave_s_d 469 extern v16u8 __builtin_msa_ave_u_b(v16u8, v16u8); 470 #define __msa_ave_u_b __builtin_msa_ave_u_b 471 extern v8u16 __builtin_msa_ave_u_h(v8u16, v8u16); 472 #define __msa_ave_u_h __builtin_msa_ave_u_h 473 extern v4u32 __builtin_msa_ave_u_w(v4u32, v4u32); 474 #define __msa_ave_u_w __builtin_msa_ave_u_w 475 extern v2u64 __builtin_msa_ave_u_d(v2u64, v2u64); 476 #define __msa_ave_u_d __builtin_msa_ave_u_d 477 extern v16i8 __builtin_msa_aver_s_b(v16i8, v16i8); 478 #define __msa_aver_s_b __builtin_msa_aver_s_b 479 extern v8i16 __builtin_msa_aver_s_h(v8i16, v8i16); 480 #define __msa_aver_s_h __builtin_msa_aver_s_h 481 extern v4i32 __builtin_msa_aver_s_w(v4i32, v4i32); 482 #define __msa_aver_s_w __builtin_msa_aver_s_w 483 extern v2i64 __builtin_msa_aver_s_d(v2i64, v2i64); 484 #define __msa_aver_s_d __builtin_msa_aver_s_d 485 extern v16u8 __builtin_msa_aver_u_b(v16u8, v16u8); 486 #define __msa_aver_u_b __builtin_msa_aver_u_b 487 extern v8u16 __builtin_msa_aver_u_h(v8u16, v8u16); 488 #define __msa_aver_u_h __builtin_msa_aver_u_h 489 extern v4u32 __builtin_msa_aver_u_w(v4u32, v4u32); 490 #define __msa_aver_u_w __builtin_msa_aver_u_w 491 extern v2u64 __builtin_msa_aver_u_d(v2u64, v2u64); 492 #define __msa_aver_u_d __builtin_msa_aver_u_d 493 extern v16i8 __builtin_msa_subs_s_b(v16i8, v16i8); 494 #define __msa_subs_s_b __builtin_msa_subs_s_b 495 extern v8i16 __builtin_msa_subs_s_h(v8i16, v8i16); 496 #define __msa_subs_s_h __builtin_msa_subs_s_h 497 extern v4i32 __builtin_msa_subs_s_w(v4i32, v4i32); 498 #define __msa_subs_s_w __builtin_msa_subs_s_w 499 extern v2i64 __builtin_msa_subs_s_d(v2i64, v2i64); 500 #define __msa_subs_s_d __builtin_msa_subs_s_d 501 extern v16u8 __builtin_msa_subs_u_b(v16u8, v16u8); 502 #define __msa_subs_u_b __builtin_msa_subs_u_b 503 extern v8u16 __builtin_msa_subs_u_h(v8u16, v8u16); 504 #define __msa_subs_u_h __builtin_msa_subs_u_h 505 extern v4u32 __builtin_msa_subs_u_w(v4u32, v4u32); 506 #define __msa_subs_u_w __builtin_msa_subs_u_w 507 extern v2u64 __builtin_msa_subs_u_d(v2u64, v2u64); 508 #define __msa_subs_u_d __builtin_msa_subs_u_d 509 extern v16i8 __builtin_msa_subsuu_s_b(v16u8, v16u8); 510 #define __msa_subsuu_s_b __builtin_msa_subsuu_s_b 511 extern v8i16 __builtin_msa_subsuu_s_h(v8u16, v8u16); 512 #define __msa_subsuu_s_h __builtin_msa_subsuu_s_h 513 extern v4i32 __builtin_msa_subsuu_s_w(v4u32, v4u32); 514 #define __msa_subsuu_s_w __builtin_msa_subsuu_s_w 515 extern v2i64 __builtin_msa_subsuu_s_d(v2u64, v2u64); 516 #define __msa_subsuu_s_d __builtin_msa_subsuu_s_d 517 extern v16u8 __builtin_msa_subsus_u_b(v16u8, v16i8); 518 #define __msa_subsus_u_b __builtin_msa_subsus_u_b 519 extern v8u16 __builtin_msa_subsus_u_h(v8u16, v8i16); 520 #define __msa_subsus_u_h __builtin_msa_subsus_u_h 521 extern v4u32 __builtin_msa_subsus_u_w(v4u32, v4i32); 522 #define __msa_subsus_u_w __builtin_msa_subsus_u_w 523 extern v2u64 __builtin_msa_subsus_u_d(v2u64, v2i64); 524 #define __msa_subsus_u_d __builtin_msa_subsus_u_d 525 extern v16i8 __builtin_msa_asub_s_b(v16i8, v16i8); 526 #define __msa_asub_s_b __builtin_msa_asub_s_b 527 extern v8i16 __builtin_msa_asub_s_h(v8i16, v8i16); 528 #define __msa_asub_s_h __builtin_msa_asub_s_h 529 extern v4i32 __builtin_msa_asub_s_w(v4i32, v4i32); 530 #define __msa_asub_s_w __builtin_msa_asub_s_w 531 extern v2i64 __builtin_msa_asub_s_d(v2i64, v2i64); 532 #define __msa_asub_s_d __builtin_msa_asub_s_d 533 extern v16u8 __builtin_msa_asub_u_b(v16u8, v16u8); 534 #define __msa_asub_u_b __builtin_msa_asub_u_b 535 extern v8u16 __builtin_msa_asub_u_h(v8u16, v8u16); 536 #define __msa_asub_u_h __builtin_msa_asub_u_h 537 extern v4u32 __builtin_msa_asub_u_w(v4u32, v4u32); 538 #define __msa_asub_u_w __builtin_msa_asub_u_w 539 extern v2u64 __builtin_msa_asub_u_d(v2u64, v2u64); 540 #define __msa_asub_u_d __builtin_msa_asub_u_d 541 extern v16i8 __builtin_msa_mulv_b(v16i8, v16i8); 542 #define __msa_mulv_b __builtin_msa_mulv_b 543 extern v8i16 __builtin_msa_mulv_h(v8i16, v8i16); 544 #define __msa_mulv_h __builtin_msa_mulv_h 545 extern v4i32 __builtin_msa_mulv_w(v4i32, v4i32); 546 #define __msa_mulv_w __builtin_msa_mulv_w 547 extern v2i64 __builtin_msa_mulv_d(v2i64, v2i64); 548 #define __msa_mulv_d __builtin_msa_mulv_d 549 extern v16i8 __builtin_msa_maddv_b(v16i8, v16i8, v16i8); 550 #define __msa_maddv_b __builtin_msa_maddv_b 551 extern v8i16 __builtin_msa_maddv_h(v8i16, v8i16, v8i16); 552 #define __msa_maddv_h __builtin_msa_maddv_h 553 extern v4i32 __builtin_msa_maddv_w(v4i32, v4i32, v4i32); 554 #define __msa_maddv_w __builtin_msa_maddv_w 555 extern v2i64 __builtin_msa_maddv_d(v2i64, v2i64, v2i64); 556 #define __msa_maddv_d __builtin_msa_maddv_d 557 extern v16i8 __builtin_msa_msubv_b(v16i8, v16i8, v16i8); 558 #define __msa_msubv_b __builtin_msa_msubv_b 559 extern v8i16 __builtin_msa_msubv_h(v8i16, v8i16, v8i16); 560 #define __msa_msubv_h __builtin_msa_msubv_h 561 extern v4i32 __builtin_msa_msubv_w(v4i32, v4i32, v4i32); 562 #define __msa_msubv_w __builtin_msa_msubv_w 563 extern v2i64 __builtin_msa_msubv_d(v2i64, v2i64, v2i64); 564 #define __msa_msubv_d __builtin_msa_msubv_d 565 extern v16i8 __builtin_msa_div_s_b(v16i8, v16i8); 566 #define __msa_div_s_b __builtin_msa_div_s_b 567 extern v8i16 __builtin_msa_div_s_h(v8i16, v8i16); 568 #define __msa_div_s_h __builtin_msa_div_s_h 569 extern v4i32 __builtin_msa_div_s_w(v4i32, v4i32); 570 #define __msa_div_s_w __builtin_msa_div_s_w 571 extern v2i64 __builtin_msa_div_s_d(v2i64, v2i64); 572 #define __msa_div_s_d __builtin_msa_div_s_d 573 extern v16u8 __builtin_msa_div_u_b(v16u8, v16u8); 574 #define __msa_div_u_b __builtin_msa_div_u_b 575 extern v8u16 __builtin_msa_div_u_h(v8u16, v8u16); 576 #define __msa_div_u_h __builtin_msa_div_u_h 577 extern v4u32 __builtin_msa_div_u_w(v4u32, v4u32); 578 #define __msa_div_u_w __builtin_msa_div_u_w 579 extern v2u64 __builtin_msa_div_u_d(v2u64, v2u64); 580 #define __msa_div_u_d __builtin_msa_div_u_d 581 extern v8i16 __builtin_msa_hadd_s_h(v16i8, v16i8); 582 #define __msa_hadd_s_h __builtin_msa_hadd_s_h 583 extern v4i32 __builtin_msa_hadd_s_w(v8i16, v8i16); 584 #define __msa_hadd_s_w __builtin_msa_hadd_s_w 585 extern v2i64 __builtin_msa_hadd_s_d(v4i32, v4i32); 586 #define __msa_hadd_s_d __builtin_msa_hadd_s_d 587 extern v8u16 __builtin_msa_hadd_u_h(v16u8, v16u8); 588 #define __msa_hadd_u_h __builtin_msa_hadd_u_h 589 extern v4u32 __builtin_msa_hadd_u_w(v8u16, v8u16); 590 #define __msa_hadd_u_w __builtin_msa_hadd_u_w 591 extern v2u64 __builtin_msa_hadd_u_d(v4u32, v4u32); 592 #define __msa_hadd_u_d __builtin_msa_hadd_u_d 593 extern v8i16 __builtin_msa_hsub_s_h(v16i8, v16i8); 594 #define __msa_hsub_s_h __builtin_msa_hsub_s_h 595 extern v4i32 __builtin_msa_hsub_s_w(v8i16, v8i16); 596 #define __msa_hsub_s_w __builtin_msa_hsub_s_w 597 extern v2i64 __builtin_msa_hsub_s_d(v4i32, v4i32); 598 #define __msa_hsub_s_d __builtin_msa_hsub_s_d 599 extern v8i16 __builtin_msa_hsub_u_h(v16u8, v16u8); 600 #define __msa_hsub_u_h __builtin_msa_hsub_u_h 601 extern v4i32 __builtin_msa_hsub_u_w(v8u16, v8u16); 602 #define __msa_hsub_u_w __builtin_msa_hsub_u_w 603 extern v2i64 __builtin_msa_hsub_u_d(v4u32, v4u32); 604 #define __msa_hsub_u_d __builtin_msa_hsub_u_d 605 extern v16i8 __builtin_msa_mod_s_b(v16i8, v16i8); 606 #define __msa_mod_s_b __builtin_msa_mod_s_b 607 extern v8i16 __builtin_msa_mod_s_h(v8i16, v8i16); 608 #define __msa_mod_s_h __builtin_msa_mod_s_h 609 extern v4i32 __builtin_msa_mod_s_w(v4i32, v4i32); 610 #define __msa_mod_s_w __builtin_msa_mod_s_w 611 extern v2i64 __builtin_msa_mod_s_d(v2i64, v2i64); 612 #define __msa_mod_s_d __builtin_msa_mod_s_d 613 extern v16u8 __builtin_msa_mod_u_b(v16u8, v16u8); 614 #define __msa_mod_u_b __builtin_msa_mod_u_b 615 extern v8u16 __builtin_msa_mod_u_h(v8u16, v8u16); 616 #define __msa_mod_u_h __builtin_msa_mod_u_h 617 extern v4u32 __builtin_msa_mod_u_w(v4u32, v4u32); 618 #define __msa_mod_u_w __builtin_msa_mod_u_w 619 extern v2u64 __builtin_msa_mod_u_d(v2u64, v2u64); 620 #define __msa_mod_u_d __builtin_msa_mod_u_d 621 extern v8i16 __builtin_msa_dotp_s_h(v16i8, v16i8); 622 #define __msa_dotp_s_h __builtin_msa_dotp_s_h 623 extern v4i32 __builtin_msa_dotp_s_w(v8i16, v8i16); 624 #define __msa_dotp_s_w __builtin_msa_dotp_s_w 625 extern v2i64 __builtin_msa_dotp_s_d(v4i32, v4i32); 626 #define __msa_dotp_s_d __builtin_msa_dotp_s_d 627 extern v8u16 __builtin_msa_dotp_u_h(v16u8, v16u8); 628 #define __msa_dotp_u_h __builtin_msa_dotp_u_h 629 extern v4u32 __builtin_msa_dotp_u_w(v8u16, v8u16); 630 #define __msa_dotp_u_w __builtin_msa_dotp_u_w 631 extern v2u64 __builtin_msa_dotp_u_d(v4u32, v4u32); 632 #define __msa_dotp_u_d __builtin_msa_dotp_u_d 633 extern v8i16 __builtin_msa_dpadd_s_h(v8i16, v16i8, v16i8); 634 #define __msa_dpadd_s_h __builtin_msa_dpadd_s_h 635 extern v4i32 __builtin_msa_dpadd_s_w(v4i32, v8i16, v8i16); 636 #define __msa_dpadd_s_w __builtin_msa_dpadd_s_w 637 extern v2i64 __builtin_msa_dpadd_s_d(v2i64, v4i32, v4i32); 638 #define __msa_dpadd_s_d __builtin_msa_dpadd_s_d 639 extern v8u16 __builtin_msa_dpadd_u_h(v8u16, v16u8, v16u8); 640 #define __msa_dpadd_u_h __builtin_msa_dpadd_u_h 641 extern v4u32 __builtin_msa_dpadd_u_w(v4u32, v8u16, v8u16); 642 #define __msa_dpadd_u_w __builtin_msa_dpadd_u_w 643 extern v2u64 __builtin_msa_dpadd_u_d(v2u64, v4u32, v4u32); 644 #define __msa_dpadd_u_d __builtin_msa_dpadd_u_d 645 extern v8i16 __builtin_msa_dpsub_s_h(v8i16, v16i8, v16i8); 646 #define __msa_dpsub_s_h __builtin_msa_dpsub_s_h 647 extern v4i32 __builtin_msa_dpsub_s_w(v4i32, v8i16, v8i16); 648 #define __msa_dpsub_s_w __builtin_msa_dpsub_s_w 649 extern v2i64 __builtin_msa_dpsub_s_d(v2i64, v4i32, v4i32); 650 #define __msa_dpsub_s_d __builtin_msa_dpsub_s_d 651 extern v8i16 __builtin_msa_dpsub_u_h(v8i16, v16u8, v16u8); 652 #define __msa_dpsub_u_h __builtin_msa_dpsub_u_h 653 extern v4i32 __builtin_msa_dpsub_u_w(v4i32, v8u16, v8u16); 654 #define __msa_dpsub_u_w __builtin_msa_dpsub_u_w 655 extern v2i64 __builtin_msa_dpsub_u_d(v2i64, v4u32, v4u32); 656 #define __msa_dpsub_u_d __builtin_msa_dpsub_u_d 657 extern v16i8 __builtin_msa_sld_b(v16i8, v16i8, int); 658 #define __msa_sld_b __builtin_msa_sld_b 659 extern v8i16 __builtin_msa_sld_h(v8i16, v8i16, int); 660 #define __msa_sld_h __builtin_msa_sld_h 661 extern v4i32 __builtin_msa_sld_w(v4i32, v4i32, int); 662 #define __msa_sld_w __builtin_msa_sld_w 663 extern v2i64 __builtin_msa_sld_d(v2i64, v2i64, int); 664 #define __msa_sld_d __builtin_msa_sld_d 665 extern v16i8 __builtin_msa_sldi_b(v16i8, v16i8, unsigned char); 666 #define __msa_sldi_b __builtin_msa_sldi_b 667 extern v8i16 __builtin_msa_sldi_h(v8i16, v8i16, unsigned char); 668 #define __msa_sldi_h __builtin_msa_sldi_h 669 extern v4i32 __builtin_msa_sldi_w(v4i32, v4i32, unsigned char); 670 #define __msa_sldi_w __builtin_msa_sldi_w 671 extern v2i64 __builtin_msa_sldi_d(v2i64, v2i64, unsigned char); 672 #define __msa_sldi_d __builtin_msa_sldi_d 673 extern v16i8 __builtin_msa_splat_b(v16i8, int); 674 #define __msa_splat_b __builtin_msa_splat_b 675 extern v8i16 __builtin_msa_splat_h(v8i16, int); 676 #define __msa_splat_h __builtin_msa_splat_h 677 extern v4i32 __builtin_msa_splat_w(v4i32, int); 678 #define __msa_splat_w __builtin_msa_splat_w 679 extern v2i64 __builtin_msa_splat_d(v2i64, int); 680 #define __msa_splat_d __builtin_msa_splat_d 681 extern v16i8 __builtin_msa_splati_b(v16i8, unsigned char); 682 #define __msa_splati_b __builtin_msa_splati_b 683 extern v8i16 __builtin_msa_splati_h(v8i16, unsigned char); 684 #define __msa_splati_h __builtin_msa_splati_h 685 extern v4i32 __builtin_msa_splati_w(v4i32, unsigned char); 686 #define __msa_splati_w __builtin_msa_splati_w 687 extern v2i64 __builtin_msa_splati_d(v2i64, unsigned char); 688 #define __msa_splati_d __builtin_msa_splati_d 689 extern v16i8 __builtin_msa_pckev_b(v16i8, v16i8); 690 #define __msa_pckev_b __builtin_msa_pckev_b 691 extern v8i16 __builtin_msa_pckev_h(v8i16, v8i16); 692 #define __msa_pckev_h __builtin_msa_pckev_h 693 extern v4i32 __builtin_msa_pckev_w(v4i32, v4i32); 694 #define __msa_pckev_w __builtin_msa_pckev_w 695 extern v2i64 __builtin_msa_pckev_d(v2i64, v2i64); 696 #define __msa_pckev_d __builtin_msa_pckev_d 697 extern v16i8 __builtin_msa_pckod_b(v16i8, v16i8); 698 #define __msa_pckod_b __builtin_msa_pckod_b 699 extern v8i16 __builtin_msa_pckod_h(v8i16, v8i16); 700 #define __msa_pckod_h __builtin_msa_pckod_h 701 extern v4i32 __builtin_msa_pckod_w(v4i32, v4i32); 702 #define __msa_pckod_w __builtin_msa_pckod_w 703 extern v2i64 __builtin_msa_pckod_d(v2i64, v2i64); 704 #define __msa_pckod_d __builtin_msa_pckod_d 705 extern v16i8 __builtin_msa_ilvl_b(v16i8, v16i8); 706 #define __msa_ilvl_b __builtin_msa_ilvl_b 707 extern v8i16 __builtin_msa_ilvl_h(v8i16, v8i16); 708 #define __msa_ilvl_h __builtin_msa_ilvl_h 709 extern v4i32 __builtin_msa_ilvl_w(v4i32, v4i32); 710 #define __msa_ilvl_w __builtin_msa_ilvl_w 711 extern v2i64 __builtin_msa_ilvl_d(v2i64, v2i64); 712 #define __msa_ilvl_d __builtin_msa_ilvl_d 713 extern v16i8 __builtin_msa_ilvr_b(v16i8, v16i8); 714 #define __msa_ilvr_b __builtin_msa_ilvr_b 715 extern v8i16 __builtin_msa_ilvr_h(v8i16, v8i16); 716 #define __msa_ilvr_h __builtin_msa_ilvr_h 717 extern v4i32 __builtin_msa_ilvr_w(v4i32, v4i32); 718 #define __msa_ilvr_w __builtin_msa_ilvr_w 719 extern v2i64 __builtin_msa_ilvr_d(v2i64, v2i64); 720 #define __msa_ilvr_d __builtin_msa_ilvr_d 721 extern v16i8 __builtin_msa_ilvev_b(v16i8, v16i8); 722 #define __msa_ilvev_b __builtin_msa_ilvev_b 723 extern v8i16 __builtin_msa_ilvev_h(v8i16, v8i16); 724 #define __msa_ilvev_h __builtin_msa_ilvev_h 725 extern v4i32 __builtin_msa_ilvev_w(v4i32, v4i32); 726 #define __msa_ilvev_w __builtin_msa_ilvev_w 727 extern v2i64 __builtin_msa_ilvev_d(v2i64, v2i64); 728 #define __msa_ilvev_d __builtin_msa_ilvev_d 729 extern v16i8 __builtin_msa_ilvod_b(v16i8, v16i8); 730 #define __msa_ilvod_b __builtin_msa_ilvod_b 731 extern v8i16 __builtin_msa_ilvod_h(v8i16, v8i16); 732 #define __msa_ilvod_h __builtin_msa_ilvod_h 733 extern v4i32 __builtin_msa_ilvod_w(v4i32, v4i32); 734 #define __msa_ilvod_w __builtin_msa_ilvod_w 735 extern v2i64 __builtin_msa_ilvod_d(v2i64, v2i64); 736 #define __msa_ilvod_d __builtin_msa_ilvod_d 737 extern v16i8 __builtin_msa_vshf_b(v16i8, v16i8, v16i8); 738 #define __msa_vshf_b __builtin_msa_vshf_b 739 extern v8i16 __builtin_msa_vshf_h(v8i16, v8i16, v8i16); 740 #define __msa_vshf_h __builtin_msa_vshf_h 741 extern v4i32 __builtin_msa_vshf_w(v4i32, v4i32, v4i32); 742 #define __msa_vshf_w __builtin_msa_vshf_w 743 extern v2i64 __builtin_msa_vshf_d(v2i64, v2i64, v2i64); 744 #define __msa_vshf_d __builtin_msa_vshf_d 745 extern v16u8 __builtin_msa_and_v(v16u8, v16u8); 746 #define __msa_and_v __builtin_msa_and_v 747 extern v16u8 __builtin_msa_andi_b(v16u8, unsigned char); 748 #define __msa_andi_b __builtin_msa_andi_b 749 extern v16u8 __builtin_msa_or_v(v16u8, v16u8); 750 #define __msa_or_v __builtin_msa_or_v 751 extern v16u8 __builtin_msa_ori_b(v16u8, unsigned char); 752 #define __msa_ori_b __builtin_msa_ori_b 753 extern v16u8 __builtin_msa_nor_v(v16u8, v16u8); 754 #define __msa_nor_v __builtin_msa_nor_v 755 extern v16u8 __builtin_msa_nori_b(v16u8, unsigned char); 756 #define __msa_nori_b __builtin_msa_nori_b 757 extern v16u8 __builtin_msa_xor_v(v16u8, v16u8); 758 #define __msa_xor_v __builtin_msa_xor_v 759 extern v16u8 __builtin_msa_xori_b(v16u8, unsigned char); 760 #define __msa_xori_b __builtin_msa_xori_b 761 extern v16u8 __builtin_msa_bmnz_v(v16u8, v16u8, v16u8); 762 #define __msa_bmnz_v __builtin_msa_bmnz_v 763 extern v16u8 __builtin_msa_bmnzi_b(v16u8, v16u8, unsigned char); 764 #define __msa_bmnzi_b __builtin_msa_bmnzi_b 765 extern v16u8 __builtin_msa_bmz_v(v16u8, v16u8, v16u8); 766 #define __msa_bmz_v __builtin_msa_bmz_v 767 extern v16u8 __builtin_msa_bmzi_b(v16u8, v16u8, unsigned char); 768 #define __msa_bmzi_b __builtin_msa_bmzi_b 769 extern v16u8 __builtin_msa_bsel_v(v16u8, v16u8, v16u8); 770 #define __msa_bsel_v __builtin_msa_bsel_v 771 extern v16u8 __builtin_msa_bseli_b(v16u8, v16u8, unsigned char); 772 #define __msa_bseli_b __builtin_msa_bseli_b 773 extern v16i8 __builtin_msa_shf_b(v16i8, unsigned char); 774 #define __msa_shf_b __builtin_msa_shf_b 775 extern v8i16 __builtin_msa_shf_h(v8i16, unsigned char); 776 #define __msa_shf_h __builtin_msa_shf_h 777 extern v4i32 __builtin_msa_shf_w(v4i32, unsigned char); 778 #define __msa_shf_w __builtin_msa_shf_w 779 extern int __builtin_msa_bnz_v(v16u8); 780 #define __msa_test_bnz_v __builtin_msa_bnz_v 781 extern int __builtin_msa_bz_v(v16u8); 782 #define __msa_test_bz_v __builtin_msa_bz_v 783 extern v16i8 __builtin_msa_fill_b(int); 784 #define __msa_fill_b __builtin_msa_fill_b 785 extern v8i16 __builtin_msa_fill_h(int); 786 #define __msa_fill_h __builtin_msa_fill_h 787 extern v4i32 __builtin_msa_fill_w(int); 788 #define __msa_fill_w __builtin_msa_fill_w 789 extern v2i64 __builtin_msa_fill_d(long long); 790 #define __msa_fill_d __builtin_msa_fill_d 791 extern v16i8 __builtin_msa_pcnt_b(v16i8); 792 #define __msa_pcnt_b __builtin_msa_pcnt_b 793 extern v8i16 __builtin_msa_pcnt_h(v8i16); 794 #define __msa_pcnt_h __builtin_msa_pcnt_h 795 extern v4i32 __builtin_msa_pcnt_w(v4i32); 796 #define __msa_pcnt_w __builtin_msa_pcnt_w 797 extern v2i64 __builtin_msa_pcnt_d(v2i64); 798 #define __msa_pcnt_d __builtin_msa_pcnt_d 799 extern v16i8 __builtin_msa_nloc_b(v16i8); 800 #define __msa_nloc_b __builtin_msa_nloc_b 801 extern v8i16 __builtin_msa_nloc_h(v8i16); 802 #define __msa_nloc_h __builtin_msa_nloc_h 803 extern v4i32 __builtin_msa_nloc_w(v4i32); 804 #define __msa_nloc_w __builtin_msa_nloc_w 805 extern v2i64 __builtin_msa_nloc_d(v2i64); 806 #define __msa_nloc_d __builtin_msa_nloc_d 807 extern v16i8 __builtin_msa_nlzc_b(v16i8); 808 #define __msa_nlzc_b __builtin_msa_nlzc_b 809 extern v8i16 __builtin_msa_nlzc_h(v8i16); 810 #define __msa_nlzc_h __builtin_msa_nlzc_h 811 extern v4i32 __builtin_msa_nlzc_w(v4i32); 812 #define __msa_nlzc_w __builtin_msa_nlzc_w 813 extern v2i64 __builtin_msa_nlzc_d(v2i64); 814 #define __msa_nlzc_d __builtin_msa_nlzc_d 815 extern int __builtin_msa_copy_s_b(v16i8, unsigned char); 816 #define __msa_copy_s_b __builtin_msa_copy_s_b 817 extern int __builtin_msa_copy_s_h(v8i16, unsigned char); 818 #define __msa_copy_s_h __builtin_msa_copy_s_h 819 extern int __builtin_msa_copy_s_w(v4i32, unsigned char); 820 #define __msa_copy_s_w __builtin_msa_copy_s_w 821 extern long long __builtin_msa_copy_s_d(v2i64, unsigned char); 822 #define __msa_copy_s_d __builtin_msa_copy_s_d 823 extern int __builtin_msa_copy_u_b(v16i8, unsigned char); 824 #define __msa_copy_u_b __builtin_msa_copy_u_b 825 extern int __builtin_msa_copy_u_h(v8i16, unsigned char); 826 #define __msa_copy_u_h __builtin_msa_copy_u_h 827 extern int __builtin_msa_copy_u_w(v4i32, unsigned char); 828 #define __msa_copy_u_w __builtin_msa_copy_u_w 829 extern long long __builtin_msa_copy_u_d(v2i64, unsigned char); 830 #define __msa_copy_u_d __builtin_msa_copy_u_d 831 extern v16i8 __builtin_msa_insert_b(v16i8, unsigned char, int); 832 #define __msa_insert_b __builtin_msa_insert_b 833 extern v8i16 __builtin_msa_insert_h(v8i16, unsigned char, int); 834 #define __msa_insert_h __builtin_msa_insert_h 835 extern v4i32 __builtin_msa_insert_w(v4i32, unsigned char, int); 836 #define __msa_insert_w __builtin_msa_insert_w 837 extern v2i64 __builtin_msa_insert_d(v2i64, unsigned char, long long); 838 #define __msa_insert_d __builtin_msa_insert_d 839 extern v16i8 __builtin_msa_insve_b(v16i8, unsigned char, v16i8); 840 #define __msa_insve_b __builtin_msa_insve_b 841 extern v8i16 __builtin_msa_insve_h(v8i16, unsigned char, v8i16); 842 #define __msa_insve_h __builtin_msa_insve_h 843 extern v4i32 __builtin_msa_insve_w(v4i32, unsigned char, v4i32); 844 #define __msa_insve_w __builtin_msa_insve_w 845 extern v2i64 __builtin_msa_insve_d(v2i64, unsigned char, v2i64); 846 #define __msa_insve_d __builtin_msa_insve_d 847 extern int __builtin_msa_bnz_b(v16u8); 848 #define __msa_test_bnz_b __builtin_msa_bnz_b 849 extern int __builtin_msa_bnz_h(v8u16); 850 #define __msa_test_bnz_h __builtin_msa_bnz_h 851 extern int __builtin_msa_bnz_w(v4u32); 852 #define __msa_test_bnz_w __builtin_msa_bnz_w 853 extern int __builtin_msa_bnz_d(v2u64); 854 #define __msa_test_bnz_d __builtin_msa_bnz_d 855 extern int __builtin_msa_bz_b(v16u8); 856 #define __msa_test_bz_b __builtin_msa_bz_b 857 extern int __builtin_msa_bz_h(v8u16); 858 #define __msa_test_bz_h __builtin_msa_bz_h 859 extern int __builtin_msa_bz_w(v4u32); 860 #define __msa_test_bz_w __builtin_msa_bz_w 861 extern int __builtin_msa_bz_d(v2u64); 862 #define __msa_test_bz_d __builtin_msa_bz_d 863 extern v16i8 __builtin_msa_ldi_b(short); 864 #define __msa_ldi_b __builtin_msa_ldi_b 865 extern v8i16 __builtin_msa_ldi_h(short); 866 #define __msa_ldi_h __builtin_msa_ldi_h 867 extern v4i32 __builtin_msa_ldi_w(short); 868 #define __msa_ldi_w __builtin_msa_ldi_w 869 extern v2i64 __builtin_msa_ldi_d(short); 870 #define __msa_ldi_d __builtin_msa_ldi_d 871 extern v4i32 __builtin_msa_fcaf_w(v4f32, v4f32); 872 #define __msa_fcaf_w __builtin_msa_fcaf_w 873 extern v2i64 __builtin_msa_fcaf_d(v2f64, v2f64); 874 #define __msa_fcaf_d __builtin_msa_fcaf_d 875 extern v4i32 __builtin_msa_fcor_w(v4f32, v4f32); 876 #define __msa_fcor_w __builtin_msa_fcor_w 877 extern v2i64 __builtin_msa_fcor_d(v2f64, v2f64); 878 #define __msa_fcor_d __builtin_msa_fcor_d 879 extern v4i32 __builtin_msa_fcun_w(v4f32, v4f32); 880 #define __msa_fcun_w __builtin_msa_fcun_w 881 extern v2i64 __builtin_msa_fcun_d(v2f64, v2f64); 882 #define __msa_fcun_d __builtin_msa_fcun_d 883 extern v4i32 __builtin_msa_fcune_w(v4f32, v4f32); 884 #define __msa_fcune_w __builtin_msa_fcune_w 885 extern v2i64 __builtin_msa_fcune_d(v2f64, v2f64); 886 #define __msa_fcune_d __builtin_msa_fcune_d 887 extern v4i32 __builtin_msa_fcueq_w(v4f32, v4f32); 888 #define __msa_fcueq_w __builtin_msa_fcueq_w 889 extern v2i64 __builtin_msa_fcueq_d(v2f64, v2f64); 890 #define __msa_fcueq_d __builtin_msa_fcueq_d 891 extern v4i32 __builtin_msa_fceq_w(v4f32, v4f32); 892 #define __msa_fceq_w __builtin_msa_fceq_w 893 extern v2i64 __builtin_msa_fceq_d(v2f64, v2f64); 894 #define __msa_fceq_d __builtin_msa_fceq_d 895 extern v4i32 __builtin_msa_fcne_w(v4f32, v4f32); 896 #define __msa_fcne_w __builtin_msa_fcne_w 897 extern v2i64 __builtin_msa_fcne_d(v2f64, v2f64); 898 #define __msa_fcne_d __builtin_msa_fcne_d 899 extern v4i32 __builtin_msa_fclt_w(v4f32, v4f32); 900 #define __msa_fclt_w __builtin_msa_fclt_w 901 extern v2i64 __builtin_msa_fclt_d(v2f64, v2f64); 902 #define __msa_fclt_d __builtin_msa_fclt_d 903 extern v4i32 __builtin_msa_fcult_w(v4f32, v4f32); 904 #define __msa_fcult_w __builtin_msa_fcult_w 905 extern v2i64 __builtin_msa_fcult_d(v2f64, v2f64); 906 #define __msa_fcult_d __builtin_msa_fcult_d 907 extern v4i32 __builtin_msa_fcle_w(v4f32, v4f32); 908 #define __msa_fcle_w __builtin_msa_fcle_w 909 extern v2i64 __builtin_msa_fcle_d(v2f64, v2f64); 910 #define __msa_fcle_d __builtin_msa_fcle_d 911 extern v4i32 __builtin_msa_fcule_w(v4f32, v4f32); 912 #define __msa_fcule_w __builtin_msa_fcule_w 913 extern v2i64 __builtin_msa_fcule_d(v2f64, v2f64); 914 #define __msa_fcule_d __builtin_msa_fcule_d 915 extern v4i32 __builtin_msa_fsaf_w(v4f32, v4f32); 916 #define __msa_fsaf_w __builtin_msa_fsaf_w 917 extern v2i64 __builtin_msa_fsaf_d(v2f64, v2f64); 918 #define __msa_fsaf_d __builtin_msa_fsaf_d 919 extern v4i32 __builtin_msa_fsor_w(v4f32, v4f32); 920 #define __msa_fsor_w __builtin_msa_fsor_w 921 extern v2i64 __builtin_msa_fsor_d(v2f64, v2f64); 922 #define __msa_fsor_d __builtin_msa_fsor_d 923 extern v4i32 __builtin_msa_fsun_w(v4f32, v4f32); 924 #define __msa_fsun_w __builtin_msa_fsun_w 925 extern v2i64 __builtin_msa_fsun_d(v2f64, v2f64); 926 #define __msa_fsun_d __builtin_msa_fsun_d 927 extern v4i32 __builtin_msa_fsune_w(v4f32, v4f32); 928 #define __msa_fsune_w __builtin_msa_fsune_w 929 extern v2i64 __builtin_msa_fsune_d(v2f64, v2f64); 930 #define __msa_fsune_d __builtin_msa_fsune_d 931 extern v4i32 __builtin_msa_fsueq_w(v4f32, v4f32); 932 #define __msa_fsueq_w __builtin_msa_fsueq_w 933 extern v2i64 __builtin_msa_fsueq_d(v2f64, v2f64); 934 #define __msa_fsueq_d __builtin_msa_fsueq_d 935 extern v4i32 __builtin_msa_fseq_w(v4f32, v4f32); 936 #define __msa_fseq_w __builtin_msa_fseq_w 937 extern v2i64 __builtin_msa_fseq_d(v2f64, v2f64); 938 #define __msa_fseq_d __builtin_msa_fseq_d 939 extern v4i32 __builtin_msa_fsne_w(v4f32, v4f32); 940 #define __msa_fsne_w __builtin_msa_fsne_w 941 extern v2i64 __builtin_msa_fsne_d(v2f64, v2f64); 942 #define __msa_fsne_d __builtin_msa_fsne_d 943 extern v4i32 __builtin_msa_fslt_w(v4f32, v4f32); 944 #define __msa_fslt_w __builtin_msa_fslt_w 945 extern v2i64 __builtin_msa_fslt_d(v2f64, v2f64); 946 #define __msa_fslt_d __builtin_msa_fslt_d 947 extern v4i32 __builtin_msa_fsult_w(v4f32, v4f32); 948 #define __msa_fsult_w __builtin_msa_fsult_w 949 extern v2i64 __builtin_msa_fsult_d(v2f64, v2f64); 950 #define __msa_fsult_d __builtin_msa_fsult_d 951 extern v4i32 __builtin_msa_fsle_w(v4f32, v4f32); 952 #define __msa_fsle_w __builtin_msa_fsle_w 953 extern v2i64 __builtin_msa_fsle_d(v2f64, v2f64); 954 #define __msa_fsle_d __builtin_msa_fsle_d 955 extern v4i32 __builtin_msa_fsule_w(v4f32, v4f32); 956 #define __msa_fsule_w __builtin_msa_fsule_w 957 extern v2i64 __builtin_msa_fsule_d(v2f64, v2f64); 958 #define __msa_fsule_d __builtin_msa_fsule_d 959 extern v4f32 __builtin_msa_fadd_w(v4f32, v4f32); 960 #define __msa_fadd_w __builtin_msa_fadd_w 961 extern v2f64 __builtin_msa_fadd_d(v2f64, v2f64); 962 #define __msa_fadd_d __builtin_msa_fadd_d 963 extern v4f32 __builtin_msa_fsub_w(v4f32, v4f32); 964 #define __msa_fsub_w __builtin_msa_fsub_w 965 extern v2f64 __builtin_msa_fsub_d(v2f64, v2f64); 966 #define __msa_fsub_d __builtin_msa_fsub_d 967 extern v4f32 __builtin_msa_fmul_w(v4f32, v4f32); 968 #define __msa_fmul_w __builtin_msa_fmul_w 969 extern v2f64 __builtin_msa_fmul_d(v2f64, v2f64); 970 #define __msa_fmul_d __builtin_msa_fmul_d 971 extern v4f32 __builtin_msa_fdiv_w(v4f32, v4f32); 972 #define __msa_fdiv_w __builtin_msa_fdiv_w 973 extern v2f64 __builtin_msa_fdiv_d(v2f64, v2f64); 974 #define __msa_fdiv_d __builtin_msa_fdiv_d 975 extern v4f32 __builtin_msa_fmadd_w(v4f32, v4f32, v4f32); 976 #define __msa_fmadd_w __builtin_msa_fmadd_w 977 extern v2f64 __builtin_msa_fmadd_d(v2f64, v2f64, v2f64); 978 #define __msa_fmadd_d __builtin_msa_fmadd_d 979 extern v4f32 __builtin_msa_fmsub_w(v4f32, v4f32, v4f32); 980 #define __msa_fmsub_w __builtin_msa_fmsub_w 981 extern v2f64 __builtin_msa_fmsub_d(v2f64, v2f64, v2f64); 982 #define __msa_fmsub_d __builtin_msa_fmsub_d 983 extern v4f32 __builtin_msa_fexp2_w(v4f32, v4i32); 984 #define __msa_fexp2_w __builtin_msa_fexp2_w 985 extern v2f64 __builtin_msa_fexp2_d(v2f64, v2i64); 986 #define __msa_fexp2_d __builtin_msa_fexp2_d 987 extern v8i16 __builtin_msa_fexdo_h(v4f32, v4f32); 988 #define __msa_fexdo_h __builtin_msa_fexdo_h 989 extern v4f32 __builtin_msa_fexdo_w(v2f64, v2f64); 990 #define __msa_fexdo_w __builtin_msa_fexdo_w 991 extern v8i16 __builtin_msa_ftq_h(v4f32, v4f32); 992 #define __msa_ftq_h __builtin_msa_ftq_h 993 extern v4i32 __builtin_msa_ftq_w(v2f64, v2f64); 994 #define __msa_ftq_w __builtin_msa_ftq_w 995 extern v4f32 __builtin_msa_fmin_w(v4f32, v4f32); 996 #define __msa_fmin_w __builtin_msa_fmin_w 997 extern v2f64 __builtin_msa_fmin_d(v2f64, v2f64); 998 #define __msa_fmin_d __builtin_msa_fmin_d 999 extern v4f32 __builtin_msa_fmin_a_w(v4f32, v4f32); 1000 #define __msa_fmin_a_w __builtin_msa_fmin_a_w 1001 extern v2f64 __builtin_msa_fmin_a_d(v2f64, v2f64); 1002 #define __msa_fmin_a_d __builtin_msa_fmin_a_d 1003 extern v4f32 __builtin_msa_fmax_w(v4f32, v4f32); 1004 #define __msa_fmax_w __builtin_msa_fmax_w 1005 extern v2f64 __builtin_msa_fmax_d(v2f64, v2f64); 1006 #define __msa_fmax_d __builtin_msa_fmax_d 1007 extern v4f32 __builtin_msa_fmax_a_w(v4f32, v4f32); 1008 #define __msa_fmax_a_w __builtin_msa_fmax_a_w 1009 extern v2f64 __builtin_msa_fmax_a_d(v2f64, v2f64); 1010 #define __msa_fmax_a_d __builtin_msa_fmax_a_d 1011 extern v8i16 __builtin_msa_mul_q_h(v8i16, v8i16); 1012 #define __msa_mul_q_h __builtin_msa_mul_q_h 1013 extern v4i32 __builtin_msa_mul_q_w(v4i32, v4i32); 1014 #define __msa_mul_q_w __builtin_msa_mul_q_w 1015 extern v8i16 __builtin_msa_mulr_q_h(v8i16, v8i16); 1016 #define __msa_mulr_q_h __builtin_msa_mulr_q_h 1017 extern v4i32 __builtin_msa_mulr_q_w(v4i32, v4i32); 1018 #define __msa_mulr_q_w __builtin_msa_mulr_q_w 1019 extern v8i16 __builtin_msa_madd_q_h(v8i16, v8i16, v8i16); 1020 #define __msa_madd_q_h __builtin_msa_madd_q_h 1021 extern v4i32 __builtin_msa_madd_q_w(v4i32, v4i32, v4i32); 1022 #define __msa_madd_q_w __builtin_msa_madd_q_w 1023 extern v8i16 __builtin_msa_maddr_q_h(v8i16, v8i16, v8i16); 1024 #define __msa_maddr_q_h __builtin_msa_maddr_q_h 1025 extern v4i32 __builtin_msa_maddr_q_w(v4i32, v4i32, v4i32); 1026 #define __msa_maddr_q_w __builtin_msa_maddr_q_w 1027 extern v8i16 __builtin_msa_msub_q_h(v8i16, v8i16, v8i16); 1028 #define __msa_msub_q_h __builtin_msa_msub_q_h 1029 extern v4i32 __builtin_msa_msub_q_w(v4i32, v4i32, v4i32); 1030 #define __msa_msub_q_w __builtin_msa_msub_q_w 1031 extern v8i16 __builtin_msa_msubr_q_h(v8i16, v8i16, v8i16); 1032 #define __msa_msubr_q_h __builtin_msa_msubr_q_h 1033 extern v4i32 __builtin_msa_msubr_q_w(v4i32, v4i32, v4i32); 1034 #define __msa_msubr_q_w __builtin_msa_msubr_q_w 1035 extern v4i32 __builtin_msa_fclass_w(v4f32); 1036 #define __msa_fclass_w __builtin_msa_fclass_w 1037 extern v2i64 __builtin_msa_fclass_d(v2f64); 1038 #define __msa_fclass_d __builtin_msa_fclass_d 1039 extern v4f32 __builtin_msa_fsqrt_w(v4f32); 1040 #define __msa_fsqrt_w __builtin_msa_fsqrt_w 1041 extern v2f64 __builtin_msa_fsqrt_d(v2f64); 1042 #define __msa_fsqrt_d __builtin_msa_fsqrt_d 1043 extern v4f32 __builtin_msa_frcp_w(v4f32); 1044 #define __msa_frcp_w __builtin_msa_frcp_w 1045 extern v2f64 __builtin_msa_frcp_d(v2f64); 1046 #define __msa_frcp_d __builtin_msa_frcp_d 1047 extern v4f32 __builtin_msa_frint_w(v4f32); 1048 #define __msa_frint_w __builtin_msa_frint_w 1049 extern v2f64 __builtin_msa_frint_d(v2f64); 1050 #define __msa_frint_d __builtin_msa_frint_d 1051 extern v4f32 __builtin_msa_frsqrt_w(v4f32); 1052 #define __msa_frsqrt_w __builtin_msa_frsqrt_w 1053 extern v2f64 __builtin_msa_frsqrt_d(v2f64); 1054 #define __msa_frsqrt_d __builtin_msa_frsqrt_d 1055 extern v4f32 __builtin_msa_flog2_w(v4f32); 1056 #define __msa_flog2_w __builtin_msa_flog2_w 1057 extern v2f64 __builtin_msa_flog2_d(v2f64); 1058 #define __msa_flog2_d __builtin_msa_flog2_d 1059 extern v4f32 __builtin_msa_fexupl_w(v8i16); 1060 #define __msa_fexupl_w __builtin_msa_fexupl_w 1061 extern v2f64 __builtin_msa_fexupl_d(v4f32); 1062 #define __msa_fexupl_d __builtin_msa_fexupl_d 1063 extern v4f32 __builtin_msa_fexupr_w(v8i16); 1064 #define __msa_fexupr_w __builtin_msa_fexupr_w 1065 extern v2f64 __builtin_msa_fexupr_d(v4f32); 1066 #define __msa_fexupr_d __builtin_msa_fexupr_d 1067 extern v4f32 __builtin_msa_ffql_w(v8i16); 1068 #define __msa_ffql_w __builtin_msa_ffql_w 1069 extern v2f64 __builtin_msa_ffql_d(v4i32); 1070 #define __msa_ffql_d __builtin_msa_ffql_d 1071 extern v4f32 __builtin_msa_ffqr_w(v8i16); 1072 #define __msa_ffqr_w __builtin_msa_ffqr_w 1073 extern v2f64 __builtin_msa_ffqr_d(v4i32); 1074 #define __msa_ffqr_d __builtin_msa_ffqr_d 1075 extern v4i32 __builtin_msa_ftint_s_w(v4f32); 1076 #define __msa_ftint_s_w __builtin_msa_ftint_s_w 1077 extern v2i64 __builtin_msa_ftint_s_d(v2f64); 1078 #define __msa_ftint_s_d __builtin_msa_ftint_s_d 1079 extern v4u32 __builtin_msa_ftint_u_w(v4f32); 1080 #define __msa_ftint_u_w __builtin_msa_ftint_u_w 1081 extern v2u64 __builtin_msa_ftint_u_d(v2f64); 1082 #define __msa_ftint_u_d __builtin_msa_ftint_u_d 1083 extern v4i32 __builtin_msa_ftrunc_s_w(v4f32); 1084 #define __msa_ftrunc_s_w __builtin_msa_ftrunc_s_w 1085 extern v2i64 __builtin_msa_ftrunc_s_d(v2f64); 1086 #define __msa_ftrunc_s_d __builtin_msa_ftrunc_s_d 1087 extern v4u32 __builtin_msa_ftrunc_u_w(v4f32); 1088 #define __msa_ftrunc_u_w __builtin_msa_ftrunc_u_w 1089 extern v2u64 __builtin_msa_ftrunc_u_d(v2f64); 1090 #define __msa_ftrunc_u_d __builtin_msa_ftrunc_u_d 1091 extern v4f32 __builtin_msa_ffint_s_w(v4i32); 1092 #define __msa_ffint_s_w __builtin_msa_ffint_s_w 1093 extern v2f64 __builtin_msa_ffint_s_d(v2i64); 1094 #define __msa_ffint_s_d __builtin_msa_ffint_s_d 1095 extern v4f32 __builtin_msa_ffint_u_w(v4u32); 1096 #define __msa_ffint_u_w __builtin_msa_ffint_u_w 1097 extern v2f64 __builtin_msa_ffint_u_d(v2u64); 1098 #define __msa_ffint_u_d __builtin_msa_ffint_u_d 1099 extern int __builtin_msa_cfcmsa(unsigned char); 1100 #define __msa_cfcmsa __builtin_msa_cfcmsa 1101 extern v16i8 __builtin_msa_move_v(v16i8); 1102 #define __msa_move_v __builtin_msa_move_v 1103 extern v4f32 __builtin_msa_cast_to_vector_float(float); 1104 #define __msa_cast_to_vector_float __builtin_msa_cast_to_vector_float 1105 extern v2f64 __builtin_msa_cast_to_vector_double(double); 1106 #define __msa_cast_to_vector_double __builtin_msa_cast_to_vector_double 1107 extern float __builtin_msa_cast_to_scalar_float(v4f32); 1108 #define __msa_cast_to_scalar_float __builtin_msa_cast_to_scalar_float 1109 extern double __builtin_msa_cast_to_scalar_double(v2f64); 1110 #define __msa_cast_to_scalar_double __builtin_msa_cast_to_scalar_double 1111 #endif /* __clang__ */ 1112 #endif /* defined(__mips_msa) */ 1113 #endif /* _MSA_H */ 1114