| ... | ... | @@ -145,1431 +145,125 @@ typedef struct poly64x2x4_t { |
| 145 | 145 | #endif |
| 146 | 146 | #endif |
| 147 | 147 | #ifdef __LITTLE_ENDIAN__ |
| 148 | | #define splatq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 149 | | bfloat16x8_t __ret; \ |
| 150 | | bfloat16x4_t __s0 = __p0; \ |
| 151 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_lane_bf16(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 152 | | __ret; \ |
| 153 | | }) |
| 154 | | #else |
| 155 | | #define splatq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 156 | | bfloat16x8_t __ret; \ |
| 157 | | bfloat16x4_t __s0 = __p0; \ |
| 158 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 159 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_lane_bf16(__builtin_bit_cast(int8x8_t, __rev0), __p1, 11)); \ |
| 160 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 161 | | __ret; \ |
| 162 | | }) |
| 163 | | #define __noswap_splatq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 164 | | bfloat16x8_t __ret; \ |
| 165 | | bfloat16x4_t __s0 = __p0; \ |
| 166 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_lane_bf16(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 167 | | __ret; \ |
| 168 | | }) |
| 169 | | #endif |
| 170 | | |
| 171 | | #ifdef __LITTLE_ENDIAN__ |
| 172 | | #define splat_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 173 | | bfloat16x4_t __ret; \ |
| 174 | | bfloat16x4_t __s0 = __p0; \ |
| 175 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_lane_bf16(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 176 | | __ret; \ |
| 177 | | }) |
| 178 | | #else |
| 179 | | #define splat_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 180 | | bfloat16x4_t __ret; \ |
| 181 | | bfloat16x4_t __s0 = __p0; \ |
| 182 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 183 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_lane_bf16(__builtin_bit_cast(int8x8_t, __rev0), __p1, 11)); \ |
| 184 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 185 | | __ret; \ |
| 186 | | }) |
| 187 | | #define __noswap_splat_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 188 | | bfloat16x4_t __ret; \ |
| 189 | | bfloat16x4_t __s0 = __p0; \ |
| 190 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_lane_bf16(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 191 | | __ret; \ |
| 192 | | }) |
| 193 | | #endif |
| 194 | | |
| 195 | | #ifdef __LITTLE_ENDIAN__ |
| 196 | | #define splatq_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 197 | | bfloat16x8_t __ret; \ |
| 198 | | bfloat16x8_t __s0 = __p0; \ |
| 199 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_laneq_bf16(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 200 | | __ret; \ |
| 201 | | }) |
| 202 | | #else |
| 203 | | #define splatq_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 204 | | bfloat16x8_t __ret; \ |
| 205 | | bfloat16x8_t __s0 = __p0; \ |
| 206 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 207 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_laneq_bf16(__builtin_bit_cast(int8x16_t, __rev0), __p1, 43)); \ |
| 208 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 209 | | __ret; \ |
| 210 | | }) |
| 211 | | #define __noswap_splatq_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 212 | | bfloat16x8_t __ret; \ |
| 213 | | bfloat16x8_t __s0 = __p0; \ |
| 214 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_laneq_bf16(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 215 | | __ret; \ |
| 216 | | }) |
| 217 | | #endif |
| 218 | | |
| 219 | | #ifdef __LITTLE_ENDIAN__ |
| 220 | | #define splat_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 221 | | bfloat16x4_t __ret; \ |
| 222 | | bfloat16x8_t __s0 = __p0; \ |
| 223 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_laneq_bf16(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 224 | | __ret; \ |
| 225 | | }) |
| 226 | | #else |
| 227 | | #define splat_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 228 | | bfloat16x4_t __ret; \ |
| 229 | | bfloat16x8_t __s0 = __p0; \ |
| 230 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 231 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_laneq_bf16(__builtin_bit_cast(int8x16_t, __rev0), __p1, 43)); \ |
| 232 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 233 | | __ret; \ |
| 234 | | }) |
| 235 | | #define __noswap_splat_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 236 | | bfloat16x4_t __ret; \ |
| 237 | | bfloat16x8_t __s0 = __p0; \ |
| 238 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_laneq_bf16(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 239 | | __ret; \ |
| 240 | | }) |
| 241 | | #endif |
| 242 | | |
| 243 | | #ifdef __LITTLE_ENDIAN__ |
| 244 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfdotq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 245 | | float32x4_t __ret; |
| 246 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfdotq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 247 | | return __ret; |
| 248 | | } |
| 249 | | #else |
| 250 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfdotq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 251 | | float32x4_t __ret; |
| 252 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 253 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 254 | | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 255 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfdotq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 256 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 257 | | return __ret; |
| 258 | | } |
| 259 | | __ai __attribute__((target("bf16,neon"))) float32x4_t __noswap_vbfdotq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 260 | | float32x4_t __ret; |
| 261 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfdotq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 262 | | return __ret; |
| 263 | | } |
| 264 | | #endif |
| 265 | | |
| 266 | | #ifdef __LITTLE_ENDIAN__ |
| 267 | | __ai __attribute__((target("bf16,neon"))) float32x2_t vbfdot_f32(float32x2_t __p0, bfloat16x4_t __p1, bfloat16x4_t __p2) { |
| 268 | | float32x2_t __ret; |
| 269 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vbfdot_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), __builtin_bit_cast(int8x8_t, __p2), 9)); |
| 270 | | return __ret; |
| 271 | | } |
| 272 | | #else |
| 273 | | __ai __attribute__((target("bf16,neon"))) float32x2_t vbfdot_f32(float32x2_t __p0, bfloat16x4_t __p1, bfloat16x4_t __p2) { |
| 274 | | float32x2_t __ret; |
| 275 | | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 276 | | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 277 | | bfloat16x4_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_64_16); |
| 278 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vbfdot_f32(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __builtin_bit_cast(int8x8_t, __rev2), 9)); |
| 279 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 280 | | return __ret; |
| 281 | | } |
| 282 | | __ai __attribute__((target("bf16,neon"))) float32x2_t __noswap_vbfdot_f32(float32x2_t __p0, bfloat16x4_t __p1, bfloat16x4_t __p2) { |
| 283 | | float32x2_t __ret; |
| 284 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vbfdot_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), __builtin_bit_cast(int8x8_t, __p2), 9)); |
| 285 | | return __ret; |
| 286 | | } |
| 287 | | #endif |
| 288 | | |
| 289 | | #ifdef __LITTLE_ENDIAN__ |
| 290 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlalbq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 291 | | float32x4_t __ret; |
| 292 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlalbq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 293 | | return __ret; |
| 294 | | } |
| 295 | | #else |
| 296 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlalbq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 297 | | float32x4_t __ret; |
| 298 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 299 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 300 | | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 301 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlalbq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 302 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 303 | | return __ret; |
| 304 | | } |
| 305 | | __ai __attribute__((target("bf16,neon"))) float32x4_t __noswap_vbfmlalbq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 306 | | float32x4_t __ret; |
| 307 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlalbq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 308 | | return __ret; |
| 309 | | } |
| 310 | | #endif |
| 311 | | |
| 312 | | #ifdef __LITTLE_ENDIAN__ |
| 313 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlaltq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 314 | | float32x4_t __ret; |
| 315 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlaltq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 316 | | return __ret; |
| 317 | | } |
| 318 | | #else |
| 319 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlaltq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 320 | | float32x4_t __ret; |
| 321 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 322 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 323 | | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 324 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlaltq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 325 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 326 | | return __ret; |
| 327 | | } |
| 328 | | __ai __attribute__((target("bf16,neon"))) float32x4_t __noswap_vbfmlaltq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 329 | | float32x4_t __ret; |
| 330 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlaltq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 331 | | return __ret; |
| 332 | | } |
| 333 | | #endif |
| 334 | | |
| 335 | | #ifdef __LITTLE_ENDIAN__ |
| 336 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmmlaq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 337 | | float32x4_t __ret; |
| 338 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmmlaq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 339 | | return __ret; |
| 340 | | } |
| 341 | | #else |
| 342 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmmlaq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 343 | | float32x4_t __ret; |
| 344 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 345 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 346 | | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 347 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmmlaq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 348 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 349 | | return __ret; |
| 350 | | } |
| 351 | | #endif |
| 352 | | |
| 353 | | #ifdef __LITTLE_ENDIAN__ |
| 354 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcombine_bf16(bfloat16x4_t __p0, bfloat16x4_t __p1) { |
| 355 | | bfloat16x8_t __ret; |
| 356 | | __ret = __builtin_shufflevector(__p0, __p1, 0, 1, 2, 3, 4, 5, 6, 7); |
| 357 | | return __ret; |
| 358 | | } |
| 359 | | #else |
| 360 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcombine_bf16(bfloat16x4_t __p0, bfloat16x4_t __p1) { |
| 361 | | bfloat16x8_t __ret; |
| 362 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 363 | | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 364 | | __ret = __builtin_shufflevector(__rev0, __rev1, 0, 1, 2, 3, 4, 5, 6, 7); |
| 365 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 366 | | return __ret; |
| 367 | | } |
| 368 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t __noswap_vcombine_bf16(bfloat16x4_t __p0, bfloat16x4_t __p1) { |
| 369 | | bfloat16x8_t __ret; |
| 370 | | __ret = __builtin_shufflevector(__p0, __p1, 0, 1, 2, 3, 4, 5, 6, 7); |
| 371 | | return __ret; |
| 372 | | } |
| 373 | | #endif |
| 374 | | |
| 375 | | #define vcreate_bf16(__p0) __extension__ ({ \ |
| 376 | | bfloat16x4_t __ret; \ |
| 377 | | uint64_t __promote = __p0; \ |
| 378 | | __ret = __builtin_bit_cast(bfloat16x4_t, __promote); \ |
| 379 | | __ret; \ |
| 380 | | }) |
| 381 | | __ai __attribute__((target("bf16,neon"))) float32_t vcvtah_f32_bf16(bfloat16_t __p0) { |
| 382 | | float32_t __ret; |
| 383 | | __ret = __builtin_bit_cast(float32_t, (uint32_t)(__builtin_bit_cast(uint16_t, __p0)) << 16); |
| 384 | | return __ret; |
| 385 | | } |
| 386 | | __ai __attribute__((target("bf16,neon"))) bfloat16_t vcvth_bf16_f32(float32_t __p0) { |
| 387 | | bfloat16_t __ret; |
| 388 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vcvth_bf16_f32(__p0)); |
| 389 | | return __ret; |
| 390 | | } |
| 391 | | #ifdef __LITTLE_ENDIAN__ |
| 392 | | #define vduph_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 393 | | bfloat16_t __ret; \ |
| 394 | | bfloat16x4_t __s0 = __p0; \ |
| 395 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_lane_bf16(__s0, __p1)); \ |
| 396 | | __ret; \ |
| 397 | | }) |
| 398 | | #else |
| 399 | | #define vduph_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 400 | | bfloat16_t __ret; \ |
| 401 | | bfloat16x4_t __s0 = __p0; \ |
| 402 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 403 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_lane_bf16(__rev0, __p1)); \ |
| 404 | | __ret; \ |
| 405 | | }) |
| 406 | | #endif |
| 407 | | |
| 408 | | #ifdef __LITTLE_ENDIAN__ |
| 409 | | #define vdupq_lane_bf16(__p0_0, __p1_0) __extension__ ({ \ |
| 410 | | bfloat16x8_t __ret_0; \ |
| 411 | | bfloat16x4_t __s0_0 = __p0_0; \ |
| 412 | | __ret_0 = splatq_lane_bf16(__s0_0, __p1_0); \ |
| 413 | | __ret_0; \ |
| 414 | | }) |
| 415 | | #else |
| 416 | | #define vdupq_lane_bf16(__p0_1, __p1_1) __extension__ ({ \ |
| 417 | | bfloat16x8_t __ret_1; \ |
| 418 | | bfloat16x4_t __s0_1 = __p0_1; \ |
| 419 | | bfloat16x4_t __rev0_1; __rev0_1 = __builtin_shufflevector(__s0_1, __s0_1, __lane_reverse_64_16); \ |
| 420 | | __ret_1 = __noswap_splatq_lane_bf16(__rev0_1, __p1_1); \ |
| 421 | | __ret_1 = __builtin_shufflevector(__ret_1, __ret_1, __lane_reverse_128_16); \ |
| 422 | | __ret_1; \ |
| 423 | | }) |
| 424 | | #endif |
| 425 | | |
| 426 | | #ifdef __LITTLE_ENDIAN__ |
| 427 | | #define vdup_lane_bf16(__p0_2, __p1_2) __extension__ ({ \ |
| 428 | | bfloat16x4_t __ret_2; \ |
| 429 | | bfloat16x4_t __s0_2 = __p0_2; \ |
| 430 | | __ret_2 = splat_lane_bf16(__s0_2, __p1_2); \ |
| 431 | | __ret_2; \ |
| 432 | | }) |
| 433 | | #else |
| 434 | | #define vdup_lane_bf16(__p0_3, __p1_3) __extension__ ({ \ |
| 435 | | bfloat16x4_t __ret_3; \ |
| 436 | | bfloat16x4_t __s0_3 = __p0_3; \ |
| 437 | | bfloat16x4_t __rev0_3; __rev0_3 = __builtin_shufflevector(__s0_3, __s0_3, __lane_reverse_64_16); \ |
| 438 | | __ret_3 = __noswap_splat_lane_bf16(__rev0_3, __p1_3); \ |
| 439 | | __ret_3 = __builtin_shufflevector(__ret_3, __ret_3, __lane_reverse_64_16); \ |
| 440 | | __ret_3; \ |
| 441 | | }) |
| 442 | | #endif |
| 443 | | |
| 444 | | #ifdef __LITTLE_ENDIAN__ |
| 445 | | #define vduph_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 446 | | bfloat16_t __ret; \ |
| 447 | | bfloat16x8_t __s0 = __p0; \ |
| 448 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_laneq_bf16(__s0, __p1)); \ |
| 449 | | __ret; \ |
| 450 | | }) |
| 451 | | #else |
| 452 | | #define vduph_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 453 | | bfloat16_t __ret; \ |
| 454 | | bfloat16x8_t __s0 = __p0; \ |
| 455 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 456 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_laneq_bf16(__rev0, __p1)); \ |
| 457 | | __ret; \ |
| 458 | | }) |
| 459 | | #endif |
| 460 | | |
| 461 | | #ifdef __LITTLE_ENDIAN__ |
| 462 | | #define vdupq_laneq_bf16(__p0_4, __p1_4) __extension__ ({ \ |
| 463 | | bfloat16x8_t __ret_4; \ |
| 464 | | bfloat16x8_t __s0_4 = __p0_4; \ |
| 465 | | __ret_4 = splatq_laneq_bf16(__s0_4, __p1_4); \ |
| 466 | | __ret_4; \ |
| 467 | | }) |
| 468 | | #else |
| 469 | | #define vdupq_laneq_bf16(__p0_5, __p1_5) __extension__ ({ \ |
| 470 | | bfloat16x8_t __ret_5; \ |
| 471 | | bfloat16x8_t __s0_5 = __p0_5; \ |
| 472 | | bfloat16x8_t __rev0_5; __rev0_5 = __builtin_shufflevector(__s0_5, __s0_5, __lane_reverse_128_16); \ |
| 473 | | __ret_5 = __noswap_splatq_laneq_bf16(__rev0_5, __p1_5); \ |
| 474 | | __ret_5 = __builtin_shufflevector(__ret_5, __ret_5, __lane_reverse_128_16); \ |
| 475 | | __ret_5; \ |
| 476 | | }) |
| 477 | | #endif |
| 478 | | |
| 479 | | #ifdef __LITTLE_ENDIAN__ |
| 480 | | #define vdup_laneq_bf16(__p0_6, __p1_6) __extension__ ({ \ |
| 481 | | bfloat16x4_t __ret_6; \ |
| 482 | | bfloat16x8_t __s0_6 = __p0_6; \ |
| 483 | | __ret_6 = splat_laneq_bf16(__s0_6, __p1_6); \ |
| 484 | | __ret_6; \ |
| 485 | | }) |
| 486 | | #else |
| 487 | | #define vdup_laneq_bf16(__p0_7, __p1_7) __extension__ ({ \ |
| 488 | | bfloat16x4_t __ret_7; \ |
| 489 | | bfloat16x8_t __s0_7 = __p0_7; \ |
| 490 | | bfloat16x8_t __rev0_7; __rev0_7 = __builtin_shufflevector(__s0_7, __s0_7, __lane_reverse_128_16); \ |
| 491 | | __ret_7 = __noswap_splat_laneq_bf16(__rev0_7, __p1_7); \ |
| 492 | | __ret_7 = __builtin_shufflevector(__ret_7, __ret_7, __lane_reverse_64_16); \ |
| 493 | | __ret_7; \ |
| 494 | | }) |
| 495 | | #endif |
| 496 | | |
| 497 | | #ifdef __LITTLE_ENDIAN__ |
| 498 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vdupq_n_bf16(bfloat16_t __p0) { |
| 499 | | bfloat16x8_t __ret; |
| 500 | | __ret = (bfloat16x8_t) {__p0, __p0, __p0, __p0, __p0, __p0, __p0, __p0}; |
| 501 | | return __ret; |
| 502 | | } |
| 503 | | #else |
| 504 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vdupq_n_bf16(bfloat16_t __p0) { |
| 505 | | bfloat16x8_t __ret; |
| 506 | | __ret = (bfloat16x8_t) {__p0, __p0, __p0, __p0, __p0, __p0, __p0, __p0}; |
| 507 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 508 | | return __ret; |
| 509 | | } |
| 510 | | #endif |
| 511 | | |
| 512 | | #ifdef __LITTLE_ENDIAN__ |
| 513 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vdup_n_bf16(bfloat16_t __p0) { |
| 514 | | bfloat16x4_t __ret; |
| 515 | | __ret = (bfloat16x4_t) {__p0, __p0, __p0, __p0}; |
| 516 | | return __ret; |
| 517 | | } |
| 518 | | #else |
| 519 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vdup_n_bf16(bfloat16_t __p0) { |
| 520 | | bfloat16x4_t __ret; |
| 521 | | __ret = (bfloat16x4_t) {__p0, __p0, __p0, __p0}; |
| 522 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 523 | | return __ret; |
| 524 | | } |
| 525 | | #endif |
| 526 | | |
| 527 | | #ifdef __LITTLE_ENDIAN__ |
| 528 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vget_high_bf16(bfloat16x8_t __p0) { |
| 529 | | bfloat16x4_t __ret; |
| 530 | | __ret = __builtin_shufflevector(__p0, __p0, 4, 5, 6, 7); |
| 531 | | return __ret; |
| 532 | | } |
| 533 | | #else |
| 534 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vget_high_bf16(bfloat16x8_t __p0) { |
| 535 | | bfloat16x4_t __ret; |
| 536 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 537 | | __ret = __builtin_shufflevector(__rev0, __rev0, 4, 5, 6, 7); |
| 538 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 539 | | return __ret; |
| 540 | | } |
| 541 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t __noswap_vget_high_bf16(bfloat16x8_t __p0) { |
| 542 | | bfloat16x4_t __ret; |
| 543 | | __ret = __builtin_shufflevector(__p0, __p0, 4, 5, 6, 7); |
| 544 | | return __ret; |
| 545 | | } |
| 546 | | #endif |
| 547 | | |
| 548 | | #ifdef __LITTLE_ENDIAN__ |
| 549 | | #define vgetq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 550 | | bfloat16_t __ret; \ |
| 551 | | bfloat16x8_t __s0 = __p0; \ |
| 552 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vgetq_lane_bf16(__s0, __p1)); \ |
| 553 | | __ret; \ |
| 554 | | }) |
| 555 | | #else |
| 556 | | #define vgetq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 557 | | bfloat16_t __ret; \ |
| 558 | | bfloat16x8_t __s0 = __p0; \ |
| 559 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 560 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vgetq_lane_bf16(__rev0, __p1)); \ |
| 561 | | __ret; \ |
| 562 | | }) |
| 563 | | #define __noswap_vgetq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 564 | | bfloat16_t __ret; \ |
| 565 | | bfloat16x8_t __s0 = __p0; \ |
| 566 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vgetq_lane_bf16(__s0, __p1)); \ |
| 567 | | __ret; \ |
| 568 | | }) |
| 569 | | #endif |
| 570 | | |
| 571 | | #ifdef __LITTLE_ENDIAN__ |
| 572 | | #define vget_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 573 | | bfloat16_t __ret; \ |
| 574 | | bfloat16x4_t __s0 = __p0; \ |
| 575 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vget_lane_bf16(__s0, __p1)); \ |
| 576 | | __ret; \ |
| 577 | | }) |
| 578 | | #else |
| 579 | | #define vget_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 580 | | bfloat16_t __ret; \ |
| 581 | | bfloat16x4_t __s0 = __p0; \ |
| 582 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 583 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vget_lane_bf16(__rev0, __p1)); \ |
| 584 | | __ret; \ |
| 585 | | }) |
| 586 | | #define __noswap_vget_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 587 | | bfloat16_t __ret; \ |
| 588 | | bfloat16x4_t __s0 = __p0; \ |
| 589 | | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vget_lane_bf16(__s0, __p1)); \ |
| 590 | | __ret; \ |
| 591 | | }) |
| 592 | | #endif |
| 593 | | |
| 594 | | #ifdef __LITTLE_ENDIAN__ |
| 595 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vget_low_bf16(bfloat16x8_t __p0) { |
| 596 | | bfloat16x4_t __ret; |
| 597 | | __ret = __builtin_shufflevector(__p0, __p0, 0, 1, 2, 3); |
| 598 | | return __ret; |
| 599 | | } |
| 600 | | #else |
| 601 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vget_low_bf16(bfloat16x8_t __p0) { |
| 602 | | bfloat16x4_t __ret; |
| 603 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 604 | | __ret = __builtin_shufflevector(__rev0, __rev0, 0, 1, 2, 3); |
| 605 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 606 | | return __ret; |
| 607 | | } |
| 608 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t __noswap_vget_low_bf16(bfloat16x8_t __p0) { |
| 609 | | bfloat16x4_t __ret; |
| 610 | | __ret = __builtin_shufflevector(__p0, __p0, 0, 1, 2, 3); |
| 611 | | return __ret; |
| 612 | | } |
| 613 | | #endif |
| 614 | | |
| 615 | | #ifdef __LITTLE_ENDIAN__ |
| 616 | | #define vld1q_bf16(__p0) __extension__ ({ \ |
| 617 | | bfloat16x8_t __ret; \ |
| 618 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_bf16(__p0, 43)); \ |
| 619 | | __ret; \ |
| 620 | | }) |
| 621 | | #else |
| 622 | | #define vld1q_bf16(__p0) __extension__ ({ \ |
| 623 | | bfloat16x8_t __ret; \ |
| 624 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_bf16(__p0, 43)); \ |
| 625 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 626 | | __ret; \ |
| 627 | | }) |
| 628 | | #endif |
| 629 | | |
| 630 | | #ifdef __LITTLE_ENDIAN__ |
| 631 | | #define vld1_bf16(__p0) __extension__ ({ \ |
| 632 | | bfloat16x4_t __ret; \ |
| 633 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_bf16(__p0, 11)); \ |
| 634 | | __ret; \ |
| 635 | | }) |
| 636 | | #else |
| 637 | | #define vld1_bf16(__p0) __extension__ ({ \ |
| 638 | | bfloat16x4_t __ret; \ |
| 639 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_bf16(__p0, 11)); \ |
| 640 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 641 | | __ret; \ |
| 642 | | }) |
| 643 | | #endif |
| 644 | | |
| 645 | | #ifdef __LITTLE_ENDIAN__ |
| 646 | | #define vld1q_dup_bf16(__p0) __extension__ ({ \ |
| 647 | | bfloat16x8_t __ret; \ |
| 648 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_dup_bf16(__p0, 43)); \ |
| 649 | | __ret; \ |
| 650 | | }) |
| 651 | | #else |
| 652 | | #define vld1q_dup_bf16(__p0) __extension__ ({ \ |
| 653 | | bfloat16x8_t __ret; \ |
| 654 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_dup_bf16(__p0, 43)); \ |
| 655 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 656 | | __ret; \ |
| 657 | | }) |
| 658 | | #endif |
| 659 | | |
| 660 | | #ifdef __LITTLE_ENDIAN__ |
| 661 | | #define vld1_dup_bf16(__p0) __extension__ ({ \ |
| 662 | | bfloat16x4_t __ret; \ |
| 663 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_dup_bf16(__p0, 11)); \ |
| 664 | | __ret; \ |
| 665 | | }) |
| 666 | | #else |
| 667 | | #define vld1_dup_bf16(__p0) __extension__ ({ \ |
| 668 | | bfloat16x4_t __ret; \ |
| 669 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_dup_bf16(__p0, 11)); \ |
| 670 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 671 | | __ret; \ |
| 672 | | }) |
| 673 | | #endif |
| 674 | | |
| 675 | | #ifdef __LITTLE_ENDIAN__ |
| 676 | | #define vld1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 677 | | bfloat16x8_t __ret; \ |
| 678 | | bfloat16x8_t __s1 = __p1; \ |
| 679 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 680 | | __ret; \ |
| 681 | | }) |
| 682 | | #else |
| 683 | | #define vld1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 684 | | bfloat16x8_t __ret; \ |
| 685 | | bfloat16x8_t __s1 = __p1; \ |
| 686 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 687 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 688 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 689 | | __ret; \ |
| 690 | | }) |
| 691 | | #endif |
| 692 | | |
| 693 | | #ifdef __LITTLE_ENDIAN__ |
| 694 | | #define vld1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 695 | | bfloat16x4_t __ret; \ |
| 696 | | bfloat16x4_t __s1 = __p1; \ |
| 697 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1), __p2, 11)); \ |
| 698 | | __ret; \ |
| 699 | | }) |
| 700 | | #else |
| 701 | | #define vld1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 702 | | bfloat16x4_t __ret; \ |
| 703 | | bfloat16x4_t __s1 = __p1; \ |
| 704 | | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 705 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1), __p2, 11)); \ |
| 706 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 707 | | __ret; \ |
| 708 | | }) |
| 709 | | #endif |
| 710 | | |
| 711 | | #ifdef __LITTLE_ENDIAN__ |
| 712 | | #define vld1q_bf16_x2(__p0) __extension__ ({ \ |
| 713 | | bfloat16x8x2_t __ret; \ |
| 714 | | __builtin_neon_vld1q_bf16_x2(&__ret, __p0, 43); \ |
| 715 | | __ret; \ |
| 716 | | }) |
| 717 | | #else |
| 718 | | #define vld1q_bf16_x2(__p0) __extension__ ({ \ |
| 719 | | bfloat16x8x2_t __ret; \ |
| 720 | | __builtin_neon_vld1q_bf16_x2(&__ret, __p0, 43); \ |
| 721 | | \ |
| 722 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 723 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 724 | | __ret; \ |
| 725 | | }) |
| 726 | | #endif |
| 727 | | |
| 728 | | #ifdef __LITTLE_ENDIAN__ |
| 729 | | #define vld1_bf16_x2(__p0) __extension__ ({ \ |
| 730 | | bfloat16x4x2_t __ret; \ |
| 731 | | __builtin_neon_vld1_bf16_x2(&__ret, __p0, 11); \ |
| 732 | | __ret; \ |
| 733 | | }) |
| 734 | | #else |
| 735 | | #define vld1_bf16_x2(__p0) __extension__ ({ \ |
| 736 | | bfloat16x4x2_t __ret; \ |
| 737 | | __builtin_neon_vld1_bf16_x2(&__ret, __p0, 11); \ |
| 738 | | \ |
| 739 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 740 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 741 | | __ret; \ |
| 742 | | }) |
| 743 | | #endif |
| 744 | | |
| 745 | | #ifdef __LITTLE_ENDIAN__ |
| 746 | | #define vld1q_bf16_x3(__p0) __extension__ ({ \ |
| 747 | | bfloat16x8x3_t __ret; \ |
| 748 | | __builtin_neon_vld1q_bf16_x3(&__ret, __p0, 43); \ |
| 749 | | __ret; \ |
| 750 | | }) |
| 751 | | #else |
| 752 | | #define vld1q_bf16_x3(__p0) __extension__ ({ \ |
| 753 | | bfloat16x8x3_t __ret; \ |
| 754 | | __builtin_neon_vld1q_bf16_x3(&__ret, __p0, 43); \ |
| 755 | | \ |
| 756 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 757 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 758 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 759 | | __ret; \ |
| 760 | | }) |
| 761 | | #endif |
| 762 | | |
| 763 | | #ifdef __LITTLE_ENDIAN__ |
| 764 | | #define vld1_bf16_x3(__p0) __extension__ ({ \ |
| 765 | | bfloat16x4x3_t __ret; \ |
| 766 | | __builtin_neon_vld1_bf16_x3(&__ret, __p0, 11); \ |
| 767 | | __ret; \ |
| 768 | | }) |
| 769 | | #else |
| 770 | | #define vld1_bf16_x3(__p0) __extension__ ({ \ |
| 771 | | bfloat16x4x3_t __ret; \ |
| 772 | | __builtin_neon_vld1_bf16_x3(&__ret, __p0, 11); \ |
| 773 | | \ |
| 774 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 775 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 776 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 777 | | __ret; \ |
| 778 | | }) |
| 779 | | #endif |
| 780 | | |
| 781 | | #ifdef __LITTLE_ENDIAN__ |
| 782 | | #define vld1q_bf16_x4(__p0) __extension__ ({ \ |
| 783 | | bfloat16x8x4_t __ret; \ |
| 784 | | __builtin_neon_vld1q_bf16_x4(&__ret, __p0, 43); \ |
| 785 | | __ret; \ |
| 786 | | }) |
| 787 | | #else |
| 788 | | #define vld1q_bf16_x4(__p0) __extension__ ({ \ |
| 789 | | bfloat16x8x4_t __ret; \ |
| 790 | | __builtin_neon_vld1q_bf16_x4(&__ret, __p0, 43); \ |
| 791 | | \ |
| 792 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 793 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 794 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 795 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 796 | | __ret; \ |
| 797 | | }) |
| 798 | | #endif |
| 799 | | |
| 800 | | #ifdef __LITTLE_ENDIAN__ |
| 801 | | #define vld1_bf16_x4(__p0) __extension__ ({ \ |
| 802 | | bfloat16x4x4_t __ret; \ |
| 803 | | __builtin_neon_vld1_bf16_x4(&__ret, __p0, 11); \ |
| 804 | | __ret; \ |
| 805 | | }) |
| 806 | | #else |
| 807 | | #define vld1_bf16_x4(__p0) __extension__ ({ \ |
| 808 | | bfloat16x4x4_t __ret; \ |
| 809 | | __builtin_neon_vld1_bf16_x4(&__ret, __p0, 11); \ |
| 810 | | \ |
| 811 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 812 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 813 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 814 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 815 | | __ret; \ |
| 816 | | }) |
| 817 | | #endif |
| 818 | | |
| 819 | | #ifdef __LITTLE_ENDIAN__ |
| 820 | | #define vld2q_bf16(__p0) __extension__ ({ \ |
| 821 | | bfloat16x8x2_t __ret; \ |
| 822 | | __builtin_neon_vld2q_bf16(&__ret, __p0, 43); \ |
| 823 | | __ret; \ |
| 824 | | }) |
| 825 | | #else |
| 826 | | #define vld2q_bf16(__p0) __extension__ ({ \ |
| 827 | | bfloat16x8x2_t __ret; \ |
| 828 | | __builtin_neon_vld2q_bf16(&__ret, __p0, 43); \ |
| 829 | | \ |
| 830 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 831 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 832 | | __ret; \ |
| 833 | | }) |
| 834 | | #endif |
| 835 | | |
| 836 | | #ifdef __LITTLE_ENDIAN__ |
| 837 | | #define vld2_bf16(__p0) __extension__ ({ \ |
| 838 | | bfloat16x4x2_t __ret; \ |
| 839 | | __builtin_neon_vld2_bf16(&__ret, __p0, 11); \ |
| 840 | | __ret; \ |
| 841 | | }) |
| 842 | | #else |
| 843 | | #define vld2_bf16(__p0) __extension__ ({ \ |
| 844 | | bfloat16x4x2_t __ret; \ |
| 845 | | __builtin_neon_vld2_bf16(&__ret, __p0, 11); \ |
| 846 | | \ |
| 847 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 848 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 849 | | __ret; \ |
| 850 | | }) |
| 851 | | #endif |
| 852 | | |
| 853 | | #ifdef __LITTLE_ENDIAN__ |
| 854 | | #define vld2q_dup_bf16(__p0) __extension__ ({ \ |
| 855 | | bfloat16x8x2_t __ret; \ |
| 856 | | __builtin_neon_vld2q_dup_bf16(&__ret, __p0, 43); \ |
| 857 | | __ret; \ |
| 858 | | }) |
| 859 | | #else |
| 860 | | #define vld2q_dup_bf16(__p0) __extension__ ({ \ |
| 861 | | bfloat16x8x2_t __ret; \ |
| 862 | | __builtin_neon_vld2q_dup_bf16(&__ret, __p0, 43); \ |
| 863 | | \ |
| 864 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 865 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 866 | | __ret; \ |
| 867 | | }) |
| 868 | | #endif |
| 869 | | |
| 870 | | #ifdef __LITTLE_ENDIAN__ |
| 871 | | #define vld2_dup_bf16(__p0) __extension__ ({ \ |
| 872 | | bfloat16x4x2_t __ret; \ |
| 873 | | __builtin_neon_vld2_dup_bf16(&__ret, __p0, 11); \ |
| 874 | | __ret; \ |
| 875 | | }) |
| 876 | | #else |
| 877 | | #define vld2_dup_bf16(__p0) __extension__ ({ \ |
| 878 | | bfloat16x4x2_t __ret; \ |
| 879 | | __builtin_neon_vld2_dup_bf16(&__ret, __p0, 11); \ |
| 880 | | \ |
| 881 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 882 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 883 | | __ret; \ |
| 884 | | }) |
| 885 | | #endif |
| 886 | | |
| 887 | | #ifdef __LITTLE_ENDIAN__ |
| 888 | | #define vld2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 889 | | bfloat16x8x2_t __ret; \ |
| 890 | | bfloat16x8x2_t __s1 = __p1; \ |
| 891 | | __builtin_neon_vld2q_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __p2, 43); \ |
| 892 | | __ret; \ |
| 893 | | }) |
| 894 | | #else |
| 895 | | #define vld2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 896 | | bfloat16x8x2_t __ret; \ |
| 897 | | bfloat16x8x2_t __s1 = __p1; \ |
| 898 | | bfloat16x8x2_t __rev1; \ |
| 899 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 900 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 901 | | __builtin_neon_vld2q_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __p2, 43); \ |
| 902 | | \ |
| 903 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 904 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 905 | | __ret; \ |
| 906 | | }) |
| 907 | | #endif |
| 908 | | |
| 909 | | #ifdef __LITTLE_ENDIAN__ |
| 910 | | #define vld2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 911 | | bfloat16x4x2_t __ret; \ |
| 912 | | bfloat16x4x2_t __s1 = __p1; \ |
| 913 | | __builtin_neon_vld2_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __p2, 11); \ |
| 914 | | __ret; \ |
| 915 | | }) |
| 916 | | #else |
| 917 | | #define vld2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 918 | | bfloat16x4x2_t __ret; \ |
| 919 | | bfloat16x4x2_t __s1 = __p1; \ |
| 920 | | bfloat16x4x2_t __rev1; \ |
| 921 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 922 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 923 | | __builtin_neon_vld2_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __p2, 11); \ |
| 924 | | \ |
| 925 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 926 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 927 | | __ret; \ |
| 928 | | }) |
| 929 | | #endif |
| 930 | | |
| 931 | | #ifdef __LITTLE_ENDIAN__ |
| 932 | | #define vld3q_bf16(__p0) __extension__ ({ \ |
| 933 | | bfloat16x8x3_t __ret; \ |
| 934 | | __builtin_neon_vld3q_bf16(&__ret, __p0, 43); \ |
| 935 | | __ret; \ |
| 936 | | }) |
| 937 | | #else |
| 938 | | #define vld3q_bf16(__p0) __extension__ ({ \ |
| 939 | | bfloat16x8x3_t __ret; \ |
| 940 | | __builtin_neon_vld3q_bf16(&__ret, __p0, 43); \ |
| 941 | | \ |
| 942 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 943 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 944 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 945 | | __ret; \ |
| 946 | | }) |
| 947 | | #endif |
| 948 | | |
| 949 | | #ifdef __LITTLE_ENDIAN__ |
| 950 | | #define vld3_bf16(__p0) __extension__ ({ \ |
| 951 | | bfloat16x4x3_t __ret; \ |
| 952 | | __builtin_neon_vld3_bf16(&__ret, __p0, 11); \ |
| 953 | | __ret; \ |
| 954 | | }) |
| 955 | | #else |
| 956 | | #define vld3_bf16(__p0) __extension__ ({ \ |
| 957 | | bfloat16x4x3_t __ret; \ |
| 958 | | __builtin_neon_vld3_bf16(&__ret, __p0, 11); \ |
| 959 | | \ |
| 960 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 961 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 962 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 963 | | __ret; \ |
| 964 | | }) |
| 965 | | #endif |
| 966 | | |
| 967 | | #ifdef __LITTLE_ENDIAN__ |
| 968 | | #define vld3q_dup_bf16(__p0) __extension__ ({ \ |
| 969 | | bfloat16x8x3_t __ret; \ |
| 970 | | __builtin_neon_vld3q_dup_bf16(&__ret, __p0, 43); \ |
| 971 | | __ret; \ |
| 972 | | }) |
| 973 | | #else |
| 974 | | #define vld3q_dup_bf16(__p0) __extension__ ({ \ |
| 975 | | bfloat16x8x3_t __ret; \ |
| 976 | | __builtin_neon_vld3q_dup_bf16(&__ret, __p0, 43); \ |
| 977 | | \ |
| 978 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 979 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 980 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 981 | | __ret; \ |
| 982 | | }) |
| 983 | | #endif |
| 984 | | |
| 985 | | #ifdef __LITTLE_ENDIAN__ |
| 986 | | #define vld3_dup_bf16(__p0) __extension__ ({ \ |
| 987 | | bfloat16x4x3_t __ret; \ |
| 988 | | __builtin_neon_vld3_dup_bf16(&__ret, __p0, 11); \ |
| 989 | | __ret; \ |
| 990 | | }) |
| 991 | | #else |
| 992 | | #define vld3_dup_bf16(__p0) __extension__ ({ \ |
| 993 | | bfloat16x4x3_t __ret; \ |
| 994 | | __builtin_neon_vld3_dup_bf16(&__ret, __p0, 11); \ |
| 995 | | \ |
| 996 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 997 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 998 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 999 | | __ret; \ |
| 1000 | | }) |
| 1001 | | #endif |
| 1002 | | |
| 1003 | | #ifdef __LITTLE_ENDIAN__ |
| 1004 | | #define vld3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1005 | | bfloat16x8x3_t __ret; \ |
| 1006 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1007 | | __builtin_neon_vld3q_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __p2, 43); \ |
| 1008 | | __ret; \ |
| 1009 | | }) |
| 1010 | | #else |
| 1011 | | #define vld3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1012 | | bfloat16x8x3_t __ret; \ |
| 1013 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1014 | | bfloat16x8x3_t __rev1; \ |
| 1015 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1016 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1017 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1018 | | __builtin_neon_vld3q_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __p2, 43); \ |
| 1019 | | \ |
| 1020 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 1021 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 1022 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 1023 | | __ret; \ |
| 1024 | | }) |
| 1025 | | #endif |
| 1026 | | |
| 1027 | | #ifdef __LITTLE_ENDIAN__ |
| 1028 | | #define vld3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1029 | | bfloat16x4x3_t __ret; \ |
| 1030 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1031 | | __builtin_neon_vld3_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __p2, 11); \ |
| 1032 | | __ret; \ |
| 1033 | | }) |
| 1034 | | #else |
| 1035 | | #define vld3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1036 | | bfloat16x4x3_t __ret; \ |
| 1037 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1038 | | bfloat16x4x3_t __rev1; \ |
| 1039 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1040 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1041 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1042 | | __builtin_neon_vld3_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __p2, 11); \ |
| 1043 | | \ |
| 1044 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 1045 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 1046 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 1047 | | __ret; \ |
| 1048 | | }) |
| 1049 | | #endif |
| 1050 | | |
| 1051 | | #ifdef __LITTLE_ENDIAN__ |
| 1052 | | #define vld4q_bf16(__p0) __extension__ ({ \ |
| 1053 | | bfloat16x8x4_t __ret; \ |
| 1054 | | __builtin_neon_vld4q_bf16(&__ret, __p0, 43); \ |
| 1055 | | __ret; \ |
| 1056 | | }) |
| 1057 | | #else |
| 1058 | | #define vld4q_bf16(__p0) __extension__ ({ \ |
| 1059 | | bfloat16x8x4_t __ret; \ |
| 1060 | | __builtin_neon_vld4q_bf16(&__ret, __p0, 43); \ |
| 1061 | | \ |
| 1062 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 1063 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 1064 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 1065 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 1066 | | __ret; \ |
| 1067 | | }) |
| 1068 | | #endif |
| 1069 | | |
| 1070 | | #ifdef __LITTLE_ENDIAN__ |
| 1071 | | #define vld4_bf16(__p0) __extension__ ({ \ |
| 1072 | | bfloat16x4x4_t __ret; \ |
| 1073 | | __builtin_neon_vld4_bf16(&__ret, __p0, 11); \ |
| 1074 | | __ret; \ |
| 1075 | | }) |
| 1076 | | #else |
| 1077 | | #define vld4_bf16(__p0) __extension__ ({ \ |
| 1078 | | bfloat16x4x4_t __ret; \ |
| 1079 | | __builtin_neon_vld4_bf16(&__ret, __p0, 11); \ |
| 1080 | | \ |
| 1081 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 1082 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 1083 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 1084 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 1085 | | __ret; \ |
| 1086 | | }) |
| 1087 | | #endif |
| 1088 | | |
| 1089 | | #ifdef __LITTLE_ENDIAN__ |
| 1090 | | #define vld4q_dup_bf16(__p0) __extension__ ({ \ |
| 1091 | | bfloat16x8x4_t __ret; \ |
| 1092 | | __builtin_neon_vld4q_dup_bf16(&__ret, __p0, 43); \ |
| 1093 | | __ret; \ |
| 1094 | | }) |
| 1095 | | #else |
| 1096 | | #define vld4q_dup_bf16(__p0) __extension__ ({ \ |
| 1097 | | bfloat16x8x4_t __ret; \ |
| 1098 | | __builtin_neon_vld4q_dup_bf16(&__ret, __p0, 43); \ |
| 1099 | | \ |
| 1100 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 1101 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 1102 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 1103 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 1104 | | __ret; \ |
| 1105 | | }) |
| 1106 | | #endif |
| 1107 | | |
| 1108 | | #ifdef __LITTLE_ENDIAN__ |
| 1109 | | #define vld4_dup_bf16(__p0) __extension__ ({ \ |
| 1110 | | bfloat16x4x4_t __ret; \ |
| 1111 | | __builtin_neon_vld4_dup_bf16(&__ret, __p0, 11); \ |
| 1112 | | __ret; \ |
| 1113 | | }) |
| 1114 | | #else |
| 1115 | | #define vld4_dup_bf16(__p0) __extension__ ({ \ |
| 1116 | | bfloat16x4x4_t __ret; \ |
| 1117 | | __builtin_neon_vld4_dup_bf16(&__ret, __p0, 11); \ |
| 1118 | | \ |
| 1119 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 1120 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 1121 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 1122 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 1123 | | __ret; \ |
| 1124 | | }) |
| 1125 | | #endif |
| 1126 | | |
| 1127 | | #ifdef __LITTLE_ENDIAN__ |
| 1128 | | #define vld4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1129 | | bfloat16x8x4_t __ret; \ |
| 1130 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1131 | | __builtin_neon_vld4q_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), __p2, 43); \ |
| 1132 | | __ret; \ |
| 1133 | | }) |
| 1134 | | #else |
| 1135 | | #define vld4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1136 | | bfloat16x8x4_t __ret; \ |
| 1137 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1138 | | bfloat16x8x4_t __rev1; \ |
| 1139 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1140 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1141 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1142 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 1143 | | __builtin_neon_vld4q_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), __p2, 43); \ |
| 1144 | | \ |
| 1145 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 1146 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 1147 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 1148 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 1149 | | __ret; \ |
| 1150 | | }) |
| 1151 | | #endif |
| 1152 | | |
| 1153 | | #ifdef __LITTLE_ENDIAN__ |
| 1154 | | #define vld4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1155 | | bfloat16x4x4_t __ret; \ |
| 1156 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1157 | | __builtin_neon_vld4_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), __p2, 11); \ |
| 1158 | | __ret; \ |
| 1159 | | }) |
| 1160 | | #else |
| 1161 | | #define vld4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1162 | | bfloat16x4x4_t __ret; \ |
| 1163 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1164 | | bfloat16x4x4_t __rev1; \ |
| 1165 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1166 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1167 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1168 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 1169 | | __builtin_neon_vld4_lane_bf16(&__ret, __p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), __p2, 11); \ |
| 1170 | | \ |
| 1171 | | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 1172 | | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 1173 | | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 1174 | | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 1175 | | __ret; \ |
| 1176 | | }) |
| 1177 | | #endif |
| 1178 | | |
| 1179 | | #ifdef __LITTLE_ENDIAN__ |
| 1180 | | #define vsetq_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1181 | | bfloat16x8_t __ret; \ |
| 1182 | | bfloat16_t __s0 = __p0; \ |
| 1183 | | bfloat16x8_t __s1 = __p1; \ |
| 1184 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vsetq_lane_bf16(__s0, __s1, __p2)); \ |
| 1185 | | __ret; \ |
| 1186 | | }) |
| 1187 | | #else |
| 1188 | | #define vsetq_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1189 | | bfloat16x8_t __ret; \ |
| 1190 | | bfloat16_t __s0 = __p0; \ |
| 1191 | | bfloat16x8_t __s1 = __p1; \ |
| 1192 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 1193 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vsetq_lane_bf16(__s0, __rev1, __p2)); \ |
| 1194 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 1195 | | __ret; \ |
| 1196 | | }) |
| 1197 | | #define __noswap_vsetq_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1198 | | bfloat16x8_t __ret; \ |
| 1199 | | bfloat16_t __s0 = __p0; \ |
| 1200 | | bfloat16x8_t __s1 = __p1; \ |
| 1201 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vsetq_lane_bf16(__s0, __s1, __p2)); \ |
| 1202 | | __ret; \ |
| 1203 | | }) |
| 1204 | | #endif |
| 1205 | | |
| 1206 | | #ifdef __LITTLE_ENDIAN__ |
| 1207 | | #define vset_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1208 | | bfloat16x4_t __ret; \ |
| 1209 | | bfloat16_t __s0 = __p0; \ |
| 1210 | | bfloat16x4_t __s1 = __p1; \ |
| 1211 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vset_lane_bf16(__s0, __s1, __p2)); \ |
| 1212 | | __ret; \ |
| 1213 | | }) |
| 1214 | | #else |
| 1215 | | #define vset_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1216 | | bfloat16x4_t __ret; \ |
| 1217 | | bfloat16_t __s0 = __p0; \ |
| 1218 | | bfloat16x4_t __s1 = __p1; \ |
| 1219 | | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 1220 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vset_lane_bf16(__s0, __rev1, __p2)); \ |
| 1221 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 1222 | | __ret; \ |
| 1223 | | }) |
| 1224 | | #define __noswap_vset_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1225 | | bfloat16x4_t __ret; \ |
| 1226 | | bfloat16_t __s0 = __p0; \ |
| 1227 | | bfloat16x4_t __s1 = __p1; \ |
| 1228 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vset_lane_bf16(__s0, __s1, __p2)); \ |
| 1229 | | __ret; \ |
| 1230 | | }) |
| 1231 | | #endif |
| 1232 | | |
| 1233 | | #ifdef __LITTLE_ENDIAN__ |
| 1234 | | #define vst1q_bf16(__p0, __p1) __extension__ ({ \ |
| 1235 | | bfloat16x8_t __s1 = __p1; \ |
| 1236 | | __builtin_neon_vst1q_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1), 43); \ |
| 1237 | | }) |
| 1238 | | #else |
| 1239 | | #define vst1q_bf16(__p0, __p1) __extension__ ({ \ |
| 1240 | | bfloat16x8_t __s1 = __p1; \ |
| 1241 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 1242 | | __builtin_neon_vst1q_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1), 43); \ |
| 1243 | | }) |
| 1244 | | #endif |
| 1245 | | |
| 1246 | | #ifdef __LITTLE_ENDIAN__ |
| 1247 | | #define vst1_bf16(__p0, __p1) __extension__ ({ \ |
| 1248 | | bfloat16x4_t __s1 = __p1; \ |
| 1249 | | __builtin_neon_vst1_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1), 11); \ |
| 1250 | | }) |
| 1251 | | #else |
| 1252 | | #define vst1_bf16(__p0, __p1) __extension__ ({ \ |
| 1253 | | bfloat16x4_t __s1 = __p1; \ |
| 1254 | | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 1255 | | __builtin_neon_vst1_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1), 11); \ |
| 1256 | | }) |
| 1257 | | #endif |
| 1258 | | |
| 1259 | | #ifdef __LITTLE_ENDIAN__ |
| 1260 | | #define vst1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1261 | | bfloat16x8_t __s1 = __p1; \ |
| 1262 | | __builtin_neon_vst1q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1), __p2, 43); \ |
| 1263 | | }) |
| 1264 | | #else |
| 1265 | | #define vst1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1266 | | bfloat16x8_t __s1 = __p1; \ |
| 1267 | | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 1268 | | __builtin_neon_vst1q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1), __p2, 43); \ |
| 1269 | | }) |
| 1270 | | #endif |
| 1271 | | |
| 1272 | | #ifdef __LITTLE_ENDIAN__ |
| 1273 | | #define vst1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1274 | | bfloat16x4_t __s1 = __p1; \ |
| 1275 | | __builtin_neon_vst1_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1), __p2, 11); \ |
| 1276 | | }) |
| 1277 | | #else |
| 1278 | | #define vst1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1279 | | bfloat16x4_t __s1 = __p1; \ |
| 1280 | | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 1281 | | __builtin_neon_vst1_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1), __p2, 11); \ |
| 1282 | | }) |
| 1283 | | #endif |
| 1284 | | |
| 1285 | | #ifdef __LITTLE_ENDIAN__ |
| 1286 | | #define vst1q_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 1287 | | bfloat16x8x2_t __s1 = __p1; \ |
| 1288 | | __builtin_neon_vst1q_bf16_x2(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), 43); \ |
| 1289 | | }) |
| 1290 | | #else |
| 1291 | | #define vst1q_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 1292 | | bfloat16x8x2_t __s1 = __p1; \ |
| 1293 | | bfloat16x8x2_t __rev1; \ |
| 1294 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1295 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1296 | | __builtin_neon_vst1q_bf16_x2(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), 43); \ |
| 1297 | | }) |
| 1298 | | #endif |
| 1299 | | |
| 1300 | | #ifdef __LITTLE_ENDIAN__ |
| 1301 | | #define vst1_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 1302 | | bfloat16x4x2_t __s1 = __p1; \ |
| 1303 | | __builtin_neon_vst1_bf16_x2(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), 11); \ |
| 1304 | | }) |
| 1305 | | #else |
| 1306 | | #define vst1_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 1307 | | bfloat16x4x2_t __s1 = __p1; \ |
| 1308 | | bfloat16x4x2_t __rev1; \ |
| 1309 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1310 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1311 | | __builtin_neon_vst1_bf16_x2(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), 11); \ |
| 1312 | | }) |
| 1313 | | #endif |
| 1314 | | |
| 1315 | | #ifdef __LITTLE_ENDIAN__ |
| 1316 | | #define vst1q_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 1317 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1318 | | __builtin_neon_vst1q_bf16_x3(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), 43); \ |
| 1319 | | }) |
| 1320 | | #else |
| 1321 | | #define vst1q_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 1322 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1323 | | bfloat16x8x3_t __rev1; \ |
| 1324 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1325 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1326 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1327 | | __builtin_neon_vst1q_bf16_x3(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), 43); \ |
| 1328 | | }) |
| 1329 | | #endif |
| 1330 | | |
| 1331 | | #ifdef __LITTLE_ENDIAN__ |
| 1332 | | #define vst1_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 1333 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1334 | | __builtin_neon_vst1_bf16_x3(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), 11); \ |
| 1335 | | }) |
| 1336 | | #else |
| 1337 | | #define vst1_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 1338 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1339 | | bfloat16x4x3_t __rev1; \ |
| 1340 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1341 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1342 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1343 | | __builtin_neon_vst1_bf16_x3(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), 11); \ |
| 1344 | | }) |
| 1345 | | #endif |
| 1346 | | |
| 1347 | | #ifdef __LITTLE_ENDIAN__ |
| 1348 | | #define vst1q_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 1349 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1350 | | __builtin_neon_vst1q_bf16_x4(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), 43); \ |
| 1351 | | }) |
| 1352 | | #else |
| 1353 | | #define vst1q_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 1354 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1355 | | bfloat16x8x4_t __rev1; \ |
| 1356 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1357 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1358 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1359 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 1360 | | __builtin_neon_vst1q_bf16_x4(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), 43); \ |
| 1361 | | }) |
| 1362 | | #endif |
| 1363 | | |
| 1364 | | #ifdef __LITTLE_ENDIAN__ |
| 1365 | | #define vst1_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 1366 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1367 | | __builtin_neon_vst1_bf16_x4(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), 11); \ |
| 1368 | | }) |
| 1369 | | #else |
| 1370 | | #define vst1_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 1371 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1372 | | bfloat16x4x4_t __rev1; \ |
| 1373 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1374 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1375 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1376 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 1377 | | __builtin_neon_vst1_bf16_x4(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), 11); \ |
| 1378 | | }) |
| 1379 | | #endif |
| 1380 | | |
| 1381 | | #ifdef __LITTLE_ENDIAN__ |
| 1382 | | #define vst2q_bf16(__p0, __p1) __extension__ ({ \ |
| 1383 | | bfloat16x8x2_t __s1 = __p1; \ |
| 1384 | | __builtin_neon_vst2q_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), 43); \ |
| 1385 | | }) |
| 1386 | | #else |
| 1387 | | #define vst2q_bf16(__p0, __p1) __extension__ ({ \ |
| 1388 | | bfloat16x8x2_t __s1 = __p1; \ |
| 1389 | | bfloat16x8x2_t __rev1; \ |
| 1390 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1391 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1392 | | __builtin_neon_vst2q_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), 43); \ |
| 1393 | | }) |
| 1394 | | #endif |
| 1395 | | |
| 1396 | | #ifdef __LITTLE_ENDIAN__ |
| 1397 | | #define vst2_bf16(__p0, __p1) __extension__ ({ \ |
| 1398 | | bfloat16x4x2_t __s1 = __p1; \ |
| 1399 | | __builtin_neon_vst2_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), 11); \ |
| 1400 | | }) |
| 1401 | | #else |
| 1402 | | #define vst2_bf16(__p0, __p1) __extension__ ({ \ |
| 1403 | | bfloat16x4x2_t __s1 = __p1; \ |
| 1404 | | bfloat16x4x2_t __rev1; \ |
| 1405 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1406 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1407 | | __builtin_neon_vst2_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), 11); \ |
| 1408 | | }) |
| 1409 | | #endif |
| 1410 | | |
| 1411 | | #ifdef __LITTLE_ENDIAN__ |
| 1412 | | #define vst2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1413 | | bfloat16x8x2_t __s1 = __p1; \ |
| 1414 | | __builtin_neon_vst2q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __p2, 43); \ |
| 1415 | | }) |
| 1416 | | #else |
| 1417 | | #define vst2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1418 | | bfloat16x8x2_t __s1 = __p1; \ |
| 1419 | | bfloat16x8x2_t __rev1; \ |
| 1420 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1421 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1422 | | __builtin_neon_vst2q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __p2, 43); \ |
| 1423 | | }) |
| 1424 | | #endif |
| 1425 | | |
| 1426 | | #ifdef __LITTLE_ENDIAN__ |
| 1427 | | #define vst2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1428 | | bfloat16x4x2_t __s1 = __p1; \ |
| 1429 | | __builtin_neon_vst2_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __p2, 11); \ |
| 1430 | | }) |
| 1431 | | #else |
| 1432 | | #define vst2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1433 | | bfloat16x4x2_t __s1 = __p1; \ |
| 1434 | | bfloat16x4x2_t __rev1; \ |
| 1435 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1436 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1437 | | __builtin_neon_vst2_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __p2, 11); \ |
| 1438 | | }) |
| 1439 | | #endif |
| 1440 | | |
| 1441 | | #ifdef __LITTLE_ENDIAN__ |
| 1442 | | #define vst3q_bf16(__p0, __p1) __extension__ ({ \ |
| 1443 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1444 | | __builtin_neon_vst3q_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), 43); \ |
| 1445 | | }) |
| 1446 | | #else |
| 1447 | | #define vst3q_bf16(__p0, __p1) __extension__ ({ \ |
| 1448 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1449 | | bfloat16x8x3_t __rev1; \ |
| 1450 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1451 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1452 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1453 | | __builtin_neon_vst3q_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), 43); \ |
| 1454 | | }) |
| 1455 | | #endif |
| 1456 | | |
| 1457 | | #ifdef __LITTLE_ENDIAN__ |
| 1458 | | #define vst3_bf16(__p0, __p1) __extension__ ({ \ |
| 1459 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1460 | | __builtin_neon_vst3_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), 11); \ |
| 1461 | | }) |
| 1462 | | #else |
| 1463 | | #define vst3_bf16(__p0, __p1) __extension__ ({ \ |
| 1464 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1465 | | bfloat16x4x3_t __rev1; \ |
| 1466 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1467 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1468 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1469 | | __builtin_neon_vst3_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), 11); \ |
| 1470 | | }) |
| 1471 | | #endif |
| 1472 | | |
| 1473 | | #ifdef __LITTLE_ENDIAN__ |
| 1474 | | #define vst3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1475 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1476 | | __builtin_neon_vst3q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __p2, 43); \ |
| 1477 | | }) |
| 1478 | | #else |
| 1479 | | #define vst3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1480 | | bfloat16x8x3_t __s1 = __p1; \ |
| 1481 | | bfloat16x8x3_t __rev1; \ |
| 1482 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1483 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1484 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1485 | | __builtin_neon_vst3q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __p2, 43); \ |
| 1486 | | }) |
| 1487 | | #endif |
| 1488 | | |
| 1489 | | #ifdef __LITTLE_ENDIAN__ |
| 1490 | | #define vst3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1491 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1492 | | __builtin_neon_vst3_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __p2, 11); \ |
| 1493 | | }) |
| 148 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfdotq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 149 | float32x4_t __ret; |
| 150 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfdotq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 151 | return __ret; |
| 152 | } |
| 1494 | 153 | #else |
| 1495 | | #define vst3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1496 | | bfloat16x4x3_t __s1 = __p1; \ |
| 1497 | | bfloat16x4x3_t __rev1; \ |
| 1498 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1499 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1500 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1501 | | __builtin_neon_vst3_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __p2, 11); \ |
| 1502 | | }) |
| 154 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfdotq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 155 | float32x4_t __ret; |
| 156 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 157 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 158 | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 159 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfdotq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 160 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 161 | return __ret; |
| 162 | } |
| 163 | __ai __attribute__((target("bf16,neon"))) float32x4_t __noswap_vbfdotq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 164 | float32x4_t __ret; |
| 165 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfdotq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 166 | return __ret; |
| 167 | } |
| 1503 | 168 | #endif |
| 1504 | 169 | |
| 1505 | 170 | #ifdef __LITTLE_ENDIAN__ |
| 1506 | | #define vst4q_bf16(__p0, __p1) __extension__ ({ \ |
| 1507 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1508 | | __builtin_neon_vst4q_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), 43); \ |
| 1509 | | }) |
| 171 | __ai __attribute__((target("bf16,neon"))) float32x2_t vbfdot_f32(float32x2_t __p0, bfloat16x4_t __p1, bfloat16x4_t __p2) { |
| 172 | float32x2_t __ret; |
| 173 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vbfdot_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), __builtin_bit_cast(int8x8_t, __p2), 9)); |
| 174 | return __ret; |
| 175 | } |
| 1510 | 176 | #else |
| 1511 | | #define vst4q_bf16(__p0, __p1) __extension__ ({ \ |
| 1512 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1513 | | bfloat16x8x4_t __rev1; \ |
| 1514 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1515 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1516 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1517 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 1518 | | __builtin_neon_vst4q_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), 43); \ |
| 1519 | | }) |
| 177 | __ai __attribute__((target("bf16,neon"))) float32x2_t vbfdot_f32(float32x2_t __p0, bfloat16x4_t __p1, bfloat16x4_t __p2) { |
| 178 | float32x2_t __ret; |
| 179 | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 180 | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 181 | bfloat16x4_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_64_16); |
| 182 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vbfdot_f32(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __builtin_bit_cast(int8x8_t, __rev2), 9)); |
| 183 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 184 | return __ret; |
| 185 | } |
| 186 | __ai __attribute__((target("bf16,neon"))) float32x2_t __noswap_vbfdot_f32(float32x2_t __p0, bfloat16x4_t __p1, bfloat16x4_t __p2) { |
| 187 | float32x2_t __ret; |
| 188 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vbfdot_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), __builtin_bit_cast(int8x8_t, __p2), 9)); |
| 189 | return __ret; |
| 190 | } |
| 1520 | 191 | #endif |
| 1521 | 192 | |
| 1522 | 193 | #ifdef __LITTLE_ENDIAN__ |
| 1523 | | #define vst4_bf16(__p0, __p1) __extension__ ({ \ |
| 1524 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1525 | | __builtin_neon_vst4_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), 11); \ |
| 1526 | | }) |
| 194 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlalbq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 195 | float32x4_t __ret; |
| 196 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlalbq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 197 | return __ret; |
| 198 | } |
| 1527 | 199 | #else |
| 1528 | | #define vst4_bf16(__p0, __p1) __extension__ ({ \ |
| 1529 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1530 | | bfloat16x4x4_t __rev1; \ |
| 1531 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1532 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1533 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1534 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 1535 | | __builtin_neon_vst4_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), 11); \ |
| 1536 | | }) |
| 200 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlalbq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 201 | float32x4_t __ret; |
| 202 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 203 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 204 | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 205 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlalbq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 206 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 207 | return __ret; |
| 208 | } |
| 209 | __ai __attribute__((target("bf16,neon"))) float32x4_t __noswap_vbfmlalbq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 210 | float32x4_t __ret; |
| 211 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlalbq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 212 | return __ret; |
| 213 | } |
| 1537 | 214 | #endif |
| 1538 | 215 | |
| 1539 | 216 | #ifdef __LITTLE_ENDIAN__ |
| 1540 | | #define vst4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1541 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1542 | | __builtin_neon_vst4q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), __p2, 43); \ |
| 1543 | | }) |
| 217 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlaltq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 218 | float32x4_t __ret; |
| 219 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlaltq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 220 | return __ret; |
| 221 | } |
| 1544 | 222 | #else |
| 1545 | | #define vst4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1546 | | bfloat16x8x4_t __s1 = __p1; \ |
| 1547 | | bfloat16x8x4_t __rev1; \ |
| 1548 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 1549 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 1550 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 1551 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 1552 | | __builtin_neon_vst4q_lane_bf16(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), __p2, 43); \ |
| 1553 | | }) |
| 223 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmlaltq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 224 | float32x4_t __ret; |
| 225 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 226 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 227 | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 228 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlaltq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 229 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 230 | return __ret; |
| 231 | } |
| 232 | __ai __attribute__((target("bf16,neon"))) float32x4_t __noswap_vbfmlaltq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 233 | float32x4_t __ret; |
| 234 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmlaltq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 235 | return __ret; |
| 236 | } |
| 1554 | 237 | #endif |
| 1555 | 238 | |
| 1556 | 239 | #ifdef __LITTLE_ENDIAN__ |
| 1557 | | #define vst4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1558 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1559 | | __builtin_neon_vst4_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), __p2, 11); \ |
| 1560 | | }) |
| 240 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmmlaq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 241 | float32x4_t __ret; |
| 242 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmmlaq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 243 | return __ret; |
| 244 | } |
| 1561 | 245 | #else |
| 1562 | | #define vst4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 1563 | | bfloat16x4x4_t __s1 = __p1; \ |
| 1564 | | bfloat16x4x4_t __rev1; \ |
| 1565 | | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 1566 | | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 1567 | | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 1568 | | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 1569 | | __builtin_neon_vst4_lane_bf16(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), __p2, 11); \ |
| 1570 | | }) |
| 246 | __ai __attribute__((target("bf16,neon"))) float32x4_t vbfmmlaq_f32(float32x4_t __p0, bfloat16x8_t __p1, bfloat16x8_t __p2) { |
| 247 | float32x4_t __ret; |
| 248 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 249 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 250 | bfloat16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 251 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vbfmmlaq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 252 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 253 | return __ret; |
| 254 | } |
| 1571 | 255 | #endif |
| 1572 | 256 | |
| 257 | __ai __attribute__((target("bf16,neon"))) float32_t vcvtah_f32_bf16(bfloat16_t __p0) { |
| 258 | float32_t __ret; |
| 259 | __ret = __builtin_bit_cast(float32_t, (uint32_t)(__builtin_bit_cast(uint16_t, __p0)) << 16); |
| 260 | return __ret; |
| 261 | } |
| 262 | __ai __attribute__((target("bf16,neon"))) bfloat16_t vcvth_bf16_f32(float32_t __p0) { |
| 263 | bfloat16_t __ret; |
| 264 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vcvth_bf16_f32(__p0)); |
| 265 | return __ret; |
| 266 | } |
| 1573 | 267 | #ifdef __LITTLE_ENDIAN__ |
| 1574 | 268 | __ai __attribute__((target("dotprod,neon"))) uint32x4_t vdotq_u32(uint32x4_t __p0, uint8x16_t __p1, uint8x16_t __p2) { |
| 1575 | 269 | uint32x4_t __ret; |
| ... | ... | @@ -3925,6 +2619,54 @@ __ai __attribute__((target("i8mm,neon"))) int32x4_t vusmmlaq_s32(int32x4_t __p0, |
| 3925 | 2619 | }) |
| 3926 | 2620 | #endif |
| 3927 | 2621 | |
| 2622 | #ifdef __LITTLE_ENDIAN__ |
| 2623 | #define splatq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 2624 | bfloat16x8_t __ret; \ |
| 2625 | bfloat16x4_t __s0 = __p0; \ |
| 2626 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_lane_v(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 2627 | __ret; \ |
| 2628 | }) |
| 2629 | #else |
| 2630 | #define splatq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 2631 | bfloat16x8_t __ret; \ |
| 2632 | bfloat16x4_t __s0 = __p0; \ |
| 2633 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 2634 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_lane_v(__builtin_bit_cast(int8x8_t, __rev0), __p1, 11)); \ |
| 2635 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 2636 | __ret; \ |
| 2637 | }) |
| 2638 | #define __noswap_splatq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 2639 | bfloat16x8_t __ret; \ |
| 2640 | bfloat16x4_t __s0 = __p0; \ |
| 2641 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_lane_v(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 2642 | __ret; \ |
| 2643 | }) |
| 2644 | #endif |
| 2645 | |
| 2646 | #ifdef __LITTLE_ENDIAN__ |
| 2647 | #define splat_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 2648 | bfloat16x4_t __ret; \ |
| 2649 | bfloat16x4_t __s0 = __p0; \ |
| 2650 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_lane_v(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 2651 | __ret; \ |
| 2652 | }) |
| 2653 | #else |
| 2654 | #define splat_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 2655 | bfloat16x4_t __ret; \ |
| 2656 | bfloat16x4_t __s0 = __p0; \ |
| 2657 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 2658 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_lane_v(__builtin_bit_cast(int8x8_t, __rev0), __p1, 11)); \ |
| 2659 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 2660 | __ret; \ |
| 2661 | }) |
| 2662 | #define __noswap_splat_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 2663 | bfloat16x4_t __ret; \ |
| 2664 | bfloat16x4_t __s0 = __p0; \ |
| 2665 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_lane_v(__builtin_bit_cast(int8x8_t, __s0), __p1, 11)); \ |
| 2666 | __ret; \ |
| 2667 | }) |
| 2668 | #endif |
| 2669 | |
| 3928 | 2670 | #ifdef __LITTLE_ENDIAN__ |
| 3929 | 2671 | #define splat_laneq_p8(__p0, __p1) __extension__ ({ \ |
| 3930 | 2672 | poly8x8_t __ret; \ |
| ... | ... | @@ -4593,6 +3335,54 @@ __ai __attribute__((target("i8mm,neon"))) int32x4_t vusmmlaq_s32(int32x4_t __p0, |
| 4593 | 3335 | }) |
| 4594 | 3336 | #endif |
| 4595 | 3337 | |
| 3338 | #ifdef __LITTLE_ENDIAN__ |
| 3339 | #define splatq_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 3340 | bfloat16x8_t __ret; \ |
| 3341 | bfloat16x8_t __s0 = __p0; \ |
| 3342 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_laneq_v(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 3343 | __ret; \ |
| 3344 | }) |
| 3345 | #else |
| 3346 | #define splatq_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 3347 | bfloat16x8_t __ret; \ |
| 3348 | bfloat16x8_t __s0 = __p0; \ |
| 3349 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 3350 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_laneq_v(__builtin_bit_cast(int8x16_t, __rev0), __p1, 43)); \ |
| 3351 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 3352 | __ret; \ |
| 3353 | }) |
| 3354 | #define __noswap_splatq_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 3355 | bfloat16x8_t __ret; \ |
| 3356 | bfloat16x8_t __s0 = __p0; \ |
| 3357 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_splatq_laneq_v(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 3358 | __ret; \ |
| 3359 | }) |
| 3360 | #endif |
| 3361 | |
| 3362 | #ifdef __LITTLE_ENDIAN__ |
| 3363 | #define splat_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 3364 | bfloat16x4_t __ret; \ |
| 3365 | bfloat16x8_t __s0 = __p0; \ |
| 3366 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_laneq_v(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 3367 | __ret; \ |
| 3368 | }) |
| 3369 | #else |
| 3370 | #define splat_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 3371 | bfloat16x4_t __ret; \ |
| 3372 | bfloat16x8_t __s0 = __p0; \ |
| 3373 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 3374 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_laneq_v(__builtin_bit_cast(int8x16_t, __rev0), __p1, 43)); \ |
| 3375 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 3376 | __ret; \ |
| 3377 | }) |
| 3378 | #define __noswap_splat_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 3379 | bfloat16x4_t __ret; \ |
| 3380 | bfloat16x8_t __s0 = __p0; \ |
| 3381 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_splat_laneq_v(__builtin_bit_cast(int8x16_t, __s0), __p1, 43)); \ |
| 3382 | __ret; \ |
| 3383 | }) |
| 3384 | #endif |
| 3385 | |
| 4596 | 3386 | #ifdef __LITTLE_ENDIAN__ |
| 4597 | 3387 | __ai __attribute__((target("neon"))) uint8x16_t vabdq_u8(uint8x16_t __p0, uint8x16_t __p1) { |
| 4598 | 3388 | uint8x16_t __ret; |
| ... | ... | @@ -8505,6 +7295,28 @@ __ai __attribute__((target("neon"))) int16x8_t __noswap_vcombine_s16(int16x4_t _ |
| 8505 | 7295 | } |
| 8506 | 7296 | #endif |
| 8507 | 7297 | |
| 7298 | #ifdef __LITTLE_ENDIAN__ |
| 7299 | __ai __attribute__((target("neon"))) bfloat16x8_t vcombine_bf16(bfloat16x4_t __p0, bfloat16x4_t __p1) { |
| 7300 | bfloat16x8_t __ret; |
| 7301 | __ret = __builtin_shufflevector(__p0, __p1, 0, 1, 2, 3, 4, 5, 6, 7); |
| 7302 | return __ret; |
| 7303 | } |
| 7304 | #else |
| 7305 | __ai __attribute__((target("neon"))) bfloat16x8_t vcombine_bf16(bfloat16x4_t __p0, bfloat16x4_t __p1) { |
| 7306 | bfloat16x8_t __ret; |
| 7307 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 7308 | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 7309 | __ret = __builtin_shufflevector(__rev0, __rev1, 0, 1, 2, 3, 4, 5, 6, 7); |
| 7310 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 7311 | return __ret; |
| 7312 | } |
| 7313 | __ai __attribute__((target("neon"))) bfloat16x8_t __noswap_vcombine_bf16(bfloat16x4_t __p0, bfloat16x4_t __p1) { |
| 7314 | bfloat16x8_t __ret; |
| 7315 | __ret = __builtin_shufflevector(__p0, __p1, 0, 1, 2, 3, 4, 5, 6, 7); |
| 7316 | return __ret; |
| 7317 | } |
| 7318 | #endif |
| 7319 | |
| 8508 | 7320 | #define vcreate_p8(__p0) __extension__ ({ \ |
| 8509 | 7321 | poly8x8_t __ret; \ |
| 8510 | 7322 | uint64_t __promote = __p0; \ |
| ... | ... | @@ -8577,6 +7389,12 @@ __ai __attribute__((target("neon"))) int16x8_t __noswap_vcombine_s16(int16x4_t _ |
| 8577 | 7389 | __ret = __builtin_bit_cast(int16x4_t, __promote); \ |
| 8578 | 7390 | __ret; \ |
| 8579 | 7391 | }) |
| 7392 | #define vcreate_bf16(__p0) __extension__ ({ \ |
| 7393 | bfloat16x4_t __ret; \ |
| 7394 | uint64_t __promote = __p0; \ |
| 7395 | __ret = __builtin_bit_cast(bfloat16x4_t, __promote); \ |
| 7396 | __ret; \ |
| 7397 | }) |
| 8580 | 7398 | #ifdef __LITTLE_ENDIAN__ |
| 8581 | 7399 | __ai __attribute__((target("neon"))) float32x4_t vcvtq_f32_u32(uint32x4_t __p0) { |
| 8582 | 7400 | float32x4_t __ret; |
| ... | ... | @@ -8850,406 +7668,512 @@ __ai __attribute__((target("neon"))) uint32x2_t vcvt_u32_f32(float32x2_t __p0) { |
| 8850 | 7668 | #endif |
| 8851 | 7669 | |
| 8852 | 7670 | #ifdef __LITTLE_ENDIAN__ |
| 8853 | | #define vdup_lane_p8(__p0_8, __p1_8) __extension__ ({ \ |
| 8854 | | poly8x8_t __ret_8; \ |
| 8855 | | poly8x8_t __s0_8 = __p0_8; \ |
| 8856 | | __ret_8 = splat_lane_p8(__s0_8, __p1_8); \ |
| 7671 | #define vduph_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 7672 | bfloat16_t __ret; \ |
| 7673 | bfloat16x4_t __s0 = __p0; \ |
| 7674 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_lane_bf16(__s0, __p1)); \ |
| 7675 | __ret; \ |
| 7676 | }) |
| 7677 | #else |
| 7678 | #define vduph_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 7679 | bfloat16_t __ret; \ |
| 7680 | bfloat16x4_t __s0 = __p0; \ |
| 7681 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 7682 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_lane_bf16(__rev0, __p1)); \ |
| 7683 | __ret; \ |
| 7684 | }) |
| 7685 | #endif |
| 7686 | |
| 7687 | #ifdef __LITTLE_ENDIAN__ |
| 7688 | #define vdup_lane_p8(__p0_0, __p1_0) __extension__ ({ \ |
| 7689 | poly8x8_t __ret_0; \ |
| 7690 | poly8x8_t __s0_0 = __p0_0; \ |
| 7691 | __ret_0 = splat_lane_p8(__s0_0, __p1_0); \ |
| 7692 | __ret_0; \ |
| 7693 | }) |
| 7694 | #else |
| 7695 | #define vdup_lane_p8(__p0_1, __p1_1) __extension__ ({ \ |
| 7696 | poly8x8_t __ret_1; \ |
| 7697 | poly8x8_t __s0_1 = __p0_1; \ |
| 7698 | poly8x8_t __rev0_1; __rev0_1 = __builtin_shufflevector(__s0_1, __s0_1, __lane_reverse_64_8); \ |
| 7699 | __ret_1 = __noswap_splat_lane_p8(__rev0_1, __p1_1); \ |
| 7700 | __ret_1 = __builtin_shufflevector(__ret_1, __ret_1, __lane_reverse_64_8); \ |
| 7701 | __ret_1; \ |
| 7702 | }) |
| 7703 | #endif |
| 7704 | |
| 7705 | #ifdef __LITTLE_ENDIAN__ |
| 7706 | #define vdup_lane_p16(__p0_2, __p1_2) __extension__ ({ \ |
| 7707 | poly16x4_t __ret_2; \ |
| 7708 | poly16x4_t __s0_2 = __p0_2; \ |
| 7709 | __ret_2 = splat_lane_p16(__s0_2, __p1_2); \ |
| 7710 | __ret_2; \ |
| 7711 | }) |
| 7712 | #else |
| 7713 | #define vdup_lane_p16(__p0_3, __p1_3) __extension__ ({ \ |
| 7714 | poly16x4_t __ret_3; \ |
| 7715 | poly16x4_t __s0_3 = __p0_3; \ |
| 7716 | poly16x4_t __rev0_3; __rev0_3 = __builtin_shufflevector(__s0_3, __s0_3, __lane_reverse_64_16); \ |
| 7717 | __ret_3 = __noswap_splat_lane_p16(__rev0_3, __p1_3); \ |
| 7718 | __ret_3 = __builtin_shufflevector(__ret_3, __ret_3, __lane_reverse_64_16); \ |
| 7719 | __ret_3; \ |
| 7720 | }) |
| 7721 | #endif |
| 7722 | |
| 7723 | #ifdef __LITTLE_ENDIAN__ |
| 7724 | #define vdupq_lane_p8(__p0_4, __p1_4) __extension__ ({ \ |
| 7725 | poly8x16_t __ret_4; \ |
| 7726 | poly8x8_t __s0_4 = __p0_4; \ |
| 7727 | __ret_4 = splatq_lane_p8(__s0_4, __p1_4); \ |
| 7728 | __ret_4; \ |
| 7729 | }) |
| 7730 | #else |
| 7731 | #define vdupq_lane_p8(__p0_5, __p1_5) __extension__ ({ \ |
| 7732 | poly8x16_t __ret_5; \ |
| 7733 | poly8x8_t __s0_5 = __p0_5; \ |
| 7734 | poly8x8_t __rev0_5; __rev0_5 = __builtin_shufflevector(__s0_5, __s0_5, __lane_reverse_64_8); \ |
| 7735 | __ret_5 = __noswap_splatq_lane_p8(__rev0_5, __p1_5); \ |
| 7736 | __ret_5 = __builtin_shufflevector(__ret_5, __ret_5, __lane_reverse_128_8); \ |
| 7737 | __ret_5; \ |
| 7738 | }) |
| 7739 | #endif |
| 7740 | |
| 7741 | #ifdef __LITTLE_ENDIAN__ |
| 7742 | #define vdupq_lane_p16(__p0_6, __p1_6) __extension__ ({ \ |
| 7743 | poly16x8_t __ret_6; \ |
| 7744 | poly16x4_t __s0_6 = __p0_6; \ |
| 7745 | __ret_6 = splatq_lane_p16(__s0_6, __p1_6); \ |
| 7746 | __ret_6; \ |
| 7747 | }) |
| 7748 | #else |
| 7749 | #define vdupq_lane_p16(__p0_7, __p1_7) __extension__ ({ \ |
| 7750 | poly16x8_t __ret_7; \ |
| 7751 | poly16x4_t __s0_7 = __p0_7; \ |
| 7752 | poly16x4_t __rev0_7; __rev0_7 = __builtin_shufflevector(__s0_7, __s0_7, __lane_reverse_64_16); \ |
| 7753 | __ret_7 = __noswap_splatq_lane_p16(__rev0_7, __p1_7); \ |
| 7754 | __ret_7 = __builtin_shufflevector(__ret_7, __ret_7, __lane_reverse_128_16); \ |
| 7755 | __ret_7; \ |
| 7756 | }) |
| 7757 | #endif |
| 7758 | |
| 7759 | #ifdef __LITTLE_ENDIAN__ |
| 7760 | #define vdupq_lane_u8(__p0_8, __p1_8) __extension__ ({ \ |
| 7761 | uint8x16_t __ret_8; \ |
| 7762 | uint8x8_t __s0_8 = __p0_8; \ |
| 7763 | __ret_8 = splatq_lane_u8(__s0_8, __p1_8); \ |
| 8857 | 7764 | __ret_8; \ |
| 8858 | 7765 | }) |
| 8859 | 7766 | #else |
| 8860 | | #define vdup_lane_p8(__p0_9, __p1_9) __extension__ ({ \ |
| 8861 | | poly8x8_t __ret_9; \ |
| 8862 | | poly8x8_t __s0_9 = __p0_9; \ |
| 8863 | | poly8x8_t __rev0_9; __rev0_9 = __builtin_shufflevector(__s0_9, __s0_9, __lane_reverse_64_8); \ |
| 8864 | | __ret_9 = __noswap_splat_lane_p8(__rev0_9, __p1_9); \ |
| 8865 | | __ret_9 = __builtin_shufflevector(__ret_9, __ret_9, __lane_reverse_64_8); \ |
| 7767 | #define vdupq_lane_u8(__p0_9, __p1_9) __extension__ ({ \ |
| 7768 | uint8x16_t __ret_9; \ |
| 7769 | uint8x8_t __s0_9 = __p0_9; \ |
| 7770 | uint8x8_t __rev0_9; __rev0_9 = __builtin_shufflevector(__s0_9, __s0_9, __lane_reverse_64_8); \ |
| 7771 | __ret_9 = __noswap_splatq_lane_u8(__rev0_9, __p1_9); \ |
| 7772 | __ret_9 = __builtin_shufflevector(__ret_9, __ret_9, __lane_reverse_128_8); \ |
| 8866 | 7773 | __ret_9; \ |
| 8867 | 7774 | }) |
| 8868 | 7775 | #endif |
| 8869 | 7776 | |
| 8870 | 7777 | #ifdef __LITTLE_ENDIAN__ |
| 8871 | | #define vdup_lane_p16(__p0_10, __p1_10) __extension__ ({ \ |
| 8872 | | poly16x4_t __ret_10; \ |
| 8873 | | poly16x4_t __s0_10 = __p0_10; \ |
| 8874 | | __ret_10 = splat_lane_p16(__s0_10, __p1_10); \ |
| 7778 | #define vdupq_lane_u32(__p0_10, __p1_10) __extension__ ({ \ |
| 7779 | uint32x4_t __ret_10; \ |
| 7780 | uint32x2_t __s0_10 = __p0_10; \ |
| 7781 | __ret_10 = splatq_lane_u32(__s0_10, __p1_10); \ |
| 8875 | 7782 | __ret_10; \ |
| 8876 | 7783 | }) |
| 8877 | 7784 | #else |
| 8878 | | #define vdup_lane_p16(__p0_11, __p1_11) __extension__ ({ \ |
| 8879 | | poly16x4_t __ret_11; \ |
| 8880 | | poly16x4_t __s0_11 = __p0_11; \ |
| 8881 | | poly16x4_t __rev0_11; __rev0_11 = __builtin_shufflevector(__s0_11, __s0_11, __lane_reverse_64_16); \ |
| 8882 | | __ret_11 = __noswap_splat_lane_p16(__rev0_11, __p1_11); \ |
| 8883 | | __ret_11 = __builtin_shufflevector(__ret_11, __ret_11, __lane_reverse_64_16); \ |
| 7785 | #define vdupq_lane_u32(__p0_11, __p1_11) __extension__ ({ \ |
| 7786 | uint32x4_t __ret_11; \ |
| 7787 | uint32x2_t __s0_11 = __p0_11; \ |
| 7788 | uint32x2_t __rev0_11; __rev0_11 = __builtin_shufflevector(__s0_11, __s0_11, __lane_reverse_64_32); \ |
| 7789 | __ret_11 = __noswap_splatq_lane_u32(__rev0_11, __p1_11); \ |
| 7790 | __ret_11 = __builtin_shufflevector(__ret_11, __ret_11, __lane_reverse_128_32); \ |
| 8884 | 7791 | __ret_11; \ |
| 8885 | 7792 | }) |
| 8886 | 7793 | #endif |
| 8887 | 7794 | |
| 8888 | 7795 | #ifdef __LITTLE_ENDIAN__ |
| 8889 | | #define vdupq_lane_p8(__p0_12, __p1_12) __extension__ ({ \ |
| 8890 | | poly8x16_t __ret_12; \ |
| 8891 | | poly8x8_t __s0_12 = __p0_12; \ |
| 8892 | | __ret_12 = splatq_lane_p8(__s0_12, __p1_12); \ |
| 7796 | #define vdupq_lane_u64(__p0_12, __p1_12) __extension__ ({ \ |
| 7797 | uint64x2_t __ret_12; \ |
| 7798 | uint64x1_t __s0_12 = __p0_12; \ |
| 7799 | __ret_12 = splatq_lane_u64(__s0_12, __p1_12); \ |
| 8893 | 7800 | __ret_12; \ |
| 8894 | 7801 | }) |
| 8895 | 7802 | #else |
| 8896 | | #define vdupq_lane_p8(__p0_13, __p1_13) __extension__ ({ \ |
| 8897 | | poly8x16_t __ret_13; \ |
| 8898 | | poly8x8_t __s0_13 = __p0_13; \ |
| 8899 | | poly8x8_t __rev0_13; __rev0_13 = __builtin_shufflevector(__s0_13, __s0_13, __lane_reverse_64_8); \ |
| 8900 | | __ret_13 = __noswap_splatq_lane_p8(__rev0_13, __p1_13); \ |
| 8901 | | __ret_13 = __builtin_shufflevector(__ret_13, __ret_13, __lane_reverse_128_8); \ |
| 7803 | #define vdupq_lane_u64(__p0_13, __p1_13) __extension__ ({ \ |
| 7804 | uint64x2_t __ret_13; \ |
| 7805 | uint64x1_t __s0_13 = __p0_13; \ |
| 7806 | __ret_13 = __noswap_splatq_lane_u64(__s0_13, __p1_13); \ |
| 7807 | __ret_13 = __builtin_shufflevector(__ret_13, __ret_13, __lane_reverse_128_64); \ |
| 8902 | 7808 | __ret_13; \ |
| 8903 | 7809 | }) |
| 8904 | 7810 | #endif |
| 8905 | 7811 | |
| 8906 | 7812 | #ifdef __LITTLE_ENDIAN__ |
| 8907 | | #define vdupq_lane_p16(__p0_14, __p1_14) __extension__ ({ \ |
| 8908 | | poly16x8_t __ret_14; \ |
| 8909 | | poly16x4_t __s0_14 = __p0_14; \ |
| 8910 | | __ret_14 = splatq_lane_p16(__s0_14, __p1_14); \ |
| 7813 | #define vdupq_lane_u16(__p0_14, __p1_14) __extension__ ({ \ |
| 7814 | uint16x8_t __ret_14; \ |
| 7815 | uint16x4_t __s0_14 = __p0_14; \ |
| 7816 | __ret_14 = splatq_lane_u16(__s0_14, __p1_14); \ |
| 8911 | 7817 | __ret_14; \ |
| 8912 | 7818 | }) |
| 8913 | 7819 | #else |
| 8914 | | #define vdupq_lane_p16(__p0_15, __p1_15) __extension__ ({ \ |
| 8915 | | poly16x8_t __ret_15; \ |
| 8916 | | poly16x4_t __s0_15 = __p0_15; \ |
| 8917 | | poly16x4_t __rev0_15; __rev0_15 = __builtin_shufflevector(__s0_15, __s0_15, __lane_reverse_64_16); \ |
| 8918 | | __ret_15 = __noswap_splatq_lane_p16(__rev0_15, __p1_15); \ |
| 7820 | #define vdupq_lane_u16(__p0_15, __p1_15) __extension__ ({ \ |
| 7821 | uint16x8_t __ret_15; \ |
| 7822 | uint16x4_t __s0_15 = __p0_15; \ |
| 7823 | uint16x4_t __rev0_15; __rev0_15 = __builtin_shufflevector(__s0_15, __s0_15, __lane_reverse_64_16); \ |
| 7824 | __ret_15 = __noswap_splatq_lane_u16(__rev0_15, __p1_15); \ |
| 8919 | 7825 | __ret_15 = __builtin_shufflevector(__ret_15, __ret_15, __lane_reverse_128_16); \ |
| 8920 | 7826 | __ret_15; \ |
| 8921 | 7827 | }) |
| 8922 | 7828 | #endif |
| 8923 | 7829 | |
| 8924 | 7830 | #ifdef __LITTLE_ENDIAN__ |
| 8925 | | #define vdupq_lane_u8(__p0_16, __p1_16) __extension__ ({ \ |
| 8926 | | uint8x16_t __ret_16; \ |
| 8927 | | uint8x8_t __s0_16 = __p0_16; \ |
| 8928 | | __ret_16 = splatq_lane_u8(__s0_16, __p1_16); \ |
| 7831 | #define vdupq_lane_s8(__p0_16, __p1_16) __extension__ ({ \ |
| 7832 | int8x16_t __ret_16; \ |
| 7833 | int8x8_t __s0_16 = __p0_16; \ |
| 7834 | __ret_16 = splatq_lane_s8(__s0_16, __p1_16); \ |
| 8929 | 7835 | __ret_16; \ |
| 8930 | 7836 | }) |
| 8931 | 7837 | #else |
| 8932 | | #define vdupq_lane_u8(__p0_17, __p1_17) __extension__ ({ \ |
| 8933 | | uint8x16_t __ret_17; \ |
| 8934 | | uint8x8_t __s0_17 = __p0_17; \ |
| 8935 | | uint8x8_t __rev0_17; __rev0_17 = __builtin_shufflevector(__s0_17, __s0_17, __lane_reverse_64_8); \ |
| 8936 | | __ret_17 = __noswap_splatq_lane_u8(__rev0_17, __p1_17); \ |
| 7838 | #define vdupq_lane_s8(__p0_17, __p1_17) __extension__ ({ \ |
| 7839 | int8x16_t __ret_17; \ |
| 7840 | int8x8_t __s0_17 = __p0_17; \ |
| 7841 | int8x8_t __rev0_17; __rev0_17 = __builtin_shufflevector(__s0_17, __s0_17, __lane_reverse_64_8); \ |
| 7842 | __ret_17 = __noswap_splatq_lane_s8(__rev0_17, __p1_17); \ |
| 8937 | 7843 | __ret_17 = __builtin_shufflevector(__ret_17, __ret_17, __lane_reverse_128_8); \ |
| 8938 | 7844 | __ret_17; \ |
| 8939 | 7845 | }) |
| 8940 | 7846 | #endif |
| 8941 | 7847 | |
| 8942 | 7848 | #ifdef __LITTLE_ENDIAN__ |
| 8943 | | #define vdupq_lane_u32(__p0_18, __p1_18) __extension__ ({ \ |
| 8944 | | uint32x4_t __ret_18; \ |
| 8945 | | uint32x2_t __s0_18 = __p0_18; \ |
| 8946 | | __ret_18 = splatq_lane_u32(__s0_18, __p1_18); \ |
| 7849 | #define vdupq_lane_f32(__p0_18, __p1_18) __extension__ ({ \ |
| 7850 | float32x4_t __ret_18; \ |
| 7851 | float32x2_t __s0_18 = __p0_18; \ |
| 7852 | __ret_18 = splatq_lane_f32(__s0_18, __p1_18); \ |
| 8947 | 7853 | __ret_18; \ |
| 8948 | 7854 | }) |
| 8949 | 7855 | #else |
| 8950 | | #define vdupq_lane_u32(__p0_19, __p1_19) __extension__ ({ \ |
| 8951 | | uint32x4_t __ret_19; \ |
| 8952 | | uint32x2_t __s0_19 = __p0_19; \ |
| 8953 | | uint32x2_t __rev0_19; __rev0_19 = __builtin_shufflevector(__s0_19, __s0_19, __lane_reverse_64_32); \ |
| 8954 | | __ret_19 = __noswap_splatq_lane_u32(__rev0_19, __p1_19); \ |
| 7856 | #define vdupq_lane_f32(__p0_19, __p1_19) __extension__ ({ \ |
| 7857 | float32x4_t __ret_19; \ |
| 7858 | float32x2_t __s0_19 = __p0_19; \ |
| 7859 | float32x2_t __rev0_19; __rev0_19 = __builtin_shufflevector(__s0_19, __s0_19, __lane_reverse_64_32); \ |
| 7860 | __ret_19 = __noswap_splatq_lane_f32(__rev0_19, __p1_19); \ |
| 8955 | 7861 | __ret_19 = __builtin_shufflevector(__ret_19, __ret_19, __lane_reverse_128_32); \ |
| 8956 | 7862 | __ret_19; \ |
| 8957 | 7863 | }) |
| 8958 | 7864 | #endif |
| 8959 | 7865 | |
| 8960 | 7866 | #ifdef __LITTLE_ENDIAN__ |
| 8961 | | #define vdupq_lane_u64(__p0_20, __p1_20) __extension__ ({ \ |
| 8962 | | uint64x2_t __ret_20; \ |
| 8963 | | uint64x1_t __s0_20 = __p0_20; \ |
| 8964 | | __ret_20 = splatq_lane_u64(__s0_20, __p1_20); \ |
| 7867 | #define vdupq_lane_f16(__p0_20, __p1_20) __extension__ ({ \ |
| 7868 | float16x8_t __ret_20; \ |
| 7869 | float16x4_t __s0_20 = __p0_20; \ |
| 7870 | __ret_20 = splatq_lane_f16(__s0_20, __p1_20); \ |
| 8965 | 7871 | __ret_20; \ |
| 8966 | 7872 | }) |
| 8967 | 7873 | #else |
| 8968 | | #define vdupq_lane_u64(__p0_21, __p1_21) __extension__ ({ \ |
| 8969 | | uint64x2_t __ret_21; \ |
| 8970 | | uint64x1_t __s0_21 = __p0_21; \ |
| 8971 | | __ret_21 = __noswap_splatq_lane_u64(__s0_21, __p1_21); \ |
| 8972 | | __ret_21 = __builtin_shufflevector(__ret_21, __ret_21, __lane_reverse_128_64); \ |
| 7874 | #define vdupq_lane_f16(__p0_21, __p1_21) __extension__ ({ \ |
| 7875 | float16x8_t __ret_21; \ |
| 7876 | float16x4_t __s0_21 = __p0_21; \ |
| 7877 | float16x4_t __rev0_21; __rev0_21 = __builtin_shufflevector(__s0_21, __s0_21, __lane_reverse_64_16); \ |
| 7878 | __ret_21 = __noswap_splatq_lane_f16(__rev0_21, __p1_21); \ |
| 7879 | __ret_21 = __builtin_shufflevector(__ret_21, __ret_21, __lane_reverse_128_16); \ |
| 8973 | 7880 | __ret_21; \ |
| 8974 | 7881 | }) |
| 8975 | 7882 | #endif |
| 8976 | 7883 | |
| 8977 | 7884 | #ifdef __LITTLE_ENDIAN__ |
| 8978 | | #define vdupq_lane_u16(__p0_22, __p1_22) __extension__ ({ \ |
| 8979 | | uint16x8_t __ret_22; \ |
| 8980 | | uint16x4_t __s0_22 = __p0_22; \ |
| 8981 | | __ret_22 = splatq_lane_u16(__s0_22, __p1_22); \ |
| 7885 | #define vdupq_lane_s32(__p0_22, __p1_22) __extension__ ({ \ |
| 7886 | int32x4_t __ret_22; \ |
| 7887 | int32x2_t __s0_22 = __p0_22; \ |
| 7888 | __ret_22 = splatq_lane_s32(__s0_22, __p1_22); \ |
| 8982 | 7889 | __ret_22; \ |
| 8983 | 7890 | }) |
| 8984 | 7891 | #else |
| 8985 | | #define vdupq_lane_u16(__p0_23, __p1_23) __extension__ ({ \ |
| 8986 | | uint16x8_t __ret_23; \ |
| 8987 | | uint16x4_t __s0_23 = __p0_23; \ |
| 8988 | | uint16x4_t __rev0_23; __rev0_23 = __builtin_shufflevector(__s0_23, __s0_23, __lane_reverse_64_16); \ |
| 8989 | | __ret_23 = __noswap_splatq_lane_u16(__rev0_23, __p1_23); \ |
| 8990 | | __ret_23 = __builtin_shufflevector(__ret_23, __ret_23, __lane_reverse_128_16); \ |
| 7892 | #define vdupq_lane_s32(__p0_23, __p1_23) __extension__ ({ \ |
| 7893 | int32x4_t __ret_23; \ |
| 7894 | int32x2_t __s0_23 = __p0_23; \ |
| 7895 | int32x2_t __rev0_23; __rev0_23 = __builtin_shufflevector(__s0_23, __s0_23, __lane_reverse_64_32); \ |
| 7896 | __ret_23 = __noswap_splatq_lane_s32(__rev0_23, __p1_23); \ |
| 7897 | __ret_23 = __builtin_shufflevector(__ret_23, __ret_23, __lane_reverse_128_32); \ |
| 8991 | 7898 | __ret_23; \ |
| 8992 | 7899 | }) |
| 8993 | 7900 | #endif |
| 8994 | 7901 | |
| 8995 | 7902 | #ifdef __LITTLE_ENDIAN__ |
| 8996 | | #define vdupq_lane_s8(__p0_24, __p1_24) __extension__ ({ \ |
| 8997 | | int8x16_t __ret_24; \ |
| 8998 | | int8x8_t __s0_24 = __p0_24; \ |
| 8999 | | __ret_24 = splatq_lane_s8(__s0_24, __p1_24); \ |
| 7903 | #define vdupq_lane_s64(__p0_24, __p1_24) __extension__ ({ \ |
| 7904 | int64x2_t __ret_24; \ |
| 7905 | int64x1_t __s0_24 = __p0_24; \ |
| 7906 | __ret_24 = splatq_lane_s64(__s0_24, __p1_24); \ |
| 9000 | 7907 | __ret_24; \ |
| 9001 | 7908 | }) |
| 9002 | 7909 | #else |
| 9003 | | #define vdupq_lane_s8(__p0_25, __p1_25) __extension__ ({ \ |
| 9004 | | int8x16_t __ret_25; \ |
| 9005 | | int8x8_t __s0_25 = __p0_25; \ |
| 9006 | | int8x8_t __rev0_25; __rev0_25 = __builtin_shufflevector(__s0_25, __s0_25, __lane_reverse_64_8); \ |
| 9007 | | __ret_25 = __noswap_splatq_lane_s8(__rev0_25, __p1_25); \ |
| 9008 | | __ret_25 = __builtin_shufflevector(__ret_25, __ret_25, __lane_reverse_128_8); \ |
| 7910 | #define vdupq_lane_s64(__p0_25, __p1_25) __extension__ ({ \ |
| 7911 | int64x2_t __ret_25; \ |
| 7912 | int64x1_t __s0_25 = __p0_25; \ |
| 7913 | __ret_25 = __noswap_splatq_lane_s64(__s0_25, __p1_25); \ |
| 7914 | __ret_25 = __builtin_shufflevector(__ret_25, __ret_25, __lane_reverse_128_64); \ |
| 9009 | 7915 | __ret_25; \ |
| 9010 | 7916 | }) |
| 9011 | 7917 | #endif |
| 9012 | 7918 | |
| 9013 | 7919 | #ifdef __LITTLE_ENDIAN__ |
| 9014 | | #define vdupq_lane_f32(__p0_26, __p1_26) __extension__ ({ \ |
| 9015 | | float32x4_t __ret_26; \ |
| 9016 | | float32x2_t __s0_26 = __p0_26; \ |
| 9017 | | __ret_26 = splatq_lane_f32(__s0_26, __p1_26); \ |
| 7920 | #define vdupq_lane_s16(__p0_26, __p1_26) __extension__ ({ \ |
| 7921 | int16x8_t __ret_26; \ |
| 7922 | int16x4_t __s0_26 = __p0_26; \ |
| 7923 | __ret_26 = splatq_lane_s16(__s0_26, __p1_26); \ |
| 9018 | 7924 | __ret_26; \ |
| 9019 | 7925 | }) |
| 9020 | 7926 | #else |
| 9021 | | #define vdupq_lane_f32(__p0_27, __p1_27) __extension__ ({ \ |
| 9022 | | float32x4_t __ret_27; \ |
| 9023 | | float32x2_t __s0_27 = __p0_27; \ |
| 9024 | | float32x2_t __rev0_27; __rev0_27 = __builtin_shufflevector(__s0_27, __s0_27, __lane_reverse_64_32); \ |
| 9025 | | __ret_27 = __noswap_splatq_lane_f32(__rev0_27, __p1_27); \ |
| 9026 | | __ret_27 = __builtin_shufflevector(__ret_27, __ret_27, __lane_reverse_128_32); \ |
| 7927 | #define vdupq_lane_s16(__p0_27, __p1_27) __extension__ ({ \ |
| 7928 | int16x8_t __ret_27; \ |
| 7929 | int16x4_t __s0_27 = __p0_27; \ |
| 7930 | int16x4_t __rev0_27; __rev0_27 = __builtin_shufflevector(__s0_27, __s0_27, __lane_reverse_64_16); \ |
| 7931 | __ret_27 = __noswap_splatq_lane_s16(__rev0_27, __p1_27); \ |
| 7932 | __ret_27 = __builtin_shufflevector(__ret_27, __ret_27, __lane_reverse_128_16); \ |
| 9027 | 7933 | __ret_27; \ |
| 9028 | 7934 | }) |
| 9029 | 7935 | #endif |
| 9030 | 7936 | |
| 9031 | 7937 | #ifdef __LITTLE_ENDIAN__ |
| 9032 | | #define vdupq_lane_f16(__p0_28, __p1_28) __extension__ ({ \ |
| 9033 | | float16x8_t __ret_28; \ |
| 9034 | | float16x4_t __s0_28 = __p0_28; \ |
| 9035 | | __ret_28 = splatq_lane_f16(__s0_28, __p1_28); \ |
| 7938 | #define vdup_lane_u8(__p0_28, __p1_28) __extension__ ({ \ |
| 7939 | uint8x8_t __ret_28; \ |
| 7940 | uint8x8_t __s0_28 = __p0_28; \ |
| 7941 | __ret_28 = splat_lane_u8(__s0_28, __p1_28); \ |
| 9036 | 7942 | __ret_28; \ |
| 9037 | 7943 | }) |
| 9038 | 7944 | #else |
| 9039 | | #define vdupq_lane_f16(__p0_29, __p1_29) __extension__ ({ \ |
| 9040 | | float16x8_t __ret_29; \ |
| 9041 | | float16x4_t __s0_29 = __p0_29; \ |
| 9042 | | float16x4_t __rev0_29; __rev0_29 = __builtin_shufflevector(__s0_29, __s0_29, __lane_reverse_64_16); \ |
| 9043 | | __ret_29 = __noswap_splatq_lane_f16(__rev0_29, __p1_29); \ |
| 9044 | | __ret_29 = __builtin_shufflevector(__ret_29, __ret_29, __lane_reverse_128_16); \ |
| 7945 | #define vdup_lane_u8(__p0_29, __p1_29) __extension__ ({ \ |
| 7946 | uint8x8_t __ret_29; \ |
| 7947 | uint8x8_t __s0_29 = __p0_29; \ |
| 7948 | uint8x8_t __rev0_29; __rev0_29 = __builtin_shufflevector(__s0_29, __s0_29, __lane_reverse_64_8); \ |
| 7949 | __ret_29 = __noswap_splat_lane_u8(__rev0_29, __p1_29); \ |
| 7950 | __ret_29 = __builtin_shufflevector(__ret_29, __ret_29, __lane_reverse_64_8); \ |
| 9045 | 7951 | __ret_29; \ |
| 9046 | 7952 | }) |
| 9047 | 7953 | #endif |
| 9048 | 7954 | |
| 9049 | 7955 | #ifdef __LITTLE_ENDIAN__ |
| 9050 | | #define vdupq_lane_s32(__p0_30, __p1_30) __extension__ ({ \ |
| 9051 | | int32x4_t __ret_30; \ |
| 9052 | | int32x2_t __s0_30 = __p0_30; \ |
| 9053 | | __ret_30 = splatq_lane_s32(__s0_30, __p1_30); \ |
| 7956 | #define vdup_lane_u32(__p0_30, __p1_30) __extension__ ({ \ |
| 7957 | uint32x2_t __ret_30; \ |
| 7958 | uint32x2_t __s0_30 = __p0_30; \ |
| 7959 | __ret_30 = splat_lane_u32(__s0_30, __p1_30); \ |
| 9054 | 7960 | __ret_30; \ |
| 9055 | 7961 | }) |
| 9056 | 7962 | #else |
| 9057 | | #define vdupq_lane_s32(__p0_31, __p1_31) __extension__ ({ \ |
| 9058 | | int32x4_t __ret_31; \ |
| 9059 | | int32x2_t __s0_31 = __p0_31; \ |
| 9060 | | int32x2_t __rev0_31; __rev0_31 = __builtin_shufflevector(__s0_31, __s0_31, __lane_reverse_64_32); \ |
| 9061 | | __ret_31 = __noswap_splatq_lane_s32(__rev0_31, __p1_31); \ |
| 9062 | | __ret_31 = __builtin_shufflevector(__ret_31, __ret_31, __lane_reverse_128_32); \ |
| 7963 | #define vdup_lane_u32(__p0_31, __p1_31) __extension__ ({ \ |
| 7964 | uint32x2_t __ret_31; \ |
| 7965 | uint32x2_t __s0_31 = __p0_31; \ |
| 7966 | uint32x2_t __rev0_31; __rev0_31 = __builtin_shufflevector(__s0_31, __s0_31, __lane_reverse_64_32); \ |
| 7967 | __ret_31 = __noswap_splat_lane_u32(__rev0_31, __p1_31); \ |
| 7968 | __ret_31 = __builtin_shufflevector(__ret_31, __ret_31, __lane_reverse_64_32); \ |
| 9063 | 7969 | __ret_31; \ |
| 9064 | 7970 | }) |
| 9065 | 7971 | #endif |
| 9066 | 7972 | |
| 9067 | | #ifdef __LITTLE_ENDIAN__ |
| 9068 | | #define vdupq_lane_s64(__p0_32, __p1_32) __extension__ ({ \ |
| 9069 | | int64x2_t __ret_32; \ |
| 9070 | | int64x1_t __s0_32 = __p0_32; \ |
| 9071 | | __ret_32 = splatq_lane_s64(__s0_32, __p1_32); \ |
| 7973 | #define vdup_lane_u64(__p0_32, __p1_32) __extension__ ({ \ |
| 7974 | uint64x1_t __ret_32; \ |
| 7975 | uint64x1_t __s0_32 = __p0_32; \ |
| 7976 | __ret_32 = splat_lane_u64(__s0_32, __p1_32); \ |
| 9072 | 7977 | __ret_32; \ |
| 9073 | 7978 | }) |
| 9074 | | #else |
| 9075 | | #define vdupq_lane_s64(__p0_33, __p1_33) __extension__ ({ \ |
| 9076 | | int64x2_t __ret_33; \ |
| 9077 | | int64x1_t __s0_33 = __p0_33; \ |
| 9078 | | __ret_33 = __noswap_splatq_lane_s64(__s0_33, __p1_33); \ |
| 9079 | | __ret_33 = __builtin_shufflevector(__ret_33, __ret_33, __lane_reverse_128_64); \ |
| 7979 | #ifdef __LITTLE_ENDIAN__ |
| 7980 | #define vdup_lane_u16(__p0_33, __p1_33) __extension__ ({ \ |
| 7981 | uint16x4_t __ret_33; \ |
| 7982 | uint16x4_t __s0_33 = __p0_33; \ |
| 7983 | __ret_33 = splat_lane_u16(__s0_33, __p1_33); \ |
| 9080 | 7984 | __ret_33; \ |
| 9081 | 7985 | }) |
| 7986 | #else |
| 7987 | #define vdup_lane_u16(__p0_34, __p1_34) __extension__ ({ \ |
| 7988 | uint16x4_t __ret_34; \ |
| 7989 | uint16x4_t __s0_34 = __p0_34; \ |
| 7990 | uint16x4_t __rev0_34; __rev0_34 = __builtin_shufflevector(__s0_34, __s0_34, __lane_reverse_64_16); \ |
| 7991 | __ret_34 = __noswap_splat_lane_u16(__rev0_34, __p1_34); \ |
| 7992 | __ret_34 = __builtin_shufflevector(__ret_34, __ret_34, __lane_reverse_64_16); \ |
| 7993 | __ret_34; \ |
| 7994 | }) |
| 9082 | 7995 | #endif |
| 9083 | 7996 | |
| 9084 | 7997 | #ifdef __LITTLE_ENDIAN__ |
| 9085 | | #define vdupq_lane_s16(__p0_34, __p1_34) __extension__ ({ \ |
| 9086 | | int16x8_t __ret_34; \ |
| 9087 | | int16x4_t __s0_34 = __p0_34; \ |
| 9088 | | __ret_34 = splatq_lane_s16(__s0_34, __p1_34); \ |
| 9089 | | __ret_34; \ |
| 7998 | #define vdup_lane_s8(__p0_35, __p1_35) __extension__ ({ \ |
| 7999 | int8x8_t __ret_35; \ |
| 8000 | int8x8_t __s0_35 = __p0_35; \ |
| 8001 | __ret_35 = splat_lane_s8(__s0_35, __p1_35); \ |
| 8002 | __ret_35; \ |
| 9090 | 8003 | }) |
| 9091 | 8004 | #else |
| 9092 | | #define vdupq_lane_s16(__p0_35, __p1_35) __extension__ ({ \ |
| 9093 | | int16x8_t __ret_35; \ |
| 9094 | | int16x4_t __s0_35 = __p0_35; \ |
| 9095 | | int16x4_t __rev0_35; __rev0_35 = __builtin_shufflevector(__s0_35, __s0_35, __lane_reverse_64_16); \ |
| 9096 | | __ret_35 = __noswap_splatq_lane_s16(__rev0_35, __p1_35); \ |
| 9097 | | __ret_35 = __builtin_shufflevector(__ret_35, __ret_35, __lane_reverse_128_16); \ |
| 9098 | | __ret_35; \ |
| 8005 | #define vdup_lane_s8(__p0_36, __p1_36) __extension__ ({ \ |
| 8006 | int8x8_t __ret_36; \ |
| 8007 | int8x8_t __s0_36 = __p0_36; \ |
| 8008 | int8x8_t __rev0_36; __rev0_36 = __builtin_shufflevector(__s0_36, __s0_36, __lane_reverse_64_8); \ |
| 8009 | __ret_36 = __noswap_splat_lane_s8(__rev0_36, __p1_36); \ |
| 8010 | __ret_36 = __builtin_shufflevector(__ret_36, __ret_36, __lane_reverse_64_8); \ |
| 8011 | __ret_36; \ |
| 9099 | 8012 | }) |
| 9100 | 8013 | #endif |
| 9101 | 8014 | |
| 9102 | 8015 | #ifdef __LITTLE_ENDIAN__ |
| 9103 | | #define vdup_lane_u8(__p0_36, __p1_36) __extension__ ({ \ |
| 9104 | | uint8x8_t __ret_36; \ |
| 9105 | | uint8x8_t __s0_36 = __p0_36; \ |
| 9106 | | __ret_36 = splat_lane_u8(__s0_36, __p1_36); \ |
| 9107 | | __ret_36; \ |
| 8016 | #define vdup_lane_f32(__p0_37, __p1_37) __extension__ ({ \ |
| 8017 | float32x2_t __ret_37; \ |
| 8018 | float32x2_t __s0_37 = __p0_37; \ |
| 8019 | __ret_37 = splat_lane_f32(__s0_37, __p1_37); \ |
| 8020 | __ret_37; \ |
| 9108 | 8021 | }) |
| 9109 | 8022 | #else |
| 9110 | | #define vdup_lane_u8(__p0_37, __p1_37) __extension__ ({ \ |
| 9111 | | uint8x8_t __ret_37; \ |
| 9112 | | uint8x8_t __s0_37 = __p0_37; \ |
| 9113 | | uint8x8_t __rev0_37; __rev0_37 = __builtin_shufflevector(__s0_37, __s0_37, __lane_reverse_64_8); \ |
| 9114 | | __ret_37 = __noswap_splat_lane_u8(__rev0_37, __p1_37); \ |
| 9115 | | __ret_37 = __builtin_shufflevector(__ret_37, __ret_37, __lane_reverse_64_8); \ |
| 9116 | | __ret_37; \ |
| 8023 | #define vdup_lane_f32(__p0_38, __p1_38) __extension__ ({ \ |
| 8024 | float32x2_t __ret_38; \ |
| 8025 | float32x2_t __s0_38 = __p0_38; \ |
| 8026 | float32x2_t __rev0_38; __rev0_38 = __builtin_shufflevector(__s0_38, __s0_38, __lane_reverse_64_32); \ |
| 8027 | __ret_38 = __noswap_splat_lane_f32(__rev0_38, __p1_38); \ |
| 8028 | __ret_38 = __builtin_shufflevector(__ret_38, __ret_38, __lane_reverse_64_32); \ |
| 8029 | __ret_38; \ |
| 9117 | 8030 | }) |
| 9118 | 8031 | #endif |
| 9119 | 8032 | |
| 9120 | 8033 | #ifdef __LITTLE_ENDIAN__ |
| 9121 | | #define vdup_lane_u32(__p0_38, __p1_38) __extension__ ({ \ |
| 9122 | | uint32x2_t __ret_38; \ |
| 9123 | | uint32x2_t __s0_38 = __p0_38; \ |
| 9124 | | __ret_38 = splat_lane_u32(__s0_38, __p1_38); \ |
| 9125 | | __ret_38; \ |
| 8034 | #define vdup_lane_f16(__p0_39, __p1_39) __extension__ ({ \ |
| 8035 | float16x4_t __ret_39; \ |
| 8036 | float16x4_t __s0_39 = __p0_39; \ |
| 8037 | __ret_39 = splat_lane_f16(__s0_39, __p1_39); \ |
| 8038 | __ret_39; \ |
| 9126 | 8039 | }) |
| 9127 | 8040 | #else |
| 9128 | | #define vdup_lane_u32(__p0_39, __p1_39) __extension__ ({ \ |
| 9129 | | uint32x2_t __ret_39; \ |
| 9130 | | uint32x2_t __s0_39 = __p0_39; \ |
| 9131 | | uint32x2_t __rev0_39; __rev0_39 = __builtin_shufflevector(__s0_39, __s0_39, __lane_reverse_64_32); \ |
| 9132 | | __ret_39 = __noswap_splat_lane_u32(__rev0_39, __p1_39); \ |
| 9133 | | __ret_39 = __builtin_shufflevector(__ret_39, __ret_39, __lane_reverse_64_32); \ |
| 9134 | | __ret_39; \ |
| 8041 | #define vdup_lane_f16(__p0_40, __p1_40) __extension__ ({ \ |
| 8042 | float16x4_t __ret_40; \ |
| 8043 | float16x4_t __s0_40 = __p0_40; \ |
| 8044 | float16x4_t __rev0_40; __rev0_40 = __builtin_shufflevector(__s0_40, __s0_40, __lane_reverse_64_16); \ |
| 8045 | __ret_40 = __noswap_splat_lane_f16(__rev0_40, __p1_40); \ |
| 8046 | __ret_40 = __builtin_shufflevector(__ret_40, __ret_40, __lane_reverse_64_16); \ |
| 8047 | __ret_40; \ |
| 9135 | 8048 | }) |
| 9136 | 8049 | #endif |
| 9137 | 8050 | |
| 9138 | | #define vdup_lane_u64(__p0_40, __p1_40) __extension__ ({ \ |
| 9139 | | uint64x1_t __ret_40; \ |
| 9140 | | uint64x1_t __s0_40 = __p0_40; \ |
| 9141 | | __ret_40 = splat_lane_u64(__s0_40, __p1_40); \ |
| 9142 | | __ret_40; \ |
| 9143 | | }) |
| 9144 | 8051 | #ifdef __LITTLE_ENDIAN__ |
| 9145 | | #define vdup_lane_u16(__p0_41, __p1_41) __extension__ ({ \ |
| 9146 | | uint16x4_t __ret_41; \ |
| 9147 | | uint16x4_t __s0_41 = __p0_41; \ |
| 9148 | | __ret_41 = splat_lane_u16(__s0_41, __p1_41); \ |
| 8052 | #define vdup_lane_s32(__p0_41, __p1_41) __extension__ ({ \ |
| 8053 | int32x2_t __ret_41; \ |
| 8054 | int32x2_t __s0_41 = __p0_41; \ |
| 8055 | __ret_41 = splat_lane_s32(__s0_41, __p1_41); \ |
| 9149 | 8056 | __ret_41; \ |
| 9150 | 8057 | }) |
| 9151 | 8058 | #else |
| 9152 | | #define vdup_lane_u16(__p0_42, __p1_42) __extension__ ({ \ |
| 9153 | | uint16x4_t __ret_42; \ |
| 9154 | | uint16x4_t __s0_42 = __p0_42; \ |
| 9155 | | uint16x4_t __rev0_42; __rev0_42 = __builtin_shufflevector(__s0_42, __s0_42, __lane_reverse_64_16); \ |
| 9156 | | __ret_42 = __noswap_splat_lane_u16(__rev0_42, __p1_42); \ |
| 9157 | | __ret_42 = __builtin_shufflevector(__ret_42, __ret_42, __lane_reverse_64_16); \ |
| 8059 | #define vdup_lane_s32(__p0_42, __p1_42) __extension__ ({ \ |
| 8060 | int32x2_t __ret_42; \ |
| 8061 | int32x2_t __s0_42 = __p0_42; \ |
| 8062 | int32x2_t __rev0_42; __rev0_42 = __builtin_shufflevector(__s0_42, __s0_42, __lane_reverse_64_32); \ |
| 8063 | __ret_42 = __noswap_splat_lane_s32(__rev0_42, __p1_42); \ |
| 8064 | __ret_42 = __builtin_shufflevector(__ret_42, __ret_42, __lane_reverse_64_32); \ |
| 9158 | 8065 | __ret_42; \ |
| 9159 | 8066 | }) |
| 9160 | 8067 | #endif |
| 9161 | 8068 | |
| 9162 | | #ifdef __LITTLE_ENDIAN__ |
| 9163 | | #define vdup_lane_s8(__p0_43, __p1_43) __extension__ ({ \ |
| 9164 | | int8x8_t __ret_43; \ |
| 9165 | | int8x8_t __s0_43 = __p0_43; \ |
| 9166 | | __ret_43 = splat_lane_s8(__s0_43, __p1_43); \ |
| 8069 | #define vdup_lane_s64(__p0_43, __p1_43) __extension__ ({ \ |
| 8070 | int64x1_t __ret_43; \ |
| 8071 | int64x1_t __s0_43 = __p0_43; \ |
| 8072 | __ret_43 = splat_lane_s64(__s0_43, __p1_43); \ |
| 9167 | 8073 | __ret_43; \ |
| 9168 | 8074 | }) |
| 9169 | | #else |
| 9170 | | #define vdup_lane_s8(__p0_44, __p1_44) __extension__ ({ \ |
| 9171 | | int8x8_t __ret_44; \ |
| 9172 | | int8x8_t __s0_44 = __p0_44; \ |
| 9173 | | int8x8_t __rev0_44; __rev0_44 = __builtin_shufflevector(__s0_44, __s0_44, __lane_reverse_64_8); \ |
| 9174 | | __ret_44 = __noswap_splat_lane_s8(__rev0_44, __p1_44); \ |
| 9175 | | __ret_44 = __builtin_shufflevector(__ret_44, __ret_44, __lane_reverse_64_8); \ |
| 8075 | #ifdef __LITTLE_ENDIAN__ |
| 8076 | #define vdup_lane_s16(__p0_44, __p1_44) __extension__ ({ \ |
| 8077 | int16x4_t __ret_44; \ |
| 8078 | int16x4_t __s0_44 = __p0_44; \ |
| 8079 | __ret_44 = splat_lane_s16(__s0_44, __p1_44); \ |
| 9176 | 8080 | __ret_44; \ |
| 9177 | 8081 | }) |
| 8082 | #else |
| 8083 | #define vdup_lane_s16(__p0_45, __p1_45) __extension__ ({ \ |
| 8084 | int16x4_t __ret_45; \ |
| 8085 | int16x4_t __s0_45 = __p0_45; \ |
| 8086 | int16x4_t __rev0_45; __rev0_45 = __builtin_shufflevector(__s0_45, __s0_45, __lane_reverse_64_16); \ |
| 8087 | __ret_45 = __noswap_splat_lane_s16(__rev0_45, __p1_45); \ |
| 8088 | __ret_45 = __builtin_shufflevector(__ret_45, __ret_45, __lane_reverse_64_16); \ |
| 8089 | __ret_45; \ |
| 8090 | }) |
| 9178 | 8091 | #endif |
| 9179 | 8092 | |
| 9180 | 8093 | #ifdef __LITTLE_ENDIAN__ |
| 9181 | | #define vdup_lane_f32(__p0_45, __p1_45) __extension__ ({ \ |
| 9182 | | float32x2_t __ret_45; \ |
| 9183 | | float32x2_t __s0_45 = __p0_45; \ |
| 9184 | | __ret_45 = splat_lane_f32(__s0_45, __p1_45); \ |
| 9185 | | __ret_45; \ |
| 8094 | #define vdupq_lane_bf16(__p0_46, __p1_46) __extension__ ({ \ |
| 8095 | bfloat16x8_t __ret_46; \ |
| 8096 | bfloat16x4_t __s0_46 = __p0_46; \ |
| 8097 | __ret_46 = splatq_lane_bf16(__s0_46, __p1_46); \ |
| 8098 | __ret_46; \ |
| 9186 | 8099 | }) |
| 9187 | 8100 | #else |
| 9188 | | #define vdup_lane_f32(__p0_46, __p1_46) __extension__ ({ \ |
| 9189 | | float32x2_t __ret_46; \ |
| 9190 | | float32x2_t __s0_46 = __p0_46; \ |
| 9191 | | float32x2_t __rev0_46; __rev0_46 = __builtin_shufflevector(__s0_46, __s0_46, __lane_reverse_64_32); \ |
| 9192 | | __ret_46 = __noswap_splat_lane_f32(__rev0_46, __p1_46); \ |
| 9193 | | __ret_46 = __builtin_shufflevector(__ret_46, __ret_46, __lane_reverse_64_32); \ |
| 9194 | | __ret_46; \ |
| 8101 | #define vdupq_lane_bf16(__p0_47, __p1_47) __extension__ ({ \ |
| 8102 | bfloat16x8_t __ret_47; \ |
| 8103 | bfloat16x4_t __s0_47 = __p0_47; \ |
| 8104 | bfloat16x4_t __rev0_47; __rev0_47 = __builtin_shufflevector(__s0_47, __s0_47, __lane_reverse_64_16); \ |
| 8105 | __ret_47 = __noswap_splatq_lane_bf16(__rev0_47, __p1_47); \ |
| 8106 | __ret_47 = __builtin_shufflevector(__ret_47, __ret_47, __lane_reverse_128_16); \ |
| 8107 | __ret_47; \ |
| 9195 | 8108 | }) |
| 9196 | 8109 | #endif |
| 9197 | 8110 | |
| 9198 | 8111 | #ifdef __LITTLE_ENDIAN__ |
| 9199 | | #define vdup_lane_f16(__p0_47, __p1_47) __extension__ ({ \ |
| 9200 | | float16x4_t __ret_47; \ |
| 9201 | | float16x4_t __s0_47 = __p0_47; \ |
| 9202 | | __ret_47 = splat_lane_f16(__s0_47, __p1_47); \ |
| 9203 | | __ret_47; \ |
| 8112 | #define vdup_lane_bf16(__p0_48, __p1_48) __extension__ ({ \ |
| 8113 | bfloat16x4_t __ret_48; \ |
| 8114 | bfloat16x4_t __s0_48 = __p0_48; \ |
| 8115 | __ret_48 = splat_lane_bf16(__s0_48, __p1_48); \ |
| 8116 | __ret_48; \ |
| 9204 | 8117 | }) |
| 9205 | 8118 | #else |
| 9206 | | #define vdup_lane_f16(__p0_48, __p1_48) __extension__ ({ \ |
| 9207 | | float16x4_t __ret_48; \ |
| 9208 | | float16x4_t __s0_48 = __p0_48; \ |
| 9209 | | float16x4_t __rev0_48; __rev0_48 = __builtin_shufflevector(__s0_48, __s0_48, __lane_reverse_64_16); \ |
| 9210 | | __ret_48 = __noswap_splat_lane_f16(__rev0_48, __p1_48); \ |
| 9211 | | __ret_48 = __builtin_shufflevector(__ret_48, __ret_48, __lane_reverse_64_16); \ |
| 9212 | | __ret_48; \ |
| 8119 | #define vdup_lane_bf16(__p0_49, __p1_49) __extension__ ({ \ |
| 8120 | bfloat16x4_t __ret_49; \ |
| 8121 | bfloat16x4_t __s0_49 = __p0_49; \ |
| 8122 | bfloat16x4_t __rev0_49; __rev0_49 = __builtin_shufflevector(__s0_49, __s0_49, __lane_reverse_64_16); \ |
| 8123 | __ret_49 = __noswap_splat_lane_bf16(__rev0_49, __p1_49); \ |
| 8124 | __ret_49 = __builtin_shufflevector(__ret_49, __ret_49, __lane_reverse_64_16); \ |
| 8125 | __ret_49; \ |
| 9213 | 8126 | }) |
| 9214 | 8127 | #endif |
| 9215 | 8128 | |
| 9216 | 8129 | #ifdef __LITTLE_ENDIAN__ |
| 9217 | | #define vdup_lane_s32(__p0_49, __p1_49) __extension__ ({ \ |
| 9218 | | int32x2_t __ret_49; \ |
| 9219 | | int32x2_t __s0_49 = __p0_49; \ |
| 9220 | | __ret_49 = splat_lane_s32(__s0_49, __p1_49); \ |
| 9221 | | __ret_49; \ |
| 8130 | #define vduph_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 8131 | bfloat16_t __ret; \ |
| 8132 | bfloat16x8_t __s0 = __p0; \ |
| 8133 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_laneq_bf16(__s0, __p1)); \ |
| 8134 | __ret; \ |
| 9222 | 8135 | }) |
| 9223 | 8136 | #else |
| 9224 | | #define vdup_lane_s32(__p0_50, __p1_50) __extension__ ({ \ |
| 9225 | | int32x2_t __ret_50; \ |
| 9226 | | int32x2_t __s0_50 = __p0_50; \ |
| 9227 | | int32x2_t __rev0_50; __rev0_50 = __builtin_shufflevector(__s0_50, __s0_50, __lane_reverse_64_32); \ |
| 9228 | | __ret_50 = __noswap_splat_lane_s32(__rev0_50, __p1_50); \ |
| 9229 | | __ret_50 = __builtin_shufflevector(__ret_50, __ret_50, __lane_reverse_64_32); \ |
| 9230 | | __ret_50; \ |
| 8137 | #define vduph_laneq_bf16(__p0, __p1) __extension__ ({ \ |
| 8138 | bfloat16_t __ret; \ |
| 8139 | bfloat16x8_t __s0 = __p0; \ |
| 8140 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 8141 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vduph_laneq_bf16(__rev0, __p1)); \ |
| 8142 | __ret; \ |
| 9231 | 8143 | }) |
| 9232 | 8144 | #endif |
| 9233 | 8145 | |
| 9234 | | #define vdup_lane_s64(__p0_51, __p1_51) __extension__ ({ \ |
| 9235 | | int64x1_t __ret_51; \ |
| 9236 | | int64x1_t __s0_51 = __p0_51; \ |
| 9237 | | __ret_51 = splat_lane_s64(__s0_51, __p1_51); \ |
| 8146 | #ifdef __LITTLE_ENDIAN__ |
| 8147 | #define vdupq_laneq_bf16(__p0_50, __p1_50) __extension__ ({ \ |
| 8148 | bfloat16x8_t __ret_50; \ |
| 8149 | bfloat16x8_t __s0_50 = __p0_50; \ |
| 8150 | __ret_50 = splatq_laneq_bf16(__s0_50, __p1_50); \ |
| 8151 | __ret_50; \ |
| 8152 | }) |
| 8153 | #else |
| 8154 | #define vdupq_laneq_bf16(__p0_51, __p1_51) __extension__ ({ \ |
| 8155 | bfloat16x8_t __ret_51; \ |
| 8156 | bfloat16x8_t __s0_51 = __p0_51; \ |
| 8157 | bfloat16x8_t __rev0_51; __rev0_51 = __builtin_shufflevector(__s0_51, __s0_51, __lane_reverse_128_16); \ |
| 8158 | __ret_51 = __noswap_splatq_laneq_bf16(__rev0_51, __p1_51); \ |
| 8159 | __ret_51 = __builtin_shufflevector(__ret_51, __ret_51, __lane_reverse_128_16); \ |
| 9238 | 8160 | __ret_51; \ |
| 9239 | 8161 | }) |
| 8162 | #endif |
| 8163 | |
| 9240 | 8164 | #ifdef __LITTLE_ENDIAN__ |
| 9241 | | #define vdup_lane_s16(__p0_52, __p1_52) __extension__ ({ \ |
| 9242 | | int16x4_t __ret_52; \ |
| 9243 | | int16x4_t __s0_52 = __p0_52; \ |
| 9244 | | __ret_52 = splat_lane_s16(__s0_52, __p1_52); \ |
| 8165 | #define vdup_laneq_bf16(__p0_52, __p1_52) __extension__ ({ \ |
| 8166 | bfloat16x4_t __ret_52; \ |
| 8167 | bfloat16x8_t __s0_52 = __p0_52; \ |
| 8168 | __ret_52 = splat_laneq_bf16(__s0_52, __p1_52); \ |
| 9245 | 8169 | __ret_52; \ |
| 9246 | 8170 | }) |
| 9247 | 8171 | #else |
| 9248 | | #define vdup_lane_s16(__p0_53, __p1_53) __extension__ ({ \ |
| 9249 | | int16x4_t __ret_53; \ |
| 9250 | | int16x4_t __s0_53 = __p0_53; \ |
| 9251 | | int16x4_t __rev0_53; __rev0_53 = __builtin_shufflevector(__s0_53, __s0_53, __lane_reverse_64_16); \ |
| 9252 | | __ret_53 = __noswap_splat_lane_s16(__rev0_53, __p1_53); \ |
| 8172 | #define vdup_laneq_bf16(__p0_53, __p1_53) __extension__ ({ \ |
| 8173 | bfloat16x4_t __ret_53; \ |
| 8174 | bfloat16x8_t __s0_53 = __p0_53; \ |
| 8175 | bfloat16x8_t __rev0_53; __rev0_53 = __builtin_shufflevector(__s0_53, __s0_53, __lane_reverse_128_16); \ |
| 8176 | __ret_53 = __noswap_splat_laneq_bf16(__rev0_53, __p1_53); \ |
| 9253 | 8177 | __ret_53 = __builtin_shufflevector(__ret_53, __ret_53, __lane_reverse_64_16); \ |
| 9254 | 8178 | __ret_53; \ |
| 9255 | 8179 | }) |
| ... | ... | @@ -9599,6 +8523,36 @@ __ai __attribute__((target("neon"))) int16x4_t vdup_n_s16(int16_t __p0) { |
| 9599 | 8523 | } |
| 9600 | 8524 | #endif |
| 9601 | 8525 | |
| 8526 | #ifdef __LITTLE_ENDIAN__ |
| 8527 | __ai __attribute__((target("neon"))) bfloat16x8_t vdupq_n_bf16(bfloat16_t __p0) { |
| 8528 | bfloat16x8_t __ret; |
| 8529 | __ret = (bfloat16x8_t) {__p0, __p0, __p0, __p0, __p0, __p0, __p0, __p0}; |
| 8530 | return __ret; |
| 8531 | } |
| 8532 | #else |
| 8533 | __ai __attribute__((target("neon"))) bfloat16x8_t vdupq_n_bf16(bfloat16_t __p0) { |
| 8534 | bfloat16x8_t __ret; |
| 8535 | __ret = (bfloat16x8_t) {__p0, __p0, __p0, __p0, __p0, __p0, __p0, __p0}; |
| 8536 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 8537 | return __ret; |
| 8538 | } |
| 8539 | #endif |
| 8540 | |
| 8541 | #ifdef __LITTLE_ENDIAN__ |
| 8542 | __ai __attribute__((target("neon"))) bfloat16x4_t vdup_n_bf16(bfloat16_t __p0) { |
| 8543 | bfloat16x4_t __ret; |
| 8544 | __ret = (bfloat16x4_t) {__p0, __p0, __p0, __p0}; |
| 8545 | return __ret; |
| 8546 | } |
| 8547 | #else |
| 8548 | __ai __attribute__((target("neon"))) bfloat16x4_t vdup_n_bf16(bfloat16_t __p0) { |
| 8549 | bfloat16x4_t __ret; |
| 8550 | __ret = (bfloat16x4_t) {__p0, __p0, __p0, __p0}; |
| 8551 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 8552 | return __ret; |
| 8553 | } |
| 8554 | #endif |
| 8555 | |
| 9602 | 8556 | #ifdef __LITTLE_ENDIAN__ |
| 9603 | 8557 | __ai __attribute__((target("neon"))) uint8x16_t veorq_u8(uint8x16_t __p0, uint8x16_t __p1) { |
| 9604 | 8558 | uint8x16_t __ret; |
| ... | ... | @@ -10558,6 +9512,27 @@ __ai __attribute__((target("neon"))) int16x4_t __noswap_vget_high_s16(int16x8_t |
| 10558 | 9512 | } |
| 10559 | 9513 | #endif |
| 10560 | 9514 | |
| 9515 | #ifdef __LITTLE_ENDIAN__ |
| 9516 | __ai __attribute__((target("neon"))) bfloat16x4_t vget_high_bf16(bfloat16x8_t __p0) { |
| 9517 | bfloat16x4_t __ret; |
| 9518 | __ret = __builtin_shufflevector(__p0, __p0, 4, 5, 6, 7); |
| 9519 | return __ret; |
| 9520 | } |
| 9521 | #else |
| 9522 | __ai __attribute__((target("neon"))) bfloat16x4_t vget_high_bf16(bfloat16x8_t __p0) { |
| 9523 | bfloat16x4_t __ret; |
| 9524 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 9525 | __ret = __builtin_shufflevector(__rev0, __rev0, 4, 5, 6, 7); |
| 9526 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 9527 | return __ret; |
| 9528 | } |
| 9529 | __ai __attribute__((target("neon"))) bfloat16x4_t __noswap_vget_high_bf16(bfloat16x8_t __p0) { |
| 9530 | bfloat16x4_t __ret; |
| 9531 | __ret = __builtin_shufflevector(__p0, __p0, 4, 5, 6, 7); |
| 9532 | return __ret; |
| 9533 | } |
| 9534 | #endif |
| 9535 | |
| 10561 | 9536 | #ifdef __LITTLE_ENDIAN__ |
| 10562 | 9537 | #define vget_lane_p8(__p0, __p1) __extension__ ({ \ |
| 10563 | 9538 | poly8_t __ret; \ |
| ... | ... | @@ -11030,6 +10005,52 @@ __ai __attribute__((target("neon"))) int16x4_t __noswap_vget_high_s16(int16x8_t |
| 11030 | 10005 | }) |
| 11031 | 10006 | #endif |
| 11032 | 10007 | |
| 10008 | #ifdef __LITTLE_ENDIAN__ |
| 10009 | #define vgetq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 10010 | bfloat16_t __ret; \ |
| 10011 | bfloat16x8_t __s0 = __p0; \ |
| 10012 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vgetq_lane_bf16(__s0, __p1)); \ |
| 10013 | __ret; \ |
| 10014 | }) |
| 10015 | #else |
| 10016 | #define vgetq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 10017 | bfloat16_t __ret; \ |
| 10018 | bfloat16x8_t __s0 = __p0; \ |
| 10019 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 10020 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vgetq_lane_bf16(__rev0, __p1)); \ |
| 10021 | __ret; \ |
| 10022 | }) |
| 10023 | #define __noswap_vgetq_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 10024 | bfloat16_t __ret; \ |
| 10025 | bfloat16x8_t __s0 = __p0; \ |
| 10026 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vgetq_lane_bf16(__s0, __p1)); \ |
| 10027 | __ret; \ |
| 10028 | }) |
| 10029 | #endif |
| 10030 | |
| 10031 | #ifdef __LITTLE_ENDIAN__ |
| 10032 | #define vget_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 10033 | bfloat16_t __ret; \ |
| 10034 | bfloat16x4_t __s0 = __p0; \ |
| 10035 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vget_lane_bf16(__s0, __p1)); \ |
| 10036 | __ret; \ |
| 10037 | }) |
| 10038 | #else |
| 10039 | #define vget_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 10040 | bfloat16_t __ret; \ |
| 10041 | bfloat16x4_t __s0 = __p0; \ |
| 10042 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 10043 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vget_lane_bf16(__rev0, __p1)); \ |
| 10044 | __ret; \ |
| 10045 | }) |
| 10046 | #define __noswap_vget_lane_bf16(__p0, __p1) __extension__ ({ \ |
| 10047 | bfloat16_t __ret; \ |
| 10048 | bfloat16x4_t __s0 = __p0; \ |
| 10049 | __ret = __builtin_bit_cast(bfloat16_t, __builtin_neon_vget_lane_bf16(__s0, __p1)); \ |
| 10050 | __ret; \ |
| 10051 | }) |
| 10052 | #endif |
| 10053 | |
| 11033 | 10054 | #ifdef __LITTLE_ENDIAN__ |
| 11034 | 10055 | __ai __attribute__((target("neon"))) poly8x8_t vget_low_p8(poly8x16_t __p0) { |
| 11035 | 10056 | poly8x8_t __ret; |
| ... | ... | @@ -11220,6 +10241,27 @@ __ai __attribute__((target("neon"))) int16x4_t vget_low_s16(int16x8_t __p0) { |
| 11220 | 10241 | } |
| 11221 | 10242 | #endif |
| 11222 | 10243 | |
| 10244 | #ifdef __LITTLE_ENDIAN__ |
| 10245 | __ai __attribute__((target("neon"))) bfloat16x4_t vget_low_bf16(bfloat16x8_t __p0) { |
| 10246 | bfloat16x4_t __ret; |
| 10247 | __ret = __builtin_shufflevector(__p0, __p0, 0, 1, 2, 3); |
| 10248 | return __ret; |
| 10249 | } |
| 10250 | #else |
| 10251 | __ai __attribute__((target("neon"))) bfloat16x4_t vget_low_bf16(bfloat16x8_t __p0) { |
| 10252 | bfloat16x4_t __ret; |
| 10253 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 10254 | __ret = __builtin_shufflevector(__rev0, __rev0, 0, 1, 2, 3); |
| 10255 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 10256 | return __ret; |
| 10257 | } |
| 10258 | __ai __attribute__((target("neon"))) bfloat16x4_t __noswap_vget_low_bf16(bfloat16x8_t __p0) { |
| 10259 | bfloat16x4_t __ret; |
| 10260 | __ret = __builtin_shufflevector(__p0, __p0, 0, 1, 2, 3); |
| 10261 | return __ret; |
| 10262 | } |
| 10263 | #endif |
| 10264 | |
| 11223 | 10265 | #ifdef __LITTLE_ENDIAN__ |
| 11224 | 10266 | __ai __attribute__((target("neon"))) uint8x16_t vhaddq_u8(uint8x16_t __p0, uint8x16_t __p1) { |
| 11225 | 10267 | uint8x16_t __ret; |
| ... | ... | @@ -11938,6 +10980,36 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 11938 | 10980 | }) |
| 11939 | 10981 | #endif |
| 11940 | 10982 | |
| 10983 | #ifdef __LITTLE_ENDIAN__ |
| 10984 | #define vld1q_bf16(__p0) __extension__ ({ \ |
| 10985 | bfloat16x8_t __ret; \ |
| 10986 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_v(__p0, 43)); \ |
| 10987 | __ret; \ |
| 10988 | }) |
| 10989 | #else |
| 10990 | #define vld1q_bf16(__p0) __extension__ ({ \ |
| 10991 | bfloat16x8_t __ret; \ |
| 10992 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_v(__p0, 43)); \ |
| 10993 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 10994 | __ret; \ |
| 10995 | }) |
| 10996 | #endif |
| 10997 | |
| 10998 | #ifdef __LITTLE_ENDIAN__ |
| 10999 | #define vld1_bf16(__p0) __extension__ ({ \ |
| 11000 | bfloat16x4_t __ret; \ |
| 11001 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_v(__p0, 11)); \ |
| 11002 | __ret; \ |
| 11003 | }) |
| 11004 | #else |
| 11005 | #define vld1_bf16(__p0) __extension__ ({ \ |
| 11006 | bfloat16x4_t __ret; \ |
| 11007 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_v(__p0, 11)); \ |
| 11008 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 11009 | __ret; \ |
| 11010 | }) |
| 11011 | #endif |
| 11012 | |
| 11941 | 11013 | #ifdef __LITTLE_ENDIAN__ |
| 11942 | 11014 | #define vld1_dup_p8(__p0) __extension__ ({ \ |
| 11943 | 11015 | poly8x8_t __ret; \ |
| ... | ... | @@ -12248,6 +11320,36 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 12248 | 11320 | }) |
| 12249 | 11321 | #endif |
| 12250 | 11322 | |
| 11323 | #ifdef __LITTLE_ENDIAN__ |
| 11324 | #define vld1q_dup_bf16(__p0) __extension__ ({ \ |
| 11325 | bfloat16x8_t __ret; \ |
| 11326 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_dup_v(__p0, 43)); \ |
| 11327 | __ret; \ |
| 11328 | }) |
| 11329 | #else |
| 11330 | #define vld1q_dup_bf16(__p0) __extension__ ({ \ |
| 11331 | bfloat16x8_t __ret; \ |
| 11332 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_dup_v(__p0, 43)); \ |
| 11333 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 11334 | __ret; \ |
| 11335 | }) |
| 11336 | #endif |
| 11337 | |
| 11338 | #ifdef __LITTLE_ENDIAN__ |
| 11339 | #define vld1_dup_bf16(__p0) __extension__ ({ \ |
| 11340 | bfloat16x4_t __ret; \ |
| 11341 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_dup_v(__p0, 11)); \ |
| 11342 | __ret; \ |
| 11343 | }) |
| 11344 | #else |
| 11345 | #define vld1_dup_bf16(__p0) __extension__ ({ \ |
| 11346 | bfloat16x4_t __ret; \ |
| 11347 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_dup_v(__p0, 11)); \ |
| 11348 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 11349 | __ret; \ |
| 11350 | }) |
| 11351 | #endif |
| 11352 | |
| 12251 | 11353 | #ifdef __LITTLE_ENDIAN__ |
| 12252 | 11354 | #define vld1_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 12253 | 11355 | poly8x8_t __ret; \ |
| ... | ... | @@ -12620,6 +11722,42 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 12620 | 11722 | }) |
| 12621 | 11723 | #endif |
| 12622 | 11724 | |
| 11725 | #ifdef __LITTLE_ENDIAN__ |
| 11726 | #define vld1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 11727 | bfloat16x8_t __ret; \ |
| 11728 | bfloat16x8_t __s1 = __p1; \ |
| 11729 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 11730 | __ret; \ |
| 11731 | }) |
| 11732 | #else |
| 11733 | #define vld1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 11734 | bfloat16x8_t __ret; \ |
| 11735 | bfloat16x8_t __s1 = __p1; \ |
| 11736 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 11737 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vld1q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 11738 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 11739 | __ret; \ |
| 11740 | }) |
| 11741 | #endif |
| 11742 | |
| 11743 | #ifdef __LITTLE_ENDIAN__ |
| 11744 | #define vld1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 11745 | bfloat16x4_t __ret; \ |
| 11746 | bfloat16x4_t __s1 = __p1; \ |
| 11747 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_lane_v(__p0, __builtin_bit_cast(int8x8_t, __s1), __p2, 11)); \ |
| 11748 | __ret; \ |
| 11749 | }) |
| 11750 | #else |
| 11751 | #define vld1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 11752 | bfloat16x4_t __ret; \ |
| 11753 | bfloat16x4_t __s1 = __p1; \ |
| 11754 | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 11755 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vld1_lane_v(__p0, __builtin_bit_cast(int8x8_t, __rev1), __p2, 11)); \ |
| 11756 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 11757 | __ret; \ |
| 11758 | }) |
| 11759 | #endif |
| 11760 | |
| 12623 | 11761 | #ifdef __LITTLE_ENDIAN__ |
| 12624 | 11762 | #define vld1_p8_x2(__p0) __extension__ ({ \ |
| 12625 | 11763 | poly8x8x2_t __ret; \ |
| ... | ... | @@ -12970,6 +12108,40 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 12970 | 12108 | }) |
| 12971 | 12109 | #endif |
| 12972 | 12110 | |
| 12111 | #ifdef __LITTLE_ENDIAN__ |
| 12112 | #define vld1q_bf16_x2(__p0) __extension__ ({ \ |
| 12113 | bfloat16x8x2_t __ret; \ |
| 12114 | __builtin_neon_vld1q_x2_v(&__ret, __p0, 43); \ |
| 12115 | __ret; \ |
| 12116 | }) |
| 12117 | #else |
| 12118 | #define vld1q_bf16_x2(__p0) __extension__ ({ \ |
| 12119 | bfloat16x8x2_t __ret; \ |
| 12120 | __builtin_neon_vld1q_x2_v(&__ret, __p0, 43); \ |
| 12121 | \ |
| 12122 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 12123 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 12124 | __ret; \ |
| 12125 | }) |
| 12126 | #endif |
| 12127 | |
| 12128 | #ifdef __LITTLE_ENDIAN__ |
| 12129 | #define vld1_bf16_x2(__p0) __extension__ ({ \ |
| 12130 | bfloat16x4x2_t __ret; \ |
| 12131 | __builtin_neon_vld1_x2_v(&__ret, __p0, 11); \ |
| 12132 | __ret; \ |
| 12133 | }) |
| 12134 | #else |
| 12135 | #define vld1_bf16_x2(__p0) __extension__ ({ \ |
| 12136 | bfloat16x4x2_t __ret; \ |
| 12137 | __builtin_neon_vld1_x2_v(&__ret, __p0, 11); \ |
| 12138 | \ |
| 12139 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 12140 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 12141 | __ret; \ |
| 12142 | }) |
| 12143 | #endif |
| 12144 | |
| 12973 | 12145 | #ifdef __LITTLE_ENDIAN__ |
| 12974 | 12146 | #define vld1_p8_x3(__p0) __extension__ ({ \ |
| 12975 | 12147 | poly8x8x3_t __ret; \ |
| ... | ... | @@ -13340,6 +12512,42 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 13340 | 12512 | }) |
| 13341 | 12513 | #endif |
| 13342 | 12514 | |
| 12515 | #ifdef __LITTLE_ENDIAN__ |
| 12516 | #define vld1q_bf16_x3(__p0) __extension__ ({ \ |
| 12517 | bfloat16x8x3_t __ret; \ |
| 12518 | __builtin_neon_vld1q_x3_v(&__ret, __p0, 43); \ |
| 12519 | __ret; \ |
| 12520 | }) |
| 12521 | #else |
| 12522 | #define vld1q_bf16_x3(__p0) __extension__ ({ \ |
| 12523 | bfloat16x8x3_t __ret; \ |
| 12524 | __builtin_neon_vld1q_x3_v(&__ret, __p0, 43); \ |
| 12525 | \ |
| 12526 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 12527 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 12528 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 12529 | __ret; \ |
| 12530 | }) |
| 12531 | #endif |
| 12532 | |
| 12533 | #ifdef __LITTLE_ENDIAN__ |
| 12534 | #define vld1_bf16_x3(__p0) __extension__ ({ \ |
| 12535 | bfloat16x4x3_t __ret; \ |
| 12536 | __builtin_neon_vld1_x3_v(&__ret, __p0, 11); \ |
| 12537 | __ret; \ |
| 12538 | }) |
| 12539 | #else |
| 12540 | #define vld1_bf16_x3(__p0) __extension__ ({ \ |
| 12541 | bfloat16x4x3_t __ret; \ |
| 12542 | __builtin_neon_vld1_x3_v(&__ret, __p0, 11); \ |
| 12543 | \ |
| 12544 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 12545 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 12546 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 12547 | __ret; \ |
| 12548 | }) |
| 12549 | #endif |
| 12550 | |
| 13343 | 12551 | #ifdef __LITTLE_ENDIAN__ |
| 13344 | 12552 | #define vld1_p8_x4(__p0) __extension__ ({ \ |
| 13345 | 12553 | poly8x8x4_t __ret; \ |
| ... | ... | @@ -13730,6 +12938,44 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 13730 | 12938 | }) |
| 13731 | 12939 | #endif |
| 13732 | 12940 | |
| 12941 | #ifdef __LITTLE_ENDIAN__ |
| 12942 | #define vld1q_bf16_x4(__p0) __extension__ ({ \ |
| 12943 | bfloat16x8x4_t __ret; \ |
| 12944 | __builtin_neon_vld1q_x4_v(&__ret, __p0, 43); \ |
| 12945 | __ret; \ |
| 12946 | }) |
| 12947 | #else |
| 12948 | #define vld1q_bf16_x4(__p0) __extension__ ({ \ |
| 12949 | bfloat16x8x4_t __ret; \ |
| 12950 | __builtin_neon_vld1q_x4_v(&__ret, __p0, 43); \ |
| 12951 | \ |
| 12952 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 12953 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 12954 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 12955 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 12956 | __ret; \ |
| 12957 | }) |
| 12958 | #endif |
| 12959 | |
| 12960 | #ifdef __LITTLE_ENDIAN__ |
| 12961 | #define vld1_bf16_x4(__p0) __extension__ ({ \ |
| 12962 | bfloat16x4x4_t __ret; \ |
| 12963 | __builtin_neon_vld1_x4_v(&__ret, __p0, 11); \ |
| 12964 | __ret; \ |
| 12965 | }) |
| 12966 | #else |
| 12967 | #define vld1_bf16_x4(__p0) __extension__ ({ \ |
| 12968 | bfloat16x4x4_t __ret; \ |
| 12969 | __builtin_neon_vld1_x4_v(&__ret, __p0, 11); \ |
| 12970 | \ |
| 12971 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 12972 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 12973 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 12974 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 12975 | __ret; \ |
| 12976 | }) |
| 12977 | #endif |
| 12978 | |
| 13733 | 12979 | #ifdef __LITTLE_ENDIAN__ |
| 13734 | 12980 | #define vld2_p8(__p0) __extension__ ({ \ |
| 13735 | 12981 | poly8x8x2_t __ret; \ |
| ... | ... | @@ -14046,6 +13292,40 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 14046 | 13292 | }) |
| 14047 | 13293 | #endif |
| 14048 | 13294 | |
| 13295 | #ifdef __LITTLE_ENDIAN__ |
| 13296 | #define vld2q_bf16(__p0) __extension__ ({ \ |
| 13297 | bfloat16x8x2_t __ret; \ |
| 13298 | __builtin_neon_vld2q_v(&__ret, __p0, 43); \ |
| 13299 | __ret; \ |
| 13300 | }) |
| 13301 | #else |
| 13302 | #define vld2q_bf16(__p0) __extension__ ({ \ |
| 13303 | bfloat16x8x2_t __ret; \ |
| 13304 | __builtin_neon_vld2q_v(&__ret, __p0, 43); \ |
| 13305 | \ |
| 13306 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 13307 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 13308 | __ret; \ |
| 13309 | }) |
| 13310 | #endif |
| 13311 | |
| 13312 | #ifdef __LITTLE_ENDIAN__ |
| 13313 | #define vld2_bf16(__p0) __extension__ ({ \ |
| 13314 | bfloat16x4x2_t __ret; \ |
| 13315 | __builtin_neon_vld2_v(&__ret, __p0, 11); \ |
| 13316 | __ret; \ |
| 13317 | }) |
| 13318 | #else |
| 13319 | #define vld2_bf16(__p0) __extension__ ({ \ |
| 13320 | bfloat16x4x2_t __ret; \ |
| 13321 | __builtin_neon_vld2_v(&__ret, __p0, 11); \ |
| 13322 | \ |
| 13323 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 13324 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 13325 | __ret; \ |
| 13326 | }) |
| 13327 | #endif |
| 13328 | |
| 14049 | 13329 | #ifdef __LITTLE_ENDIAN__ |
| 14050 | 13330 | #define vld2_dup_p8(__p0) __extension__ ({ \ |
| 14051 | 13331 | poly8x8x2_t __ret; \ |
| ... | ... | @@ -14396,6 +13676,40 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 14396 | 13676 | }) |
| 14397 | 13677 | #endif |
| 14398 | 13678 | |
| 13679 | #ifdef __LITTLE_ENDIAN__ |
| 13680 | #define vld2q_dup_bf16(__p0) __extension__ ({ \ |
| 13681 | bfloat16x8x2_t __ret; \ |
| 13682 | __builtin_neon_vld2q_dup_v(&__ret, __p0, 43); \ |
| 13683 | __ret; \ |
| 13684 | }) |
| 13685 | #else |
| 13686 | #define vld2q_dup_bf16(__p0) __extension__ ({ \ |
| 13687 | bfloat16x8x2_t __ret; \ |
| 13688 | __builtin_neon_vld2q_dup_v(&__ret, __p0, 43); \ |
| 13689 | \ |
| 13690 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 13691 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 13692 | __ret; \ |
| 13693 | }) |
| 13694 | #endif |
| 13695 | |
| 13696 | #ifdef __LITTLE_ENDIAN__ |
| 13697 | #define vld2_dup_bf16(__p0) __extension__ ({ \ |
| 13698 | bfloat16x4x2_t __ret; \ |
| 13699 | __builtin_neon_vld2_dup_v(&__ret, __p0, 11); \ |
| 13700 | __ret; \ |
| 13701 | }) |
| 13702 | #else |
| 13703 | #define vld2_dup_bf16(__p0) __extension__ ({ \ |
| 13704 | bfloat16x4x2_t __ret; \ |
| 13705 | __builtin_neon_vld2_dup_v(&__ret, __p0, 11); \ |
| 13706 | \ |
| 13707 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 13708 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 13709 | __ret; \ |
| 13710 | }) |
| 13711 | #endif |
| 13712 | |
| 14399 | 13713 | #ifdef __LITTLE_ENDIAN__ |
| 14400 | 13714 | #define vld2_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 14401 | 13715 | poly8x8x2_t __ret; \ |
| ... | ... | @@ -14726,6 +14040,50 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 14726 | 14040 | }) |
| 14727 | 14041 | #endif |
| 14728 | 14042 | |
| 14043 | #ifdef __LITTLE_ENDIAN__ |
| 14044 | #define vld2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 14045 | bfloat16x8x2_t __ret; \ |
| 14046 | bfloat16x8x2_t __s1 = __p1; \ |
| 14047 | __builtin_neon_vld2q_lane_v(&__ret, __p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __p2, 43); \ |
| 14048 | __ret; \ |
| 14049 | }) |
| 14050 | #else |
| 14051 | #define vld2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 14052 | bfloat16x8x2_t __ret; \ |
| 14053 | bfloat16x8x2_t __s1 = __p1; \ |
| 14054 | bfloat16x8x2_t __rev1; \ |
| 14055 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 14056 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 14057 | __builtin_neon_vld2q_lane_v(&__ret, __p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __p2, 43); \ |
| 14058 | \ |
| 14059 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 14060 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 14061 | __ret; \ |
| 14062 | }) |
| 14063 | #endif |
| 14064 | |
| 14065 | #ifdef __LITTLE_ENDIAN__ |
| 14066 | #define vld2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 14067 | bfloat16x4x2_t __ret; \ |
| 14068 | bfloat16x4x2_t __s1 = __p1; \ |
| 14069 | __builtin_neon_vld2_lane_v(&__ret, __p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __p2, 11); \ |
| 14070 | __ret; \ |
| 14071 | }) |
| 14072 | #else |
| 14073 | #define vld2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 14074 | bfloat16x4x2_t __ret; \ |
| 14075 | bfloat16x4x2_t __s1 = __p1; \ |
| 14076 | bfloat16x4x2_t __rev1; \ |
| 14077 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 14078 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 14079 | __builtin_neon_vld2_lane_v(&__ret, __p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __p2, 11); \ |
| 14080 | \ |
| 14081 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 14082 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 14083 | __ret; \ |
| 14084 | }) |
| 14085 | #endif |
| 14086 | |
| 14729 | 14087 | #ifdef __LITTLE_ENDIAN__ |
| 14730 | 14088 | #define vld3_p8(__p0) __extension__ ({ \ |
| 14731 | 14089 | poly8x8x3_t __ret; \ |
| ... | ... | @@ -15060,6 +14418,42 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 15060 | 14418 | }) |
| 15061 | 14419 | #endif |
| 15062 | 14420 | |
| 14421 | #ifdef __LITTLE_ENDIAN__ |
| 14422 | #define vld3q_bf16(__p0) __extension__ ({ \ |
| 14423 | bfloat16x8x3_t __ret; \ |
| 14424 | __builtin_neon_vld3q_v(&__ret, __p0, 43); \ |
| 14425 | __ret; \ |
| 14426 | }) |
| 14427 | #else |
| 14428 | #define vld3q_bf16(__p0) __extension__ ({ \ |
| 14429 | bfloat16x8x3_t __ret; \ |
| 14430 | __builtin_neon_vld3q_v(&__ret, __p0, 43); \ |
| 14431 | \ |
| 14432 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 14433 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 14434 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 14435 | __ret; \ |
| 14436 | }) |
| 14437 | #endif |
| 14438 | |
| 14439 | #ifdef __LITTLE_ENDIAN__ |
| 14440 | #define vld3_bf16(__p0) __extension__ ({ \ |
| 14441 | bfloat16x4x3_t __ret; \ |
| 14442 | __builtin_neon_vld3_v(&__ret, __p0, 11); \ |
| 14443 | __ret; \ |
| 14444 | }) |
| 14445 | #else |
| 14446 | #define vld3_bf16(__p0) __extension__ ({ \ |
| 14447 | bfloat16x4x3_t __ret; \ |
| 14448 | __builtin_neon_vld3_v(&__ret, __p0, 11); \ |
| 14449 | \ |
| 14450 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 14451 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 14452 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 14453 | __ret; \ |
| 14454 | }) |
| 14455 | #endif |
| 14456 | |
| 15063 | 14457 | #ifdef __LITTLE_ENDIAN__ |
| 15064 | 14458 | #define vld3_dup_p8(__p0) __extension__ ({ \ |
| 15065 | 14459 | poly8x8x3_t __ret; \ |
| ... | ... | @@ -15430,6 +14824,42 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 15430 | 14824 | }) |
| 15431 | 14825 | #endif |
| 15432 | 14826 | |
| 14827 | #ifdef __LITTLE_ENDIAN__ |
| 14828 | #define vld3q_dup_bf16(__p0) __extension__ ({ \ |
| 14829 | bfloat16x8x3_t __ret; \ |
| 14830 | __builtin_neon_vld3q_dup_v(&__ret, __p0, 43); \ |
| 14831 | __ret; \ |
| 14832 | }) |
| 14833 | #else |
| 14834 | #define vld3q_dup_bf16(__p0) __extension__ ({ \ |
| 14835 | bfloat16x8x3_t __ret; \ |
| 14836 | __builtin_neon_vld3q_dup_v(&__ret, __p0, 43); \ |
| 14837 | \ |
| 14838 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 14839 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 14840 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 14841 | __ret; \ |
| 14842 | }) |
| 14843 | #endif |
| 14844 | |
| 14845 | #ifdef __LITTLE_ENDIAN__ |
| 14846 | #define vld3_dup_bf16(__p0) __extension__ ({ \ |
| 14847 | bfloat16x4x3_t __ret; \ |
| 14848 | __builtin_neon_vld3_dup_v(&__ret, __p0, 11); \ |
| 14849 | __ret; \ |
| 14850 | }) |
| 14851 | #else |
| 14852 | #define vld3_dup_bf16(__p0) __extension__ ({ \ |
| 14853 | bfloat16x4x3_t __ret; \ |
| 14854 | __builtin_neon_vld3_dup_v(&__ret, __p0, 11); \ |
| 14855 | \ |
| 14856 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 14857 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 14858 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 14859 | __ret; \ |
| 14860 | }) |
| 14861 | #endif |
| 14862 | |
| 15433 | 14863 | #ifdef __LITTLE_ENDIAN__ |
| 15434 | 14864 | #define vld3_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 15435 | 14865 | poly8x8x3_t __ret; \ |
| ... | ... | @@ -15790,6 +15220,54 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 15790 | 15220 | }) |
| 15791 | 15221 | #endif |
| 15792 | 15222 | |
| 15223 | #ifdef __LITTLE_ENDIAN__ |
| 15224 | #define vld3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 15225 | bfloat16x8x3_t __ret; \ |
| 15226 | bfloat16x8x3_t __s1 = __p1; \ |
| 15227 | __builtin_neon_vld3q_lane_v(&__ret, __p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __p2, 43); \ |
| 15228 | __ret; \ |
| 15229 | }) |
| 15230 | #else |
| 15231 | #define vld3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 15232 | bfloat16x8x3_t __ret; \ |
| 15233 | bfloat16x8x3_t __s1 = __p1; \ |
| 15234 | bfloat16x8x3_t __rev1; \ |
| 15235 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 15236 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 15237 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 15238 | __builtin_neon_vld3q_lane_v(&__ret, __p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __p2, 43); \ |
| 15239 | \ |
| 15240 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 15241 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 15242 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 15243 | __ret; \ |
| 15244 | }) |
| 15245 | #endif |
| 15246 | |
| 15247 | #ifdef __LITTLE_ENDIAN__ |
| 15248 | #define vld3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 15249 | bfloat16x4x3_t __ret; \ |
| 15250 | bfloat16x4x3_t __s1 = __p1; \ |
| 15251 | __builtin_neon_vld3_lane_v(&__ret, __p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __p2, 11); \ |
| 15252 | __ret; \ |
| 15253 | }) |
| 15254 | #else |
| 15255 | #define vld3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 15256 | bfloat16x4x3_t __ret; \ |
| 15257 | bfloat16x4x3_t __s1 = __p1; \ |
| 15258 | bfloat16x4x3_t __rev1; \ |
| 15259 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 15260 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 15261 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 15262 | __builtin_neon_vld3_lane_v(&__ret, __p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __p2, 11); \ |
| 15263 | \ |
| 15264 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 15265 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 15266 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 15267 | __ret; \ |
| 15268 | }) |
| 15269 | #endif |
| 15270 | |
| 15793 | 15271 | #ifdef __LITTLE_ENDIAN__ |
| 15794 | 15272 | #define vld4_p8(__p0) __extension__ ({ \ |
| 15795 | 15273 | poly8x8x4_t __ret; \ |
| ... | ... | @@ -16142,6 +15620,44 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 16142 | 15620 | }) |
| 16143 | 15621 | #endif |
| 16144 | 15622 | |
| 15623 | #ifdef __LITTLE_ENDIAN__ |
| 15624 | #define vld4q_bf16(__p0) __extension__ ({ \ |
| 15625 | bfloat16x8x4_t __ret; \ |
| 15626 | __builtin_neon_vld4q_v(&__ret, __p0, 43); \ |
| 15627 | __ret; \ |
| 15628 | }) |
| 15629 | #else |
| 15630 | #define vld4q_bf16(__p0) __extension__ ({ \ |
| 15631 | bfloat16x8x4_t __ret; \ |
| 15632 | __builtin_neon_vld4q_v(&__ret, __p0, 43); \ |
| 15633 | \ |
| 15634 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 15635 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 15636 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 15637 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 15638 | __ret; \ |
| 15639 | }) |
| 15640 | #endif |
| 15641 | |
| 15642 | #ifdef __LITTLE_ENDIAN__ |
| 15643 | #define vld4_bf16(__p0) __extension__ ({ \ |
| 15644 | bfloat16x4x4_t __ret; \ |
| 15645 | __builtin_neon_vld4_v(&__ret, __p0, 11); \ |
| 15646 | __ret; \ |
| 15647 | }) |
| 15648 | #else |
| 15649 | #define vld4_bf16(__p0) __extension__ ({ \ |
| 15650 | bfloat16x4x4_t __ret; \ |
| 15651 | __builtin_neon_vld4_v(&__ret, __p0, 11); \ |
| 15652 | \ |
| 15653 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 15654 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 15655 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 15656 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 15657 | __ret; \ |
| 15658 | }) |
| 15659 | #endif |
| 15660 | |
| 16145 | 15661 | #ifdef __LITTLE_ENDIAN__ |
| 16146 | 15662 | #define vld4_dup_p8(__p0) __extension__ ({ \ |
| 16147 | 15663 | poly8x8x4_t __ret; \ |
| ... | ... | @@ -16532,6 +16048,44 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 16532 | 16048 | }) |
| 16533 | 16049 | #endif |
| 16534 | 16050 | |
| 16051 | #ifdef __LITTLE_ENDIAN__ |
| 16052 | #define vld4q_dup_bf16(__p0) __extension__ ({ \ |
| 16053 | bfloat16x8x4_t __ret; \ |
| 16054 | __builtin_neon_vld4q_dup_v(&__ret, __p0, 43); \ |
| 16055 | __ret; \ |
| 16056 | }) |
| 16057 | #else |
| 16058 | #define vld4q_dup_bf16(__p0) __extension__ ({ \ |
| 16059 | bfloat16x8x4_t __ret; \ |
| 16060 | __builtin_neon_vld4q_dup_v(&__ret, __p0, 43); \ |
| 16061 | \ |
| 16062 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 16063 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 16064 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 16065 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 16066 | __ret; \ |
| 16067 | }) |
| 16068 | #endif |
| 16069 | |
| 16070 | #ifdef __LITTLE_ENDIAN__ |
| 16071 | #define vld4_dup_bf16(__p0) __extension__ ({ \ |
| 16072 | bfloat16x4x4_t __ret; \ |
| 16073 | __builtin_neon_vld4_dup_v(&__ret, __p0, 11); \ |
| 16074 | __ret; \ |
| 16075 | }) |
| 16076 | #else |
| 16077 | #define vld4_dup_bf16(__p0) __extension__ ({ \ |
| 16078 | bfloat16x4x4_t __ret; \ |
| 16079 | __builtin_neon_vld4_dup_v(&__ret, __p0, 11); \ |
| 16080 | \ |
| 16081 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 16082 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 16083 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 16084 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 16085 | __ret; \ |
| 16086 | }) |
| 16087 | #endif |
| 16088 | |
| 16535 | 16089 | #ifdef __LITTLE_ENDIAN__ |
| 16536 | 16090 | #define vld4_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 16537 | 16091 | poly8x8x4_t __ret; \ |
| ... | ... | @@ -16922,6 +16476,58 @@ __ai __attribute__((target("neon"))) int16x4_t vhsub_s16(int16x4_t __p0, int16x4 |
| 16922 | 16476 | }) |
| 16923 | 16477 | #endif |
| 16924 | 16478 | |
| 16479 | #ifdef __LITTLE_ENDIAN__ |
| 16480 | #define vld4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 16481 | bfloat16x8x4_t __ret; \ |
| 16482 | bfloat16x8x4_t __s1 = __p1; \ |
| 16483 | __builtin_neon_vld4q_lane_v(&__ret, __p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), __p2, 43); \ |
| 16484 | __ret; \ |
| 16485 | }) |
| 16486 | #else |
| 16487 | #define vld4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 16488 | bfloat16x8x4_t __ret; \ |
| 16489 | bfloat16x8x4_t __s1 = __p1; \ |
| 16490 | bfloat16x8x4_t __rev1; \ |
| 16491 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 16492 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 16493 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 16494 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 16495 | __builtin_neon_vld4q_lane_v(&__ret, __p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), __p2, 43); \ |
| 16496 | \ |
| 16497 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_128_16); \ |
| 16498 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_128_16); \ |
| 16499 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_128_16); \ |
| 16500 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_128_16); \ |
| 16501 | __ret; \ |
| 16502 | }) |
| 16503 | #endif |
| 16504 | |
| 16505 | #ifdef __LITTLE_ENDIAN__ |
| 16506 | #define vld4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 16507 | bfloat16x4x4_t __ret; \ |
| 16508 | bfloat16x4x4_t __s1 = __p1; \ |
| 16509 | __builtin_neon_vld4_lane_v(&__ret, __p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), __p2, 11); \ |
| 16510 | __ret; \ |
| 16511 | }) |
| 16512 | #else |
| 16513 | #define vld4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 16514 | bfloat16x4x4_t __ret; \ |
| 16515 | bfloat16x4x4_t __s1 = __p1; \ |
| 16516 | bfloat16x4x4_t __rev1; \ |
| 16517 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 16518 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 16519 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 16520 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 16521 | __builtin_neon_vld4_lane_v(&__ret, __p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), __p2, 11); \ |
| 16522 | \ |
| 16523 | __ret.val[0] = __builtin_shufflevector(__ret.val[0], __ret.val[0], __lane_reverse_64_16); \ |
| 16524 | __ret.val[1] = __builtin_shufflevector(__ret.val[1], __ret.val[1], __lane_reverse_64_16); \ |
| 16525 | __ret.val[2] = __builtin_shufflevector(__ret.val[2], __ret.val[2], __lane_reverse_64_16); \ |
| 16526 | __ret.val[3] = __builtin_shufflevector(__ret.val[3], __ret.val[3], __lane_reverse_64_16); \ |
| 16527 | __ret; \ |
| 16528 | }) |
| 16529 | #endif |
| 16530 | |
| 16925 | 16531 | #ifdef __LITTLE_ENDIAN__ |
| 16926 | 16532 | __ai __attribute__((target("neon"))) uint8x16_t vmaxq_u8(uint8x16_t __p0, uint8x16_t __p1) { |
| 16927 | 16533 | uint8x16_t __ret; |
| ... | ... | @@ -27576,6 +27182,60 @@ __ai __attribute__((target("neon"))) int8x8_t __noswap_vrsubhn_s16(int16x8_t __p |
| 27576 | 27182 | }) |
| 27577 | 27183 | #endif |
| 27578 | 27184 | |
| 27185 | #ifdef __LITTLE_ENDIAN__ |
| 27186 | #define vsetq_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 27187 | bfloat16x8_t __ret; \ |
| 27188 | bfloat16_t __s0 = __p0; \ |
| 27189 | bfloat16x8_t __s1 = __p1; \ |
| 27190 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vsetq_lane_bf16(__s0, __s1, __p2)); \ |
| 27191 | __ret; \ |
| 27192 | }) |
| 27193 | #else |
| 27194 | #define vsetq_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 27195 | bfloat16x8_t __ret; \ |
| 27196 | bfloat16_t __s0 = __p0; \ |
| 27197 | bfloat16x8_t __s1 = __p1; \ |
| 27198 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 27199 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vsetq_lane_bf16(__s0, __rev1, __p2)); \ |
| 27200 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 27201 | __ret; \ |
| 27202 | }) |
| 27203 | #define __noswap_vsetq_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 27204 | bfloat16x8_t __ret; \ |
| 27205 | bfloat16_t __s0 = __p0; \ |
| 27206 | bfloat16x8_t __s1 = __p1; \ |
| 27207 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vsetq_lane_bf16(__s0, __s1, __p2)); \ |
| 27208 | __ret; \ |
| 27209 | }) |
| 27210 | #endif |
| 27211 | |
| 27212 | #ifdef __LITTLE_ENDIAN__ |
| 27213 | #define vset_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 27214 | bfloat16x4_t __ret; \ |
| 27215 | bfloat16_t __s0 = __p0; \ |
| 27216 | bfloat16x4_t __s1 = __p1; \ |
| 27217 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vset_lane_bf16(__s0, __s1, __p2)); \ |
| 27218 | __ret; \ |
| 27219 | }) |
| 27220 | #else |
| 27221 | #define vset_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 27222 | bfloat16x4_t __ret; \ |
| 27223 | bfloat16_t __s0 = __p0; \ |
| 27224 | bfloat16x4_t __s1 = __p1; \ |
| 27225 | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 27226 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vset_lane_bf16(__s0, __rev1, __p2)); \ |
| 27227 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 27228 | __ret; \ |
| 27229 | }) |
| 27230 | #define __noswap_vset_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 27231 | bfloat16x4_t __ret; \ |
| 27232 | bfloat16_t __s0 = __p0; \ |
| 27233 | bfloat16x4_t __s1 = __p1; \ |
| 27234 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vset_lane_bf16(__s0, __s1, __p2)); \ |
| 27235 | __ret; \ |
| 27236 | }) |
| 27237 | #endif |
| 27238 | |
| 27579 | 27239 | #ifdef __LITTLE_ENDIAN__ |
| 27580 | 27240 | __ai __attribute__((target("neon"))) uint8x16_t vshlq_u8(uint8x16_t __p0, int8x16_t __p1) { |
| 27581 | 27241 | uint8x16_t __ret; |
| ... | ... | @@ -30000,6 +29660,32 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 30000 | 29660 | }) |
| 30001 | 29661 | #endif |
| 30002 | 29662 | |
| 29663 | #ifdef __LITTLE_ENDIAN__ |
| 29664 | #define vst1q_bf16(__p0, __p1) __extension__ ({ \ |
| 29665 | bfloat16x8_t __s1 = __p1; \ |
| 29666 | __builtin_neon_vst1q_v(__p0, __builtin_bit_cast(int8x16_t, __s1), 43); \ |
| 29667 | }) |
| 29668 | #else |
| 29669 | #define vst1q_bf16(__p0, __p1) __extension__ ({ \ |
| 29670 | bfloat16x8_t __s1 = __p1; \ |
| 29671 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 29672 | __builtin_neon_vst1q_v(__p0, __builtin_bit_cast(int8x16_t, __rev1), 43); \ |
| 29673 | }) |
| 29674 | #endif |
| 29675 | |
| 29676 | #ifdef __LITTLE_ENDIAN__ |
| 29677 | #define vst1_bf16(__p0, __p1) __extension__ ({ \ |
| 29678 | bfloat16x4_t __s1 = __p1; \ |
| 29679 | __builtin_neon_vst1_v(__p0, __builtin_bit_cast(int8x8_t, __s1), 11); \ |
| 29680 | }) |
| 29681 | #else |
| 29682 | #define vst1_bf16(__p0, __p1) __extension__ ({ \ |
| 29683 | bfloat16x4_t __s1 = __p1; \ |
| 29684 | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 29685 | __builtin_neon_vst1_v(__p0, __builtin_bit_cast(int8x8_t, __rev1), 11); \ |
| 29686 | }) |
| 29687 | #endif |
| 29688 | |
| 30003 | 29689 | #ifdef __LITTLE_ENDIAN__ |
| 30004 | 29690 | #define vst1_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 30005 | 29691 | poly8x8_t __s1 = __p1; \ |
| ... | ... | @@ -30268,6 +29954,32 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 30268 | 29954 | }) |
| 30269 | 29955 | #endif |
| 30270 | 29956 | |
| 29957 | #ifdef __LITTLE_ENDIAN__ |
| 29958 | #define vst1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 29959 | bfloat16x8_t __s1 = __p1; \ |
| 29960 | __builtin_neon_vst1q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __s1), __p2, 43); \ |
| 29961 | }) |
| 29962 | #else |
| 29963 | #define vst1q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 29964 | bfloat16x8_t __s1 = __p1; \ |
| 29965 | bfloat16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 29966 | __builtin_neon_vst1q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __rev1), __p2, 43); \ |
| 29967 | }) |
| 29968 | #endif |
| 29969 | |
| 29970 | #ifdef __LITTLE_ENDIAN__ |
| 29971 | #define vst1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 29972 | bfloat16x4_t __s1 = __p1; \ |
| 29973 | __builtin_neon_vst1_lane_v(__p0, __builtin_bit_cast(int8x8_t, __s1), __p2, 11); \ |
| 29974 | }) |
| 29975 | #else |
| 29976 | #define vst1_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 29977 | bfloat16x4_t __s1 = __p1; \ |
| 29978 | bfloat16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 29979 | __builtin_neon_vst1_lane_v(__p0, __builtin_bit_cast(int8x8_t, __rev1), __p2, 11); \ |
| 29980 | }) |
| 29981 | #endif |
| 29982 | |
| 30271 | 29983 | #ifdef __LITTLE_ENDIAN__ |
| 30272 | 29984 | #define vst1_p8_x2(__p0, __p1) __extension__ ({ \ |
| 30273 | 29985 | poly8x8x2_t __s1 = __p1; \ |
| ... | ... | @@ -30576,6 +30288,36 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 30576 | 30288 | }) |
| 30577 | 30289 | #endif |
| 30578 | 30290 | |
| 30291 | #ifdef __LITTLE_ENDIAN__ |
| 30292 | #define vst1q_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 30293 | bfloat16x8x2_t __s1 = __p1; \ |
| 30294 | __builtin_neon_vst1q_x2_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), 43); \ |
| 30295 | }) |
| 30296 | #else |
| 30297 | #define vst1q_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 30298 | bfloat16x8x2_t __s1 = __p1; \ |
| 30299 | bfloat16x8x2_t __rev1; \ |
| 30300 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 30301 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 30302 | __builtin_neon_vst1q_x2_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), 43); \ |
| 30303 | }) |
| 30304 | #endif |
| 30305 | |
| 30306 | #ifdef __LITTLE_ENDIAN__ |
| 30307 | #define vst1_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 30308 | bfloat16x4x2_t __s1 = __p1; \ |
| 30309 | __builtin_neon_vst1_x2_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), 11); \ |
| 30310 | }) |
| 30311 | #else |
| 30312 | #define vst1_bf16_x2(__p0, __p1) __extension__ ({ \ |
| 30313 | bfloat16x4x2_t __s1 = __p1; \ |
| 30314 | bfloat16x4x2_t __rev1; \ |
| 30315 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 30316 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 30317 | __builtin_neon_vst1_x2_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), 11); \ |
| 30318 | }) |
| 30319 | #endif |
| 30320 | |
| 30579 | 30321 | #ifdef __LITTLE_ENDIAN__ |
| 30580 | 30322 | #define vst1_p8_x3(__p0, __p1) __extension__ ({ \ |
| 30581 | 30323 | poly8x8x3_t __s1 = __p1; \ |
| ... | ... | @@ -30904,6 +30646,38 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 30904 | 30646 | }) |
| 30905 | 30647 | #endif |
| 30906 | 30648 | |
| 30649 | #ifdef __LITTLE_ENDIAN__ |
| 30650 | #define vst1q_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 30651 | bfloat16x8x3_t __s1 = __p1; \ |
| 30652 | __builtin_neon_vst1q_x3_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), 43); \ |
| 30653 | }) |
| 30654 | #else |
| 30655 | #define vst1q_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 30656 | bfloat16x8x3_t __s1 = __p1; \ |
| 30657 | bfloat16x8x3_t __rev1; \ |
| 30658 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 30659 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 30660 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 30661 | __builtin_neon_vst1q_x3_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), 43); \ |
| 30662 | }) |
| 30663 | #endif |
| 30664 | |
| 30665 | #ifdef __LITTLE_ENDIAN__ |
| 30666 | #define vst1_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 30667 | bfloat16x4x3_t __s1 = __p1; \ |
| 30668 | __builtin_neon_vst1_x3_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), 11); \ |
| 30669 | }) |
| 30670 | #else |
| 30671 | #define vst1_bf16_x3(__p0, __p1) __extension__ ({ \ |
| 30672 | bfloat16x4x3_t __s1 = __p1; \ |
| 30673 | bfloat16x4x3_t __rev1; \ |
| 30674 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 30675 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 30676 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 30677 | __builtin_neon_vst1_x3_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), 11); \ |
| 30678 | }) |
| 30679 | #endif |
| 30680 | |
| 30907 | 30681 | #ifdef __LITTLE_ENDIAN__ |
| 30908 | 30682 | #define vst1_p8_x4(__p0, __p1) __extension__ ({ \ |
| 30909 | 30683 | poly8x8x4_t __s1 = __p1; \ |
| ... | ... | @@ -31252,6 +31026,40 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 31252 | 31026 | }) |
| 31253 | 31027 | #endif |
| 31254 | 31028 | |
| 31029 | #ifdef __LITTLE_ENDIAN__ |
| 31030 | #define vst1q_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 31031 | bfloat16x8x4_t __s1 = __p1; \ |
| 31032 | __builtin_neon_vst1q_x4_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), 43); \ |
| 31033 | }) |
| 31034 | #else |
| 31035 | #define vst1q_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 31036 | bfloat16x8x4_t __s1 = __p1; \ |
| 31037 | bfloat16x8x4_t __rev1; \ |
| 31038 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 31039 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 31040 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 31041 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 31042 | __builtin_neon_vst1q_x4_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), 43); \ |
| 31043 | }) |
| 31044 | #endif |
| 31045 | |
| 31046 | #ifdef __LITTLE_ENDIAN__ |
| 31047 | #define vst1_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 31048 | bfloat16x4x4_t __s1 = __p1; \ |
| 31049 | __builtin_neon_vst1_x4_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), 11); \ |
| 31050 | }) |
| 31051 | #else |
| 31052 | #define vst1_bf16_x4(__p0, __p1) __extension__ ({ \ |
| 31053 | bfloat16x4x4_t __s1 = __p1; \ |
| 31054 | bfloat16x4x4_t __rev1; \ |
| 31055 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 31056 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 31057 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 31058 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 31059 | __builtin_neon_vst1_x4_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), 11); \ |
| 31060 | }) |
| 31061 | #endif |
| 31062 | |
| 31255 | 31063 | #ifdef __LITTLE_ENDIAN__ |
| 31256 | 31064 | #define vst2_p8(__p0, __p1) __extension__ ({ \ |
| 31257 | 31065 | poly8x8x2_t __s1 = __p1; \ |
| ... | ... | @@ -31530,6 +31338,36 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 31530 | 31338 | }) |
| 31531 | 31339 | #endif |
| 31532 | 31340 | |
| 31341 | #ifdef __LITTLE_ENDIAN__ |
| 31342 | #define vst2q_bf16(__p0, __p1) __extension__ ({ \ |
| 31343 | bfloat16x8x2_t __s1 = __p1; \ |
| 31344 | __builtin_neon_vst2q_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), 43); \ |
| 31345 | }) |
| 31346 | #else |
| 31347 | #define vst2q_bf16(__p0, __p1) __extension__ ({ \ |
| 31348 | bfloat16x8x2_t __s1 = __p1; \ |
| 31349 | bfloat16x8x2_t __rev1; \ |
| 31350 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 31351 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 31352 | __builtin_neon_vst2q_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), 43); \ |
| 31353 | }) |
| 31354 | #endif |
| 31355 | |
| 31356 | #ifdef __LITTLE_ENDIAN__ |
| 31357 | #define vst2_bf16(__p0, __p1) __extension__ ({ \ |
| 31358 | bfloat16x4x2_t __s1 = __p1; \ |
| 31359 | __builtin_neon_vst2_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), 11); \ |
| 31360 | }) |
| 31361 | #else |
| 31362 | #define vst2_bf16(__p0, __p1) __extension__ ({ \ |
| 31363 | bfloat16x4x2_t __s1 = __p1; \ |
| 31364 | bfloat16x4x2_t __rev1; \ |
| 31365 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 31366 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 31367 | __builtin_neon_vst2_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), 11); \ |
| 31368 | }) |
| 31369 | #endif |
| 31370 | |
| 31533 | 31371 | #ifdef __LITTLE_ENDIAN__ |
| 31534 | 31372 | #define vst2_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 31535 | 31373 | poly8x8x2_t __s1 = __p1; \ |
| ... | ... | @@ -31755,6 +31593,36 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 31755 | 31593 | }) |
| 31756 | 31594 | #endif |
| 31757 | 31595 | |
| 31596 | #ifdef __LITTLE_ENDIAN__ |
| 31597 | #define vst2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 31598 | bfloat16x8x2_t __s1 = __p1; \ |
| 31599 | __builtin_neon_vst2q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __p2, 43); \ |
| 31600 | }) |
| 31601 | #else |
| 31602 | #define vst2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 31603 | bfloat16x8x2_t __s1 = __p1; \ |
| 31604 | bfloat16x8x2_t __rev1; \ |
| 31605 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 31606 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 31607 | __builtin_neon_vst2q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __p2, 43); \ |
| 31608 | }) |
| 31609 | #endif |
| 31610 | |
| 31611 | #ifdef __LITTLE_ENDIAN__ |
| 31612 | #define vst2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 31613 | bfloat16x4x2_t __s1 = __p1; \ |
| 31614 | __builtin_neon_vst2_lane_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __p2, 11); \ |
| 31615 | }) |
| 31616 | #else |
| 31617 | #define vst2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 31618 | bfloat16x4x2_t __s1 = __p1; \ |
| 31619 | bfloat16x4x2_t __rev1; \ |
| 31620 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 31621 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 31622 | __builtin_neon_vst2_lane_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __p2, 11); \ |
| 31623 | }) |
| 31624 | #endif |
| 31625 | |
| 31758 | 31626 | #ifdef __LITTLE_ENDIAN__ |
| 31759 | 31627 | #define vst3_p8(__p0, __p1) __extension__ ({ \ |
| 31760 | 31628 | poly8x8x3_t __s1 = __p1; \ |
| ... | ... | @@ -32051,6 +31919,38 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 32051 | 31919 | }) |
| 32052 | 31920 | #endif |
| 32053 | 31921 | |
| 31922 | #ifdef __LITTLE_ENDIAN__ |
| 31923 | #define vst3q_bf16(__p0, __p1) __extension__ ({ \ |
| 31924 | bfloat16x8x3_t __s1 = __p1; \ |
| 31925 | __builtin_neon_vst3q_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), 43); \ |
| 31926 | }) |
| 31927 | #else |
| 31928 | #define vst3q_bf16(__p0, __p1) __extension__ ({ \ |
| 31929 | bfloat16x8x3_t __s1 = __p1; \ |
| 31930 | bfloat16x8x3_t __rev1; \ |
| 31931 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 31932 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 31933 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 31934 | __builtin_neon_vst3q_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), 43); \ |
| 31935 | }) |
| 31936 | #endif |
| 31937 | |
| 31938 | #ifdef __LITTLE_ENDIAN__ |
| 31939 | #define vst3_bf16(__p0, __p1) __extension__ ({ \ |
| 31940 | bfloat16x4x3_t __s1 = __p1; \ |
| 31941 | __builtin_neon_vst3_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), 11); \ |
| 31942 | }) |
| 31943 | #else |
| 31944 | #define vst3_bf16(__p0, __p1) __extension__ ({ \ |
| 31945 | bfloat16x4x3_t __s1 = __p1; \ |
| 31946 | bfloat16x4x3_t __rev1; \ |
| 31947 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 31948 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 31949 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 31950 | __builtin_neon_vst3_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), 11); \ |
| 31951 | }) |
| 31952 | #endif |
| 31953 | |
| 32054 | 31954 | #ifdef __LITTLE_ENDIAN__ |
| 32055 | 31955 | #define vst3_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 32056 | 31956 | poly8x8x3_t __s1 = __p1; \ |
| ... | ... | @@ -32291,6 +32191,38 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 32291 | 32191 | }) |
| 32292 | 32192 | #endif |
| 32293 | 32193 | |
| 32194 | #ifdef __LITTLE_ENDIAN__ |
| 32195 | #define vst3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32196 | bfloat16x8x3_t __s1 = __p1; \ |
| 32197 | __builtin_neon_vst3q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __p2, 43); \ |
| 32198 | }) |
| 32199 | #else |
| 32200 | #define vst3q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32201 | bfloat16x8x3_t __s1 = __p1; \ |
| 32202 | bfloat16x8x3_t __rev1; \ |
| 32203 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 32204 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 32205 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 32206 | __builtin_neon_vst3q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __p2, 43); \ |
| 32207 | }) |
| 32208 | #endif |
| 32209 | |
| 32210 | #ifdef __LITTLE_ENDIAN__ |
| 32211 | #define vst3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32212 | bfloat16x4x3_t __s1 = __p1; \ |
| 32213 | __builtin_neon_vst3_lane_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __p2, 11); \ |
| 32214 | }) |
| 32215 | #else |
| 32216 | #define vst3_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32217 | bfloat16x4x3_t __s1 = __p1; \ |
| 32218 | bfloat16x4x3_t __rev1; \ |
| 32219 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 32220 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 32221 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 32222 | __builtin_neon_vst3_lane_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __p2, 11); \ |
| 32223 | }) |
| 32224 | #endif |
| 32225 | |
| 32294 | 32226 | #ifdef __LITTLE_ENDIAN__ |
| 32295 | 32227 | #define vst4_p8(__p0, __p1) __extension__ ({ \ |
| 32296 | 32228 | poly8x8x4_t __s1 = __p1; \ |
| ... | ... | @@ -32605,6 +32537,40 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 32605 | 32537 | }) |
| 32606 | 32538 | #endif |
| 32607 | 32539 | |
| 32540 | #ifdef __LITTLE_ENDIAN__ |
| 32541 | #define vst4q_bf16(__p0, __p1) __extension__ ({ \ |
| 32542 | bfloat16x8x4_t __s1 = __p1; \ |
| 32543 | __builtin_neon_vst4q_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), 43); \ |
| 32544 | }) |
| 32545 | #else |
| 32546 | #define vst4q_bf16(__p0, __p1) __extension__ ({ \ |
| 32547 | bfloat16x8x4_t __s1 = __p1; \ |
| 32548 | bfloat16x8x4_t __rev1; \ |
| 32549 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 32550 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 32551 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 32552 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 32553 | __builtin_neon_vst4q_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), 43); \ |
| 32554 | }) |
| 32555 | #endif |
| 32556 | |
| 32557 | #ifdef __LITTLE_ENDIAN__ |
| 32558 | #define vst4_bf16(__p0, __p1) __extension__ ({ \ |
| 32559 | bfloat16x4x4_t __s1 = __p1; \ |
| 32560 | __builtin_neon_vst4_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), 11); \ |
| 32561 | }) |
| 32562 | #else |
| 32563 | #define vst4_bf16(__p0, __p1) __extension__ ({ \ |
| 32564 | bfloat16x4x4_t __s1 = __p1; \ |
| 32565 | bfloat16x4x4_t __rev1; \ |
| 32566 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 32567 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 32568 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 32569 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 32570 | __builtin_neon_vst4_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), 11); \ |
| 32571 | }) |
| 32572 | #endif |
| 32573 | |
| 32608 | 32574 | #ifdef __LITTLE_ENDIAN__ |
| 32609 | 32575 | #define vst4_lane_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 32610 | 32576 | poly8x8x4_t __s1 = __p1; \ |
| ... | ... | @@ -32860,6 +32826,40 @@ __ai __attribute__((target("neon"))) int16x4_t vshl_s16(int16x4_t __p0, int16x4_ |
| 32860 | 32826 | }) |
| 32861 | 32827 | #endif |
| 32862 | 32828 | |
| 32829 | #ifdef __LITTLE_ENDIAN__ |
| 32830 | #define vst4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32831 | bfloat16x8x4_t __s1 = __p1; \ |
| 32832 | __builtin_neon_vst4q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __s1.val[0]), __builtin_bit_cast(int8x16_t, __s1.val[1]), __builtin_bit_cast(int8x16_t, __s1.val[2]), __builtin_bit_cast(int8x16_t, __s1.val[3]), __p2, 43); \ |
| 32833 | }) |
| 32834 | #else |
| 32835 | #define vst4q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32836 | bfloat16x8x4_t __s1 = __p1; \ |
| 32837 | bfloat16x8x4_t __rev1; \ |
| 32838 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_128_16); \ |
| 32839 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_128_16); \ |
| 32840 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_128_16); \ |
| 32841 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_128_16); \ |
| 32842 | __builtin_neon_vst4q_lane_v(__p0, __builtin_bit_cast(int8x16_t, __rev1.val[0]), __builtin_bit_cast(int8x16_t, __rev1.val[1]), __builtin_bit_cast(int8x16_t, __rev1.val[2]), __builtin_bit_cast(int8x16_t, __rev1.val[3]), __p2, 43); \ |
| 32843 | }) |
| 32844 | #endif |
| 32845 | |
| 32846 | #ifdef __LITTLE_ENDIAN__ |
| 32847 | #define vst4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32848 | bfloat16x4x4_t __s1 = __p1; \ |
| 32849 | __builtin_neon_vst4_lane_v(__p0, __builtin_bit_cast(int8x8_t, __s1.val[0]), __builtin_bit_cast(int8x8_t, __s1.val[1]), __builtin_bit_cast(int8x8_t, __s1.val[2]), __builtin_bit_cast(int8x8_t, __s1.val[3]), __p2, 11); \ |
| 32850 | }) |
| 32851 | #else |
| 32852 | #define vst4_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 32853 | bfloat16x4x4_t __s1 = __p1; \ |
| 32854 | bfloat16x4x4_t __rev1; \ |
| 32855 | __rev1.val[0] = __builtin_shufflevector(__s1.val[0], __s1.val[0], __lane_reverse_64_16); \ |
| 32856 | __rev1.val[1] = __builtin_shufflevector(__s1.val[1], __s1.val[1], __lane_reverse_64_16); \ |
| 32857 | __rev1.val[2] = __builtin_shufflevector(__s1.val[2], __s1.val[2], __lane_reverse_64_16); \ |
| 32858 | __rev1.val[3] = __builtin_shufflevector(__s1.val[3], __s1.val[3], __lane_reverse_64_16); \ |
| 32859 | __builtin_neon_vst4_lane_v(__p0, __builtin_bit_cast(int8x8_t, __rev1.val[0]), __builtin_bit_cast(int8x8_t, __rev1.val[1]), __builtin_bit_cast(int8x8_t, __rev1.val[2]), __builtin_bit_cast(int8x8_t, __rev1.val[3]), __p2, 11); \ |
| 32860 | }) |
| 32861 | #endif |
| 32862 | |
| 32863 | 32863 | #ifdef __LITTLE_ENDIAN__ |
| 32864 | 32864 | __ai __attribute__((target("neon"))) uint8x16_t vsubq_u8(uint8x16_t __p0, uint8x16_t __p1) { |
| 32865 | 32865 | uint8x16_t __ret; |
| ... | ... | @@ -37083,266 +37083,6 @@ __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_low_bf16_f32(float3 |
| 37083 | 37083 | } |
| 37084 | 37084 | #endif |
| 37085 | 37085 | |
| 37086 | | __ai __attribute__((target("bf16,neon"))) poly8x8_t vreinterpret_p8_bf16(bfloat16x4_t __p0) { |
| 37087 | | poly8x8_t __ret; |
| 37088 | | __ret = __builtin_bit_cast(poly8x8_t, __p0); |
| 37089 | | return __ret; |
| 37090 | | } |
| 37091 | | __ai __attribute__((target("bf16,neon"))) poly64x1_t vreinterpret_p64_bf16(bfloat16x4_t __p0) { |
| 37092 | | poly64x1_t __ret; |
| 37093 | | __ret = __builtin_bit_cast(poly64x1_t, __p0); |
| 37094 | | return __ret; |
| 37095 | | } |
| 37096 | | __ai __attribute__((target("bf16,neon"))) poly16x4_t vreinterpret_p16_bf16(bfloat16x4_t __p0) { |
| 37097 | | poly16x4_t __ret; |
| 37098 | | __ret = __builtin_bit_cast(poly16x4_t, __p0); |
| 37099 | | return __ret; |
| 37100 | | } |
| 37101 | | __ai __attribute__((target("bf16,neon"))) poly8x16_t vreinterpretq_p8_bf16(bfloat16x8_t __p0) { |
| 37102 | | poly8x16_t __ret; |
| 37103 | | __ret = __builtin_bit_cast(poly8x16_t, __p0); |
| 37104 | | return __ret; |
| 37105 | | } |
| 37106 | | __ai __attribute__((target("bf16,neon"))) poly64x2_t vreinterpretq_p64_bf16(bfloat16x8_t __p0) { |
| 37107 | | poly64x2_t __ret; |
| 37108 | | __ret = __builtin_bit_cast(poly64x2_t, __p0); |
| 37109 | | return __ret; |
| 37110 | | } |
| 37111 | | __ai __attribute__((target("bf16,neon"))) poly16x8_t vreinterpretq_p16_bf16(bfloat16x8_t __p0) { |
| 37112 | | poly16x8_t __ret; |
| 37113 | | __ret = __builtin_bit_cast(poly16x8_t, __p0); |
| 37114 | | return __ret; |
| 37115 | | } |
| 37116 | | __ai __attribute__((target("bf16,neon"))) uint8x16_t vreinterpretq_u8_bf16(bfloat16x8_t __p0) { |
| 37117 | | uint8x16_t __ret; |
| 37118 | | __ret = __builtin_bit_cast(uint8x16_t, __p0); |
| 37119 | | return __ret; |
| 37120 | | } |
| 37121 | | __ai __attribute__((target("bf16,neon"))) uint32x4_t vreinterpretq_u32_bf16(bfloat16x8_t __p0) { |
| 37122 | | uint32x4_t __ret; |
| 37123 | | __ret = __builtin_bit_cast(uint32x4_t, __p0); |
| 37124 | | return __ret; |
| 37125 | | } |
| 37126 | | __ai __attribute__((target("bf16,neon"))) uint64x2_t vreinterpretq_u64_bf16(bfloat16x8_t __p0) { |
| 37127 | | uint64x2_t __ret; |
| 37128 | | __ret = __builtin_bit_cast(uint64x2_t, __p0); |
| 37129 | | return __ret; |
| 37130 | | } |
| 37131 | | __ai __attribute__((target("bf16,neon"))) uint16x8_t vreinterpretq_u16_bf16(bfloat16x8_t __p0) { |
| 37132 | | uint16x8_t __ret; |
| 37133 | | __ret = __builtin_bit_cast(uint16x8_t, __p0); |
| 37134 | | return __ret; |
| 37135 | | } |
| 37136 | | __ai __attribute__((target("bf16,neon"))) int8x16_t vreinterpretq_s8_bf16(bfloat16x8_t __p0) { |
| 37137 | | int8x16_t __ret; |
| 37138 | | __ret = __builtin_bit_cast(int8x16_t, __p0); |
| 37139 | | return __ret; |
| 37140 | | } |
| 37141 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vreinterpretq_f32_bf16(bfloat16x8_t __p0) { |
| 37142 | | float32x4_t __ret; |
| 37143 | | __ret = __builtin_bit_cast(float32x4_t, __p0); |
| 37144 | | return __ret; |
| 37145 | | } |
| 37146 | | __ai __attribute__((target("bf16,neon"))) float16x8_t vreinterpretq_f16_bf16(bfloat16x8_t __p0) { |
| 37147 | | float16x8_t __ret; |
| 37148 | | __ret = __builtin_bit_cast(float16x8_t, __p0); |
| 37149 | | return __ret; |
| 37150 | | } |
| 37151 | | __ai __attribute__((target("bf16,neon"))) int32x4_t vreinterpretq_s32_bf16(bfloat16x8_t __p0) { |
| 37152 | | int32x4_t __ret; |
| 37153 | | __ret = __builtin_bit_cast(int32x4_t, __p0); |
| 37154 | | return __ret; |
| 37155 | | } |
| 37156 | | __ai __attribute__((target("bf16,neon"))) int64x2_t vreinterpretq_s64_bf16(bfloat16x8_t __p0) { |
| 37157 | | int64x2_t __ret; |
| 37158 | | __ret = __builtin_bit_cast(int64x2_t, __p0); |
| 37159 | | return __ret; |
| 37160 | | } |
| 37161 | | __ai __attribute__((target("bf16,neon"))) int16x8_t vreinterpretq_s16_bf16(bfloat16x8_t __p0) { |
| 37162 | | int16x8_t __ret; |
| 37163 | | __ret = __builtin_bit_cast(int16x8_t, __p0); |
| 37164 | | return __ret; |
| 37165 | | } |
| 37166 | | __ai __attribute__((target("bf16,neon"))) uint8x8_t vreinterpret_u8_bf16(bfloat16x4_t __p0) { |
| 37167 | | uint8x8_t __ret; |
| 37168 | | __ret = __builtin_bit_cast(uint8x8_t, __p0); |
| 37169 | | return __ret; |
| 37170 | | } |
| 37171 | | __ai __attribute__((target("bf16,neon"))) uint32x2_t vreinterpret_u32_bf16(bfloat16x4_t __p0) { |
| 37172 | | uint32x2_t __ret; |
| 37173 | | __ret = __builtin_bit_cast(uint32x2_t, __p0); |
| 37174 | | return __ret; |
| 37175 | | } |
| 37176 | | __ai __attribute__((target("bf16,neon"))) uint64x1_t vreinterpret_u64_bf16(bfloat16x4_t __p0) { |
| 37177 | | uint64x1_t __ret; |
| 37178 | | __ret = __builtin_bit_cast(uint64x1_t, __p0); |
| 37179 | | return __ret; |
| 37180 | | } |
| 37181 | | __ai __attribute__((target("bf16,neon"))) uint16x4_t vreinterpret_u16_bf16(bfloat16x4_t __p0) { |
| 37182 | | uint16x4_t __ret; |
| 37183 | | __ret = __builtin_bit_cast(uint16x4_t, __p0); |
| 37184 | | return __ret; |
| 37185 | | } |
| 37186 | | __ai __attribute__((target("bf16,neon"))) int8x8_t vreinterpret_s8_bf16(bfloat16x4_t __p0) { |
| 37187 | | int8x8_t __ret; |
| 37188 | | __ret = __builtin_bit_cast(int8x8_t, __p0); |
| 37189 | | return __ret; |
| 37190 | | } |
| 37191 | | __ai __attribute__((target("bf16,neon"))) float32x2_t vreinterpret_f32_bf16(bfloat16x4_t __p0) { |
| 37192 | | float32x2_t __ret; |
| 37193 | | __ret = __builtin_bit_cast(float32x2_t, __p0); |
| 37194 | | return __ret; |
| 37195 | | } |
| 37196 | | __ai __attribute__((target("bf16,neon"))) float16x4_t vreinterpret_f16_bf16(bfloat16x4_t __p0) { |
| 37197 | | float16x4_t __ret; |
| 37198 | | __ret = __builtin_bit_cast(float16x4_t, __p0); |
| 37199 | | return __ret; |
| 37200 | | } |
| 37201 | | __ai __attribute__((target("bf16,neon"))) int32x2_t vreinterpret_s32_bf16(bfloat16x4_t __p0) { |
| 37202 | | int32x2_t __ret; |
| 37203 | | __ret = __builtin_bit_cast(int32x2_t, __p0); |
| 37204 | | return __ret; |
| 37205 | | } |
| 37206 | | __ai __attribute__((target("bf16,neon"))) int64x1_t vreinterpret_s64_bf16(bfloat16x4_t __p0) { |
| 37207 | | int64x1_t __ret; |
| 37208 | | __ret = __builtin_bit_cast(int64x1_t, __p0); |
| 37209 | | return __ret; |
| 37210 | | } |
| 37211 | | __ai __attribute__((target("bf16,neon"))) int16x4_t vreinterpret_s16_bf16(bfloat16x4_t __p0) { |
| 37212 | | int16x4_t __ret; |
| 37213 | | __ret = __builtin_bit_cast(int16x4_t, __p0); |
| 37214 | | return __ret; |
| 37215 | | } |
| 37216 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p8(poly8x16_t __p0) { |
| 37217 | | bfloat16x8_t __ret; |
| 37218 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37219 | | return __ret; |
| 37220 | | } |
| 37221 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p64(poly64x2_t __p0) { |
| 37222 | | bfloat16x8_t __ret; |
| 37223 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37224 | | return __ret; |
| 37225 | | } |
| 37226 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p16(poly16x8_t __p0) { |
| 37227 | | bfloat16x8_t __ret; |
| 37228 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37229 | | return __ret; |
| 37230 | | } |
| 37231 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u8(uint8x16_t __p0) { |
| 37232 | | bfloat16x8_t __ret; |
| 37233 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37234 | | return __ret; |
| 37235 | | } |
| 37236 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u32(uint32x4_t __p0) { |
| 37237 | | bfloat16x8_t __ret; |
| 37238 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37239 | | return __ret; |
| 37240 | | } |
| 37241 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u64(uint64x2_t __p0) { |
| 37242 | | bfloat16x8_t __ret; |
| 37243 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37244 | | return __ret; |
| 37245 | | } |
| 37246 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u16(uint16x8_t __p0) { |
| 37247 | | bfloat16x8_t __ret; |
| 37248 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37249 | | return __ret; |
| 37250 | | } |
| 37251 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s8(int8x16_t __p0) { |
| 37252 | | bfloat16x8_t __ret; |
| 37253 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37254 | | return __ret; |
| 37255 | | } |
| 37256 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_f32(float32x4_t __p0) { |
| 37257 | | bfloat16x8_t __ret; |
| 37258 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37259 | | return __ret; |
| 37260 | | } |
| 37261 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_f16(float16x8_t __p0) { |
| 37262 | | bfloat16x8_t __ret; |
| 37263 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37264 | | return __ret; |
| 37265 | | } |
| 37266 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s32(int32x4_t __p0) { |
| 37267 | | bfloat16x8_t __ret; |
| 37268 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37269 | | return __ret; |
| 37270 | | } |
| 37271 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s64(int64x2_t __p0) { |
| 37272 | | bfloat16x8_t __ret; |
| 37273 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37274 | | return __ret; |
| 37275 | | } |
| 37276 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s16(int16x8_t __p0) { |
| 37277 | | bfloat16x8_t __ret; |
| 37278 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 37279 | | return __ret; |
| 37280 | | } |
| 37281 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_p8(poly8x8_t __p0) { |
| 37282 | | bfloat16x4_t __ret; |
| 37283 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37284 | | return __ret; |
| 37285 | | } |
| 37286 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_p64(poly64x1_t __p0) { |
| 37287 | | bfloat16x4_t __ret; |
| 37288 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37289 | | return __ret; |
| 37290 | | } |
| 37291 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_p16(poly16x4_t __p0) { |
| 37292 | | bfloat16x4_t __ret; |
| 37293 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37294 | | return __ret; |
| 37295 | | } |
| 37296 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u8(uint8x8_t __p0) { |
| 37297 | | bfloat16x4_t __ret; |
| 37298 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37299 | | return __ret; |
| 37300 | | } |
| 37301 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u32(uint32x2_t __p0) { |
| 37302 | | bfloat16x4_t __ret; |
| 37303 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37304 | | return __ret; |
| 37305 | | } |
| 37306 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u64(uint64x1_t __p0) { |
| 37307 | | bfloat16x4_t __ret; |
| 37308 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37309 | | return __ret; |
| 37310 | | } |
| 37311 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u16(uint16x4_t __p0) { |
| 37312 | | bfloat16x4_t __ret; |
| 37313 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37314 | | return __ret; |
| 37315 | | } |
| 37316 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s8(int8x8_t __p0) { |
| 37317 | | bfloat16x4_t __ret; |
| 37318 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37319 | | return __ret; |
| 37320 | | } |
| 37321 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_f32(float32x2_t __p0) { |
| 37322 | | bfloat16x4_t __ret; |
| 37323 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37324 | | return __ret; |
| 37325 | | } |
| 37326 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_f16(float16x4_t __p0) { |
| 37327 | | bfloat16x4_t __ret; |
| 37328 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37329 | | return __ret; |
| 37330 | | } |
| 37331 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s32(int32x2_t __p0) { |
| 37332 | | bfloat16x4_t __ret; |
| 37333 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37334 | | return __ret; |
| 37335 | | } |
| 37336 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s64(int64x1_t __p0) { |
| 37337 | | bfloat16x4_t __ret; |
| 37338 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37339 | | return __ret; |
| 37340 | | } |
| 37341 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s16(int16x4_t __p0) { |
| 37342 | | bfloat16x4_t __ret; |
| 37343 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 37344 | | return __ret; |
| 37345 | | } |
| 37346 | 37086 | #ifdef __LITTLE_ENDIAN__ |
| 37347 | 37087 | #define vqdmulhq_lane_s32(__p0_214, __p1_214, __p2_214) __extension__ ({ \ |
| 37348 | 37088 | int32x4_t __ret_214; \ |
| ... | ... | @@ -38831,6 +38571,266 @@ __ai __attribute__((target("neon"))) int16x4_t vreinterpret_s16_s64(int64x1_t __ |
| 38831 | 38571 | __ret = __builtin_bit_cast(int16x4_t, __p0); |
| 38832 | 38572 | return __ret; |
| 38833 | 38573 | } |
| 38574 | __ai __attribute__((target("neon"))) poly8x8_t vreinterpret_p8_bf16(bfloat16x4_t __p0) { |
| 38575 | poly8x8_t __ret; |
| 38576 | __ret = __builtin_bit_cast(poly8x8_t, __p0); |
| 38577 | return __ret; |
| 38578 | } |
| 38579 | __ai __attribute__((target("neon"))) poly64x1_t vreinterpret_p64_bf16(bfloat16x4_t __p0) { |
| 38580 | poly64x1_t __ret; |
| 38581 | __ret = __builtin_bit_cast(poly64x1_t, __p0); |
| 38582 | return __ret; |
| 38583 | } |
| 38584 | __ai __attribute__((target("neon"))) poly16x4_t vreinterpret_p16_bf16(bfloat16x4_t __p0) { |
| 38585 | poly16x4_t __ret; |
| 38586 | __ret = __builtin_bit_cast(poly16x4_t, __p0); |
| 38587 | return __ret; |
| 38588 | } |
| 38589 | __ai __attribute__((target("neon"))) poly8x16_t vreinterpretq_p8_bf16(bfloat16x8_t __p0) { |
| 38590 | poly8x16_t __ret; |
| 38591 | __ret = __builtin_bit_cast(poly8x16_t, __p0); |
| 38592 | return __ret; |
| 38593 | } |
| 38594 | __ai __attribute__((target("neon"))) poly64x2_t vreinterpretq_p64_bf16(bfloat16x8_t __p0) { |
| 38595 | poly64x2_t __ret; |
| 38596 | __ret = __builtin_bit_cast(poly64x2_t, __p0); |
| 38597 | return __ret; |
| 38598 | } |
| 38599 | __ai __attribute__((target("neon"))) poly16x8_t vreinterpretq_p16_bf16(bfloat16x8_t __p0) { |
| 38600 | poly16x8_t __ret; |
| 38601 | __ret = __builtin_bit_cast(poly16x8_t, __p0); |
| 38602 | return __ret; |
| 38603 | } |
| 38604 | __ai __attribute__((target("neon"))) uint8x16_t vreinterpretq_u8_bf16(bfloat16x8_t __p0) { |
| 38605 | uint8x16_t __ret; |
| 38606 | __ret = __builtin_bit_cast(uint8x16_t, __p0); |
| 38607 | return __ret; |
| 38608 | } |
| 38609 | __ai __attribute__((target("neon"))) uint32x4_t vreinterpretq_u32_bf16(bfloat16x8_t __p0) { |
| 38610 | uint32x4_t __ret; |
| 38611 | __ret = __builtin_bit_cast(uint32x4_t, __p0); |
| 38612 | return __ret; |
| 38613 | } |
| 38614 | __ai __attribute__((target("neon"))) uint64x2_t vreinterpretq_u64_bf16(bfloat16x8_t __p0) { |
| 38615 | uint64x2_t __ret; |
| 38616 | __ret = __builtin_bit_cast(uint64x2_t, __p0); |
| 38617 | return __ret; |
| 38618 | } |
| 38619 | __ai __attribute__((target("neon"))) uint16x8_t vreinterpretq_u16_bf16(bfloat16x8_t __p0) { |
| 38620 | uint16x8_t __ret; |
| 38621 | __ret = __builtin_bit_cast(uint16x8_t, __p0); |
| 38622 | return __ret; |
| 38623 | } |
| 38624 | __ai __attribute__((target("neon"))) int8x16_t vreinterpretq_s8_bf16(bfloat16x8_t __p0) { |
| 38625 | int8x16_t __ret; |
| 38626 | __ret = __builtin_bit_cast(int8x16_t, __p0); |
| 38627 | return __ret; |
| 38628 | } |
| 38629 | __ai __attribute__((target("neon"))) float32x4_t vreinterpretq_f32_bf16(bfloat16x8_t __p0) { |
| 38630 | float32x4_t __ret; |
| 38631 | __ret = __builtin_bit_cast(float32x4_t, __p0); |
| 38632 | return __ret; |
| 38633 | } |
| 38634 | __ai __attribute__((target("neon"))) float16x8_t vreinterpretq_f16_bf16(bfloat16x8_t __p0) { |
| 38635 | float16x8_t __ret; |
| 38636 | __ret = __builtin_bit_cast(float16x8_t, __p0); |
| 38637 | return __ret; |
| 38638 | } |
| 38639 | __ai __attribute__((target("neon"))) int32x4_t vreinterpretq_s32_bf16(bfloat16x8_t __p0) { |
| 38640 | int32x4_t __ret; |
| 38641 | __ret = __builtin_bit_cast(int32x4_t, __p0); |
| 38642 | return __ret; |
| 38643 | } |
| 38644 | __ai __attribute__((target("neon"))) int64x2_t vreinterpretq_s64_bf16(bfloat16x8_t __p0) { |
| 38645 | int64x2_t __ret; |
| 38646 | __ret = __builtin_bit_cast(int64x2_t, __p0); |
| 38647 | return __ret; |
| 38648 | } |
| 38649 | __ai __attribute__((target("neon"))) int16x8_t vreinterpretq_s16_bf16(bfloat16x8_t __p0) { |
| 38650 | int16x8_t __ret; |
| 38651 | __ret = __builtin_bit_cast(int16x8_t, __p0); |
| 38652 | return __ret; |
| 38653 | } |
| 38654 | __ai __attribute__((target("neon"))) uint8x8_t vreinterpret_u8_bf16(bfloat16x4_t __p0) { |
| 38655 | uint8x8_t __ret; |
| 38656 | __ret = __builtin_bit_cast(uint8x8_t, __p0); |
| 38657 | return __ret; |
| 38658 | } |
| 38659 | __ai __attribute__((target("neon"))) uint32x2_t vreinterpret_u32_bf16(bfloat16x4_t __p0) { |
| 38660 | uint32x2_t __ret; |
| 38661 | __ret = __builtin_bit_cast(uint32x2_t, __p0); |
| 38662 | return __ret; |
| 38663 | } |
| 38664 | __ai __attribute__((target("neon"))) uint64x1_t vreinterpret_u64_bf16(bfloat16x4_t __p0) { |
| 38665 | uint64x1_t __ret; |
| 38666 | __ret = __builtin_bit_cast(uint64x1_t, __p0); |
| 38667 | return __ret; |
| 38668 | } |
| 38669 | __ai __attribute__((target("neon"))) uint16x4_t vreinterpret_u16_bf16(bfloat16x4_t __p0) { |
| 38670 | uint16x4_t __ret; |
| 38671 | __ret = __builtin_bit_cast(uint16x4_t, __p0); |
| 38672 | return __ret; |
| 38673 | } |
| 38674 | __ai __attribute__((target("neon"))) int8x8_t vreinterpret_s8_bf16(bfloat16x4_t __p0) { |
| 38675 | int8x8_t __ret; |
| 38676 | __ret = __builtin_bit_cast(int8x8_t, __p0); |
| 38677 | return __ret; |
| 38678 | } |
| 38679 | __ai __attribute__((target("neon"))) float32x2_t vreinterpret_f32_bf16(bfloat16x4_t __p0) { |
| 38680 | float32x2_t __ret; |
| 38681 | __ret = __builtin_bit_cast(float32x2_t, __p0); |
| 38682 | return __ret; |
| 38683 | } |
| 38684 | __ai __attribute__((target("neon"))) float16x4_t vreinterpret_f16_bf16(bfloat16x4_t __p0) { |
| 38685 | float16x4_t __ret; |
| 38686 | __ret = __builtin_bit_cast(float16x4_t, __p0); |
| 38687 | return __ret; |
| 38688 | } |
| 38689 | __ai __attribute__((target("neon"))) int32x2_t vreinterpret_s32_bf16(bfloat16x4_t __p0) { |
| 38690 | int32x2_t __ret; |
| 38691 | __ret = __builtin_bit_cast(int32x2_t, __p0); |
| 38692 | return __ret; |
| 38693 | } |
| 38694 | __ai __attribute__((target("neon"))) int64x1_t vreinterpret_s64_bf16(bfloat16x4_t __p0) { |
| 38695 | int64x1_t __ret; |
| 38696 | __ret = __builtin_bit_cast(int64x1_t, __p0); |
| 38697 | return __ret; |
| 38698 | } |
| 38699 | __ai __attribute__((target("neon"))) int16x4_t vreinterpret_s16_bf16(bfloat16x4_t __p0) { |
| 38700 | int16x4_t __ret; |
| 38701 | __ret = __builtin_bit_cast(int16x4_t, __p0); |
| 38702 | return __ret; |
| 38703 | } |
| 38704 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p8(poly8x16_t __p0) { |
| 38705 | bfloat16x8_t __ret; |
| 38706 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38707 | return __ret; |
| 38708 | } |
| 38709 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p64(poly64x2_t __p0) { |
| 38710 | bfloat16x8_t __ret; |
| 38711 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38712 | return __ret; |
| 38713 | } |
| 38714 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p16(poly16x8_t __p0) { |
| 38715 | bfloat16x8_t __ret; |
| 38716 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38717 | return __ret; |
| 38718 | } |
| 38719 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u8(uint8x16_t __p0) { |
| 38720 | bfloat16x8_t __ret; |
| 38721 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38722 | return __ret; |
| 38723 | } |
| 38724 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u32(uint32x4_t __p0) { |
| 38725 | bfloat16x8_t __ret; |
| 38726 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38727 | return __ret; |
| 38728 | } |
| 38729 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u64(uint64x2_t __p0) { |
| 38730 | bfloat16x8_t __ret; |
| 38731 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38732 | return __ret; |
| 38733 | } |
| 38734 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u16(uint16x8_t __p0) { |
| 38735 | bfloat16x8_t __ret; |
| 38736 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38737 | return __ret; |
| 38738 | } |
| 38739 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s8(int8x16_t __p0) { |
| 38740 | bfloat16x8_t __ret; |
| 38741 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38742 | return __ret; |
| 38743 | } |
| 38744 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_f32(float32x4_t __p0) { |
| 38745 | bfloat16x8_t __ret; |
| 38746 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38747 | return __ret; |
| 38748 | } |
| 38749 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_f16(float16x8_t __p0) { |
| 38750 | bfloat16x8_t __ret; |
| 38751 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38752 | return __ret; |
| 38753 | } |
| 38754 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s32(int32x4_t __p0) { |
| 38755 | bfloat16x8_t __ret; |
| 38756 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38757 | return __ret; |
| 38758 | } |
| 38759 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s64(int64x2_t __p0) { |
| 38760 | bfloat16x8_t __ret; |
| 38761 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38762 | return __ret; |
| 38763 | } |
| 38764 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s16(int16x8_t __p0) { |
| 38765 | bfloat16x8_t __ret; |
| 38766 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 38767 | return __ret; |
| 38768 | } |
| 38769 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_p8(poly8x8_t __p0) { |
| 38770 | bfloat16x4_t __ret; |
| 38771 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38772 | return __ret; |
| 38773 | } |
| 38774 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_p64(poly64x1_t __p0) { |
| 38775 | bfloat16x4_t __ret; |
| 38776 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38777 | return __ret; |
| 38778 | } |
| 38779 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_p16(poly16x4_t __p0) { |
| 38780 | bfloat16x4_t __ret; |
| 38781 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38782 | return __ret; |
| 38783 | } |
| 38784 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u8(uint8x8_t __p0) { |
| 38785 | bfloat16x4_t __ret; |
| 38786 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38787 | return __ret; |
| 38788 | } |
| 38789 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u32(uint32x2_t __p0) { |
| 38790 | bfloat16x4_t __ret; |
| 38791 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38792 | return __ret; |
| 38793 | } |
| 38794 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u64(uint64x1_t __p0) { |
| 38795 | bfloat16x4_t __ret; |
| 38796 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38797 | return __ret; |
| 38798 | } |
| 38799 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u16(uint16x4_t __p0) { |
| 38800 | bfloat16x4_t __ret; |
| 38801 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38802 | return __ret; |
| 38803 | } |
| 38804 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s8(int8x8_t __p0) { |
| 38805 | bfloat16x4_t __ret; |
| 38806 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38807 | return __ret; |
| 38808 | } |
| 38809 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_f32(float32x2_t __p0) { |
| 38810 | bfloat16x4_t __ret; |
| 38811 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38812 | return __ret; |
| 38813 | } |
| 38814 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_f16(float16x4_t __p0) { |
| 38815 | bfloat16x4_t __ret; |
| 38816 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38817 | return __ret; |
| 38818 | } |
| 38819 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s32(int32x2_t __p0) { |
| 38820 | bfloat16x4_t __ret; |
| 38821 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38822 | return __ret; |
| 38823 | } |
| 38824 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s64(int64x1_t __p0) { |
| 38825 | bfloat16x4_t __ret; |
| 38826 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38827 | return __ret; |
| 38828 | } |
| 38829 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s16(int16x4_t __p0) { |
| 38830 | bfloat16x4_t __ret; |
| 38831 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 38832 | return __ret; |
| 38833 | } |
| 38834 | 38834 | #endif |
| 38835 | 38835 | #if (__ARM_FP & 2) |
| 38836 | 38836 | #ifdef __LITTLE_ENDIAN__ |
| ... | ... | @@ -41141,6 +41141,174 @@ __ai __attribute__((target("neon"))) float32x2_t vfms_f32(float32x2_t __p0, floa |
| 41141 | 41141 | |
| 41142 | 41142 | #endif |
| 41143 | 41143 | #if defined(__aarch64__) |
| 41144 | #ifdef __LITTLE_ENDIAN__ |
| 41145 | __ai __attribute__((target("f16f32dot,neon"))) float32x4_t vdotq_f32_f16(float32x4_t __p0, float16x8_t __p1, float16x8_t __p2) { |
| 41146 | float32x4_t __ret; |
| 41147 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vdotq_f32_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 41148 | return __ret; |
| 41149 | } |
| 41150 | #else |
| 41151 | __ai __attribute__((target("f16f32dot,neon"))) float32x4_t vdotq_f32_f16(float32x4_t __p0, float16x8_t __p1, float16x8_t __p2) { |
| 41152 | float32x4_t __ret; |
| 41153 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 41154 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 41155 | float16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 41156 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vdotq_f32_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 41157 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 41158 | return __ret; |
| 41159 | } |
| 41160 | #endif |
| 41161 | |
| 41162 | #ifdef __LITTLE_ENDIAN__ |
| 41163 | __ai __attribute__((target("f16f32dot,neon"))) float32x2_t vdot_f32_f16(float32x2_t __p0, float16x4_t __p1, float16x4_t __p2) { |
| 41164 | float32x2_t __ret; |
| 41165 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vdot_f32_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), __builtin_bit_cast(int8x8_t, __p2), 9)); |
| 41166 | return __ret; |
| 41167 | } |
| 41168 | #else |
| 41169 | __ai __attribute__((target("f16f32dot,neon"))) float32x2_t vdot_f32_f16(float32x2_t __p0, float16x4_t __p1, float16x4_t __p2) { |
| 41170 | float32x2_t __ret; |
| 41171 | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 41172 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 41173 | float16x4_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_64_16); |
| 41174 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vdot_f32_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __builtin_bit_cast(int8x8_t, __rev2), 9)); |
| 41175 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 41176 | return __ret; |
| 41177 | } |
| 41178 | #endif |
| 41179 | |
| 41180 | #ifdef __LITTLE_ENDIAN__ |
| 41181 | #define vdotq_lane_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41182 | float32x4_t __ret; \ |
| 41183 | float32x4_t __s0 = __p0; \ |
| 41184 | float16x8_t __s1 = __p1; \ |
| 41185 | float16x4_t __s2 = __p2; \ |
| 41186 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vdotq_lane_f32_f16(__builtin_bit_cast(int8x16_t, __s0), __builtin_bit_cast(int8x16_t, __s1), __builtin_bit_cast(int8x8_t, __s2), __p3, 41)); \ |
| 41187 | __ret; \ |
| 41188 | }) |
| 41189 | #else |
| 41190 | #define vdotq_lane_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41191 | float32x4_t __ret; \ |
| 41192 | float32x4_t __s0 = __p0; \ |
| 41193 | float16x8_t __s1 = __p1; \ |
| 41194 | float16x4_t __s2 = __p2; \ |
| 41195 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_32); \ |
| 41196 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 41197 | float16x4_t __rev2; __rev2 = __builtin_shufflevector(__s2, __s2, __lane_reverse_64_16); \ |
| 41198 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vdotq_lane_f32_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x8_t, __rev2), __p3, 41)); \ |
| 41199 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); \ |
| 41200 | __ret; \ |
| 41201 | }) |
| 41202 | #endif |
| 41203 | |
| 41204 | #ifdef __LITTLE_ENDIAN__ |
| 41205 | #define vdot_lane_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41206 | float32x2_t __ret; \ |
| 41207 | float32x2_t __s0 = __p0; \ |
| 41208 | float16x4_t __s1 = __p1; \ |
| 41209 | float16x4_t __s2 = __p2; \ |
| 41210 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vdot_lane_f32_f16(__builtin_bit_cast(int8x8_t, __s0), __builtin_bit_cast(int8x8_t, __s1), __builtin_bit_cast(int8x8_t, __s2), __p3, 9)); \ |
| 41211 | __ret; \ |
| 41212 | }) |
| 41213 | #else |
| 41214 | #define vdot_lane_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41215 | float32x2_t __ret; \ |
| 41216 | float32x2_t __s0 = __p0; \ |
| 41217 | float16x4_t __s1 = __p1; \ |
| 41218 | float16x4_t __s2 = __p2; \ |
| 41219 | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_32); \ |
| 41220 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 41221 | float16x4_t __rev2; __rev2 = __builtin_shufflevector(__s2, __s2, __lane_reverse_64_16); \ |
| 41222 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vdot_lane_f32_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __builtin_bit_cast(int8x8_t, __rev2), __p3, 9)); \ |
| 41223 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); \ |
| 41224 | __ret; \ |
| 41225 | }) |
| 41226 | #endif |
| 41227 | |
| 41228 | #ifdef __LITTLE_ENDIAN__ |
| 41229 | #define vdotq_laneq_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41230 | float32x4_t __ret; \ |
| 41231 | float32x4_t __s0 = __p0; \ |
| 41232 | float16x8_t __s1 = __p1; \ |
| 41233 | float16x8_t __s2 = __p2; \ |
| 41234 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vdotq_laneq_f32_f16(__builtin_bit_cast(int8x16_t, __s0), __builtin_bit_cast(int8x16_t, __s1), __builtin_bit_cast(int8x16_t, __s2), __p3, 41)); \ |
| 41235 | __ret; \ |
| 41236 | }) |
| 41237 | #else |
| 41238 | #define vdotq_laneq_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41239 | float32x4_t __ret; \ |
| 41240 | float32x4_t __s0 = __p0; \ |
| 41241 | float16x8_t __s1 = __p1; \ |
| 41242 | float16x8_t __s2 = __p2; \ |
| 41243 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_32); \ |
| 41244 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 41245 | float16x8_t __rev2; __rev2 = __builtin_shufflevector(__s2, __s2, __lane_reverse_128_16); \ |
| 41246 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vdotq_laneq_f32_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), __p3, 41)); \ |
| 41247 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); \ |
| 41248 | __ret; \ |
| 41249 | }) |
| 41250 | #endif |
| 41251 | |
| 41252 | #ifdef __LITTLE_ENDIAN__ |
| 41253 | #define vdot_laneq_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41254 | float32x2_t __ret; \ |
| 41255 | float32x2_t __s0 = __p0; \ |
| 41256 | float16x4_t __s1 = __p1; \ |
| 41257 | float16x8_t __s2 = __p2; \ |
| 41258 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vdot_laneq_f32_f16(__builtin_bit_cast(int8x8_t, __s0), __builtin_bit_cast(int8x8_t, __s1), __builtin_bit_cast(int8x16_t, __s2), __p3, 9)); \ |
| 41259 | __ret; \ |
| 41260 | }) |
| 41261 | #else |
| 41262 | #define vdot_laneq_f32_f16(__p0, __p1, __p2, __p3) __extension__ ({ \ |
| 41263 | float32x2_t __ret; \ |
| 41264 | float32x2_t __s0 = __p0; \ |
| 41265 | float16x4_t __s1 = __p1; \ |
| 41266 | float16x8_t __s2 = __p2; \ |
| 41267 | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_32); \ |
| 41268 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 41269 | float16x8_t __rev2; __rev2 = __builtin_shufflevector(__s2, __s2, __lane_reverse_128_16); \ |
| 41270 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vdot_laneq_f32_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), __p3, 9)); \ |
| 41271 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); \ |
| 41272 | __ret; \ |
| 41273 | }) |
| 41274 | #endif |
| 41275 | |
| 41276 | #ifdef __LITTLE_ENDIAN__ |
| 41277 | __ai __attribute__((target("f16f32mm,neon"))) float32x4_t vmmlaq_f32_f16(float32x4_t __p0, float16x8_t __p1, float16x8_t __p2) { |
| 41278 | float32x4_t __ret; |
| 41279 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vmmlaq_f32_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 41)); |
| 41280 | return __ret; |
| 41281 | } |
| 41282 | #else |
| 41283 | __ai __attribute__((target("f16f32mm,neon"))) float32x4_t vmmlaq_f32_f16(float32x4_t __p0, float16x8_t __p1, float16x8_t __p2) { |
| 41284 | float32x4_t __ret; |
| 41285 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 41286 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 41287 | float16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 41288 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vmmlaq_f32_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 41)); |
| 41289 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 41290 | return __ret; |
| 41291 | } |
| 41292 | #endif |
| 41293 | |
| 41294 | #ifdef __LITTLE_ENDIAN__ |
| 41295 | __ai __attribute__((target("f16mm,neon"))) float16x8_t vmmlaq_f16(float16x8_t __p0, float16x8_t __p1, float16x8_t __p2) { |
| 41296 | float16x8_t __ret; |
| 41297 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmmlaq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), __builtin_bit_cast(int8x16_t, __p2), 40)); |
| 41298 | return __ret; |
| 41299 | } |
| 41300 | #else |
| 41301 | __ai __attribute__((target("f16mm,neon"))) float16x8_t vmmlaq_f16(float16x8_t __p0, float16x8_t __p1, float16x8_t __p2) { |
| 41302 | float16x8_t __ret; |
| 41303 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 41304 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 41305 | float16x8_t __rev2; __rev2 = __builtin_shufflevector(__p2, __p2, __lane_reverse_128_16); |
| 41306 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmmlaq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __builtin_bit_cast(int8x16_t, __rev2), 40)); |
| 41307 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 41308 | return __ret; |
| 41309 | } |
| 41310 | #endif |
| 41311 | |
| 41144 | 41312 | #ifdef __LITTLE_ENDIAN__ |
| 41145 | 41313 | __ai __attribute__((target("f8f16mm,neon"))) float16x8_t vmmlaq_f16_mf8_fpm(float16x8_t __p0, mfloat8x16_t __p1, mfloat8x16_t __p2, fpm_t __p3) { |
| 41146 | 41314 | float16x8_t __ret; |
| ... | ... | @@ -42391,6 +42559,48 @@ __ai __attribute__((target("fp8fma,neon"))) float16x8_t vmlaltq_f16_mf8_fpm(floa |
| 42391 | 42559 | }) |
| 42392 | 42560 | #endif |
| 42393 | 42561 | |
| 42562 | #ifdef __LITTLE_ENDIAN__ |
| 42563 | #define vluti2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42564 | bfloat16x8_t __ret; \ |
| 42565 | bfloat16x8_t __s0 = __p0; \ |
| 42566 | uint8x8_t __s1 = __p1; \ |
| 42567 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_lane_bf16(__builtin_bit_cast(int8x16_t, __s0), __builtin_bit_cast(int8x8_t, __s1), __p2, 43)); \ |
| 42568 | __ret; \ |
| 42569 | }) |
| 42570 | #else |
| 42571 | #define vluti2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42572 | bfloat16x8_t __ret; \ |
| 42573 | bfloat16x8_t __s0 = __p0; \ |
| 42574 | uint8x8_t __s1 = __p1; \ |
| 42575 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 42576 | uint8x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_8); \ |
| 42577 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_lane_bf16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __p2, 43)); \ |
| 42578 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 42579 | __ret; \ |
| 42580 | }) |
| 42581 | #endif |
| 42582 | |
| 42583 | #ifdef __LITTLE_ENDIAN__ |
| 42584 | #define vluti2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42585 | bfloat16x8_t __ret; \ |
| 42586 | bfloat16x4_t __s0 = __p0; \ |
| 42587 | uint8x8_t __s1 = __p1; \ |
| 42588 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_lane_bf16(__builtin_bit_cast(int8x8_t, __s0), __builtin_bit_cast(int8x8_t, __s1), __p2, 43)); \ |
| 42589 | __ret; \ |
| 42590 | }) |
| 42591 | #else |
| 42592 | #define vluti2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42593 | bfloat16x8_t __ret; \ |
| 42594 | bfloat16x4_t __s0 = __p0; \ |
| 42595 | uint8x8_t __s1 = __p1; \ |
| 42596 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 42597 | uint8x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_8); \ |
| 42598 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_lane_bf16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __p2, 43)); \ |
| 42599 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 42600 | __ret; \ |
| 42601 | }) |
| 42602 | #endif |
| 42603 | |
| 42394 | 42604 | #ifdef __LITTLE_ENDIAN__ |
| 42395 | 42605 | #define vluti2_lane_p16(__p0, __p1, __p2) __extension__ ({ \ |
| 42396 | 42606 | poly16x8_t __ret; \ |
| ... | ... | @@ -42559,6 +42769,48 @@ __ai __attribute__((target("fp8fma,neon"))) float16x8_t vmlaltq_f16_mf8_fpm(floa |
| 42559 | 42769 | }) |
| 42560 | 42770 | #endif |
| 42561 | 42771 | |
| 42772 | #ifdef __LITTLE_ENDIAN__ |
| 42773 | #define vluti2q_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42774 | bfloat16x8_t __ret; \ |
| 42775 | bfloat16x8_t __s0 = __p0; \ |
| 42776 | uint8x16_t __s1 = __p1; \ |
| 42777 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_laneq_bf16(__builtin_bit_cast(int8x16_t, __s0), __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 42778 | __ret; \ |
| 42779 | }) |
| 42780 | #else |
| 42781 | #define vluti2q_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42782 | bfloat16x8_t __ret; \ |
| 42783 | bfloat16x8_t __s0 = __p0; \ |
| 42784 | uint8x16_t __s1 = __p1; \ |
| 42785 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 42786 | uint8x16_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_8); \ |
| 42787 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_laneq_bf16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 42788 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 42789 | __ret; \ |
| 42790 | }) |
| 42791 | #endif |
| 42792 | |
| 42793 | #ifdef __LITTLE_ENDIAN__ |
| 42794 | #define vluti2_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42795 | bfloat16x8_t __ret; \ |
| 42796 | bfloat16x4_t __s0 = __p0; \ |
| 42797 | uint8x16_t __s1 = __p1; \ |
| 42798 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_laneq_bf16(__builtin_bit_cast(int8x8_t, __s0), __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 42799 | __ret; \ |
| 42800 | }) |
| 42801 | #else |
| 42802 | #define vluti2_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 42803 | bfloat16x8_t __ret; \ |
| 42804 | bfloat16x4_t __s0 = __p0; \ |
| 42805 | uint8x16_t __s1 = __p1; \ |
| 42806 | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 42807 | uint8x16_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_8); \ |
| 42808 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_laneq_bf16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 42809 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 42810 | __ret; \ |
| 42811 | }) |
| 42812 | #endif |
| 42813 | |
| 42562 | 42814 | #ifdef __LITTLE_ENDIAN__ |
| 42563 | 42815 | #define vluti2_laneq_p8(__p0, __p1, __p2) __extension__ ({ \ |
| 42564 | 42816 | poly8x16_t __ret; \ |
| ... | ... | @@ -42979,6 +43231,29 @@ __ai __attribute__((target("fp8fma,neon"))) float16x8_t vmlaltq_f16_mf8_fpm(floa |
| 42979 | 43231 | }) |
| 42980 | 43232 | #endif |
| 42981 | 43233 | |
| 43234 | #ifdef __LITTLE_ENDIAN__ |
| 43235 | #define vluti4q_lane_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43236 | bfloat16x8_t __ret; \ |
| 43237 | bfloat16x8x2_t __s0 = __p0; \ |
| 43238 | uint8x8_t __s1 = __p1; \ |
| 43239 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_lane_bf16_x2(__builtin_bit_cast(int8x16_t, __s0.val[0]), __builtin_bit_cast(int8x16_t, __s0.val[1]), __builtin_bit_cast(int8x8_t, __s1), __p2, 43)); \ |
| 43240 | __ret; \ |
| 43241 | }) |
| 43242 | #else |
| 43243 | #define vluti4q_lane_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43244 | bfloat16x8_t __ret; \ |
| 43245 | bfloat16x8x2_t __s0 = __p0; \ |
| 43246 | uint8x8_t __s1 = __p1; \ |
| 43247 | bfloat16x8x2_t __rev0; \ |
| 43248 | __rev0.val[0] = __builtin_shufflevector(__s0.val[0], __s0.val[0], __lane_reverse_128_16); \ |
| 43249 | __rev0.val[1] = __builtin_shufflevector(__s0.val[1], __s0.val[1], __lane_reverse_128_16); \ |
| 43250 | uint8x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_8); \ |
| 43251 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_lane_bf16_x2(__builtin_bit_cast(int8x16_t, __rev0.val[0]), __builtin_bit_cast(int8x16_t, __rev0.val[1]), __builtin_bit_cast(int8x8_t, __rev1), __p2, 43)); \ |
| 43252 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43253 | __ret; \ |
| 43254 | }) |
| 43255 | #endif |
| 43256 | |
| 42982 | 43257 | #ifdef __LITTLE_ENDIAN__ |
| 42983 | 43258 | #define vluti4q_lane_p16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 42984 | 43259 | poly16x8_t __ret; \ |
| ... | ... | @@ -43155,6 +43430,29 @@ __ai __attribute__((target("fp8fma,neon"))) float16x8_t vmlaltq_f16_mf8_fpm(floa |
| 43155 | 43430 | }) |
| 43156 | 43431 | #endif |
| 43157 | 43432 | |
| 43433 | #ifdef __LITTLE_ENDIAN__ |
| 43434 | #define vluti4q_laneq_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43435 | bfloat16x8_t __ret; \ |
| 43436 | bfloat16x8x2_t __s0 = __p0; \ |
| 43437 | uint8x16_t __s1 = __p1; \ |
| 43438 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_laneq_bf16_x2(__builtin_bit_cast(int8x16_t, __s0.val[0]), __builtin_bit_cast(int8x16_t, __s0.val[1]), __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 43439 | __ret; \ |
| 43440 | }) |
| 43441 | #else |
| 43442 | #define vluti4q_laneq_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43443 | bfloat16x8_t __ret; \ |
| 43444 | bfloat16x8x2_t __s0 = __p0; \ |
| 43445 | uint8x16_t __s1 = __p1; \ |
| 43446 | bfloat16x8x2_t __rev0; \ |
| 43447 | __rev0.val[0] = __builtin_shufflevector(__s0.val[0], __s0.val[0], __lane_reverse_128_16); \ |
| 43448 | __rev0.val[1] = __builtin_shufflevector(__s0.val[1], __s0.val[1], __lane_reverse_128_16); \ |
| 43449 | uint8x16_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_8); \ |
| 43450 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_laneq_bf16_x2(__builtin_bit_cast(int8x16_t, __rev0.val[0]), __builtin_bit_cast(int8x16_t, __rev0.val[1]), __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 43451 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43452 | __ret; \ |
| 43453 | }) |
| 43454 | #endif |
| 43455 | |
| 43158 | 43456 | #ifdef __LITTLE_ENDIAN__ |
| 43159 | 43457 | #define vluti4q_laneq_p16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43160 | 43458 | poly16x8_t __ret; \ |
| ... | ... | @@ -43247,136 +43545,6 @@ __ai __attribute__((target("fp8fma,neon"))) float16x8_t vmlaltq_f16_mf8_fpm(floa |
| 43247 | 43545 | }) |
| 43248 | 43546 | #endif |
| 43249 | 43547 | |
| 43250 | | #ifdef __LITTLE_ENDIAN__ |
| 43251 | | #define vluti2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43252 | | bfloat16x8_t __ret; \ |
| 43253 | | bfloat16x8_t __s0 = __p0; \ |
| 43254 | | uint8x8_t __s1 = __p1; \ |
| 43255 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_lane_bf16(__builtin_bit_cast(int8x16_t, __s0), __builtin_bit_cast(int8x8_t, __s1), __p2, 43)); \ |
| 43256 | | __ret; \ |
| 43257 | | }) |
| 43258 | | #else |
| 43259 | | #define vluti2q_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43260 | | bfloat16x8_t __ret; \ |
| 43261 | | bfloat16x8_t __s0 = __p0; \ |
| 43262 | | uint8x8_t __s1 = __p1; \ |
| 43263 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 43264 | | uint8x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_8); \ |
| 43265 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_lane_bf16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __p2, 43)); \ |
| 43266 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43267 | | __ret; \ |
| 43268 | | }) |
| 43269 | | #endif |
| 43270 | | |
| 43271 | | #ifdef __LITTLE_ENDIAN__ |
| 43272 | | #define vluti2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43273 | | bfloat16x8_t __ret; \ |
| 43274 | | bfloat16x4_t __s0 = __p0; \ |
| 43275 | | uint8x8_t __s1 = __p1; \ |
| 43276 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_lane_bf16(__builtin_bit_cast(int8x8_t, __s0), __builtin_bit_cast(int8x8_t, __s1), __p2, 43)); \ |
| 43277 | | __ret; \ |
| 43278 | | }) |
| 43279 | | #else |
| 43280 | | #define vluti2_lane_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43281 | | bfloat16x8_t __ret; \ |
| 43282 | | bfloat16x4_t __s0 = __p0; \ |
| 43283 | | uint8x8_t __s1 = __p1; \ |
| 43284 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 43285 | | uint8x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_8); \ |
| 43286 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_lane_bf16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), __p2, 43)); \ |
| 43287 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43288 | | __ret; \ |
| 43289 | | }) |
| 43290 | | #endif |
| 43291 | | |
| 43292 | | #ifdef __LITTLE_ENDIAN__ |
| 43293 | | #define vluti2q_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43294 | | bfloat16x8_t __ret; \ |
| 43295 | | bfloat16x8_t __s0 = __p0; \ |
| 43296 | | uint8x16_t __s1 = __p1; \ |
| 43297 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_laneq_bf16(__builtin_bit_cast(int8x16_t, __s0), __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 43298 | | __ret; \ |
| 43299 | | }) |
| 43300 | | #else |
| 43301 | | #define vluti2q_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43302 | | bfloat16x8_t __ret; \ |
| 43303 | | bfloat16x8_t __s0 = __p0; \ |
| 43304 | | uint8x16_t __s1 = __p1; \ |
| 43305 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 43306 | | uint8x16_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_8); \ |
| 43307 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2q_laneq_bf16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 43308 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43309 | | __ret; \ |
| 43310 | | }) |
| 43311 | | #endif |
| 43312 | | |
| 43313 | | #ifdef __LITTLE_ENDIAN__ |
| 43314 | | #define vluti2_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43315 | | bfloat16x8_t __ret; \ |
| 43316 | | bfloat16x4_t __s0 = __p0; \ |
| 43317 | | uint8x16_t __s1 = __p1; \ |
| 43318 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_laneq_bf16(__builtin_bit_cast(int8x8_t, __s0), __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 43319 | | __ret; \ |
| 43320 | | }) |
| 43321 | | #else |
| 43322 | | #define vluti2_laneq_bf16(__p0, __p1, __p2) __extension__ ({ \ |
| 43323 | | bfloat16x8_t __ret; \ |
| 43324 | | bfloat16x4_t __s0 = __p0; \ |
| 43325 | | uint8x16_t __s1 = __p1; \ |
| 43326 | | bfloat16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 43327 | | uint8x16_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_8); \ |
| 43328 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti2_laneq_bf16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 43329 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43330 | | __ret; \ |
| 43331 | | }) |
| 43332 | | #endif |
| 43333 | | |
| 43334 | | #ifdef __LITTLE_ENDIAN__ |
| 43335 | | #define vluti4q_lane_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43336 | | bfloat16x8_t __ret; \ |
| 43337 | | bfloat16x8x2_t __s0 = __p0; \ |
| 43338 | | uint8x8_t __s1 = __p1; \ |
| 43339 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_lane_bf16_x2(__builtin_bit_cast(int8x16_t, __s0.val[0]), __builtin_bit_cast(int8x16_t, __s0.val[1]), __builtin_bit_cast(int8x8_t, __s1), __p2, 43)); \ |
| 43340 | | __ret; \ |
| 43341 | | }) |
| 43342 | | #else |
| 43343 | | #define vluti4q_lane_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43344 | | bfloat16x8_t __ret; \ |
| 43345 | | bfloat16x8x2_t __s0 = __p0; \ |
| 43346 | | uint8x8_t __s1 = __p1; \ |
| 43347 | | bfloat16x8x2_t __rev0; \ |
| 43348 | | __rev0.val[0] = __builtin_shufflevector(__s0.val[0], __s0.val[0], __lane_reverse_128_16); \ |
| 43349 | | __rev0.val[1] = __builtin_shufflevector(__s0.val[1], __s0.val[1], __lane_reverse_128_16); \ |
| 43350 | | uint8x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_8); \ |
| 43351 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_lane_bf16_x2(__builtin_bit_cast(int8x16_t, __rev0.val[0]), __builtin_bit_cast(int8x16_t, __rev0.val[1]), __builtin_bit_cast(int8x8_t, __rev1), __p2, 43)); \ |
| 43352 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43353 | | __ret; \ |
| 43354 | | }) |
| 43355 | | #endif |
| 43356 | | |
| 43357 | | #ifdef __LITTLE_ENDIAN__ |
| 43358 | | #define vluti4q_laneq_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43359 | | bfloat16x8_t __ret; \ |
| 43360 | | bfloat16x8x2_t __s0 = __p0; \ |
| 43361 | | uint8x16_t __s1 = __p1; \ |
| 43362 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_laneq_bf16_x2(__builtin_bit_cast(int8x16_t, __s0.val[0]), __builtin_bit_cast(int8x16_t, __s0.val[1]), __builtin_bit_cast(int8x16_t, __s1), __p2, 43)); \ |
| 43363 | | __ret; \ |
| 43364 | | }) |
| 43365 | | #else |
| 43366 | | #define vluti4q_laneq_bf16_x2(__p0, __p1, __p2) __extension__ ({ \ |
| 43367 | | bfloat16x8_t __ret; \ |
| 43368 | | bfloat16x8x2_t __s0 = __p0; \ |
| 43369 | | uint8x16_t __s1 = __p1; \ |
| 43370 | | bfloat16x8x2_t __rev0; \ |
| 43371 | | __rev0.val[0] = __builtin_shufflevector(__s0.val[0], __s0.val[0], __lane_reverse_128_16); \ |
| 43372 | | __rev0.val[1] = __builtin_shufflevector(__s0.val[1], __s0.val[1], __lane_reverse_128_16); \ |
| 43373 | | uint8x16_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_8); \ |
| 43374 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vluti4q_laneq_bf16_x2(__builtin_bit_cast(int8x16_t, __rev0.val[0]), __builtin_bit_cast(int8x16_t, __rev0.val[1]), __builtin_bit_cast(int8x16_t, __rev1), __p2, 43)); \ |
| 43375 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 43376 | | __ret; \ |
| 43377 | | }) |
| 43378 | | #endif |
| 43379 | | |
| 43380 | 43548 | #ifdef __LITTLE_ENDIAN__ |
| 43381 | 43549 | #define splatq_lane_mf8(__p0, __p1) __extension__ ({ \ |
| 43382 | 43550 | mfloat8x16_t __ret; \ |
| ... | ... | @@ -44171,698 +44339,324 @@ __ai __attribute__((target("neon"))) mfloat8x8x2_t vzip_mf8(mfloat8x8_t __p0, mf |
| 44171 | 44339 | #endif |
| 44172 | 44340 | |
| 44173 | 44341 | #ifdef __LITTLE_ENDIAN__ |
| 44174 | | __ai __attribute__((target("neon,faminmax"))) float64x2_t vamaxq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44175 | | float64x2_t __ret; |
| 44176 | | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vamaxq_f64(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 42)); |
| 44177 | | return __ret; |
| 44178 | | } |
| 44179 | | #else |
| 44180 | | __ai __attribute__((target("neon,faminmax"))) float64x2_t vamaxq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44181 | | float64x2_t __ret; |
| 44182 | | float64x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_64); |
| 44183 | | float64x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_64); |
| 44184 | | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vamaxq_f64(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 42)); |
| 44185 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_64); |
| 44186 | | return __ret; |
| 44187 | | } |
| 44188 | | #endif |
| 44189 | | |
| 44190 | | #ifdef __LITTLE_ENDIAN__ |
| 44191 | | __ai __attribute__((target("neon,faminmax"))) float32x4_t vamaxq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44192 | | float32x4_t __ret; |
| 44193 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vamaxq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 41)); |
| 44194 | | return __ret; |
| 44195 | | } |
| 44196 | | #else |
| 44197 | | __ai __attribute__((target("neon,faminmax"))) float32x4_t vamaxq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44198 | | float32x4_t __ret; |
| 44199 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44200 | | float32x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_32); |
| 44201 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vamaxq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 41)); |
| 44202 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 44203 | | return __ret; |
| 44204 | | } |
| 44205 | | #endif |
| 44206 | | |
| 44207 | | #ifdef __LITTLE_ENDIAN__ |
| 44208 | | __ai __attribute__((target("neon,faminmax"))) float16x8_t vamaxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44209 | | float16x8_t __ret; |
| 44210 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vamaxq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 44211 | | return __ret; |
| 44212 | | } |
| 44213 | | #else |
| 44214 | | __ai __attribute__((target("neon,faminmax"))) float16x8_t vamaxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44215 | | float16x8_t __ret; |
| 44216 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 44217 | | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 44218 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vamaxq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 40)); |
| 44219 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44220 | | return __ret; |
| 44221 | | } |
| 44222 | | #endif |
| 44223 | | |
| 44224 | | #ifdef __LITTLE_ENDIAN__ |
| 44225 | | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamax_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44226 | | float32x2_t __ret; |
| 44227 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamax_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 9)); |
| 44228 | | return __ret; |
| 44229 | | } |
| 44230 | | #else |
| 44231 | | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamax_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44232 | | float32x2_t __ret; |
| 44233 | | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 44234 | | float32x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_32); |
| 44235 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamax_f32(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 9)); |
| 44236 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 44237 | | return __ret; |
| 44238 | | } |
| 44239 | | #endif |
| 44240 | | |
| 44241 | | #ifdef __LITTLE_ENDIAN__ |
| 44242 | | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamax_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44243 | | float16x4_t __ret; |
| 44244 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamax_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 44245 | | return __ret; |
| 44246 | | } |
| 44247 | | #else |
| 44248 | | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamax_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44249 | | float16x4_t __ret; |
| 44250 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 44251 | | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 44252 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamax_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 8)); |
| 44253 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 44254 | | return __ret; |
| 44255 | | } |
| 44256 | | #endif |
| 44257 | | |
| 44258 | | #ifdef __LITTLE_ENDIAN__ |
| 44259 | | __ai __attribute__((target("neon,faminmax"))) float64x2_t vaminq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44260 | | float64x2_t __ret; |
| 44261 | | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vaminq_f64(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 42)); |
| 44262 | | return __ret; |
| 44263 | | } |
| 44264 | | #else |
| 44265 | | __ai __attribute__((target("neon,faminmax"))) float64x2_t vaminq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44266 | | float64x2_t __ret; |
| 44267 | | float64x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_64); |
| 44268 | | float64x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_64); |
| 44269 | | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vaminq_f64(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 42)); |
| 44270 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_64); |
| 44271 | | return __ret; |
| 44272 | | } |
| 44273 | | #endif |
| 44274 | | |
| 44275 | | #ifdef __LITTLE_ENDIAN__ |
| 44276 | | __ai __attribute__((target("neon,faminmax"))) float32x4_t vaminq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44277 | | float32x4_t __ret; |
| 44278 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vaminq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 41)); |
| 44279 | | return __ret; |
| 44280 | | } |
| 44281 | | #else |
| 44282 | | __ai __attribute__((target("neon,faminmax"))) float32x4_t vaminq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44283 | | float32x4_t __ret; |
| 44284 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44285 | | float32x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_32); |
| 44286 | | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vaminq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 41)); |
| 44287 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 44288 | | return __ret; |
| 44289 | | } |
| 44290 | | #endif |
| 44291 | | |
| 44292 | | #ifdef __LITTLE_ENDIAN__ |
| 44293 | | __ai __attribute__((target("neon,faminmax"))) float16x8_t vaminq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44294 | | float16x8_t __ret; |
| 44295 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vaminq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 44296 | | return __ret; |
| 44297 | | } |
| 44298 | | #else |
| 44299 | | __ai __attribute__((target("neon,faminmax"))) float16x8_t vaminq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44300 | | float16x8_t __ret; |
| 44301 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 44302 | | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 44303 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vaminq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 40)); |
| 44304 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44305 | | return __ret; |
| 44306 | | } |
| 44307 | | #endif |
| 44308 | | |
| 44309 | | #ifdef __LITTLE_ENDIAN__ |
| 44310 | | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamin_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44311 | | float32x2_t __ret; |
| 44312 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamin_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 9)); |
| 44313 | | return __ret; |
| 44314 | | } |
| 44315 | | #else |
| 44316 | | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamin_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44317 | | float32x2_t __ret; |
| 44318 | | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 44319 | | float32x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_32); |
| 44320 | | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamin_f32(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 9)); |
| 44321 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 44322 | | return __ret; |
| 44323 | | } |
| 44324 | | #endif |
| 44325 | | |
| 44326 | | #ifdef __LITTLE_ENDIAN__ |
| 44327 | | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamin_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44328 | | float16x4_t __ret; |
| 44329 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamin_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 44330 | | return __ret; |
| 44331 | | } |
| 44332 | | #else |
| 44333 | | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamin_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44334 | | float16x4_t __ret; |
| 44335 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 44336 | | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 44337 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamin_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 8)); |
| 44338 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 44339 | | return __ret; |
| 44340 | | } |
| 44341 | | #endif |
| 44342 | | |
| 44343 | | #endif |
| 44344 | | #if defined(__aarch64__) || defined(__arm64ec__) |
| 44345 | | __ai __attribute__((target("aes,neon"))) poly128_t vmull_p64(poly64_t __p0, poly64_t __p1) { |
| 44346 | | poly128_t __ret; |
| 44347 | | __ret = __builtin_bit_cast(poly128_t, __builtin_neon_vmull_p64(__p0, __p1)); |
| 44348 | | return __ret; |
| 44349 | | } |
| 44350 | | #ifdef __LITTLE_ENDIAN__ |
| 44351 | | #define vcopyq_lane_bf16(__p0_234, __p1_234, __p2_234, __p3_234) __extension__ ({ \ |
| 44352 | | bfloat16x8_t __ret_234; \ |
| 44353 | | bfloat16x8_t __s0_234 = __p0_234; \ |
| 44354 | | bfloat16x4_t __s2_234 = __p2_234; \ |
| 44355 | | __ret_234 = vsetq_lane_bf16(vget_lane_bf16(__s2_234, __p3_234), __s0_234, __p1_234); \ |
| 44356 | | __ret_234; \ |
| 44357 | | }) |
| 44358 | | #else |
| 44359 | | #define vcopyq_lane_bf16(__p0_235, __p1_235, __p2_235, __p3_235) __extension__ ({ \ |
| 44360 | | bfloat16x8_t __ret_235; \ |
| 44361 | | bfloat16x8_t __s0_235 = __p0_235; \ |
| 44362 | | bfloat16x4_t __s2_235 = __p2_235; \ |
| 44363 | | bfloat16x8_t __rev0_235; __rev0_235 = __builtin_shufflevector(__s0_235, __s0_235, __lane_reverse_128_16); \ |
| 44364 | | bfloat16x4_t __rev2_235; __rev2_235 = __builtin_shufflevector(__s2_235, __s2_235, __lane_reverse_64_16); \ |
| 44365 | | __ret_235 = __noswap_vsetq_lane_bf16(__noswap_vget_lane_bf16(__rev2_235, __p3_235), __rev0_235, __p1_235); \ |
| 44366 | | __ret_235 = __builtin_shufflevector(__ret_235, __ret_235, __lane_reverse_128_16); \ |
| 44367 | | __ret_235; \ |
| 44368 | | }) |
| 44369 | | #endif |
| 44370 | | |
| 44371 | | #ifdef __LITTLE_ENDIAN__ |
| 44372 | | #define vcopy_lane_bf16(__p0_236, __p1_236, __p2_236, __p3_236) __extension__ ({ \ |
| 44373 | | bfloat16x4_t __ret_236; \ |
| 44374 | | bfloat16x4_t __s0_236 = __p0_236; \ |
| 44375 | | bfloat16x4_t __s2_236 = __p2_236; \ |
| 44376 | | __ret_236 = vset_lane_bf16(vget_lane_bf16(__s2_236, __p3_236), __s0_236, __p1_236); \ |
| 44377 | | __ret_236; \ |
| 44378 | | }) |
| 44379 | | #else |
| 44380 | | #define vcopy_lane_bf16(__p0_237, __p1_237, __p2_237, __p3_237) __extension__ ({ \ |
| 44381 | | bfloat16x4_t __ret_237; \ |
| 44382 | | bfloat16x4_t __s0_237 = __p0_237; \ |
| 44383 | | bfloat16x4_t __s2_237 = __p2_237; \ |
| 44384 | | bfloat16x4_t __rev0_237; __rev0_237 = __builtin_shufflevector(__s0_237, __s0_237, __lane_reverse_64_16); \ |
| 44385 | | bfloat16x4_t __rev2_237; __rev2_237 = __builtin_shufflevector(__s2_237, __s2_237, __lane_reverse_64_16); \ |
| 44386 | | __ret_237 = __noswap_vset_lane_bf16(__noswap_vget_lane_bf16(__rev2_237, __p3_237), __rev0_237, __p1_237); \ |
| 44387 | | __ret_237 = __builtin_shufflevector(__ret_237, __ret_237, __lane_reverse_64_16); \ |
| 44388 | | __ret_237; \ |
| 44389 | | }) |
| 44390 | | #endif |
| 44391 | | |
| 44392 | | #ifdef __LITTLE_ENDIAN__ |
| 44393 | | #define vcopyq_laneq_bf16(__p0_238, __p1_238, __p2_238, __p3_238) __extension__ ({ \ |
| 44394 | | bfloat16x8_t __ret_238; \ |
| 44395 | | bfloat16x8_t __s0_238 = __p0_238; \ |
| 44396 | | bfloat16x8_t __s2_238 = __p2_238; \ |
| 44397 | | __ret_238 = vsetq_lane_bf16(vgetq_lane_bf16(__s2_238, __p3_238), __s0_238, __p1_238); \ |
| 44398 | | __ret_238; \ |
| 44399 | | }) |
| 44400 | | #else |
| 44401 | | #define vcopyq_laneq_bf16(__p0_239, __p1_239, __p2_239, __p3_239) __extension__ ({ \ |
| 44402 | | bfloat16x8_t __ret_239; \ |
| 44403 | | bfloat16x8_t __s0_239 = __p0_239; \ |
| 44404 | | bfloat16x8_t __s2_239 = __p2_239; \ |
| 44405 | | bfloat16x8_t __rev0_239; __rev0_239 = __builtin_shufflevector(__s0_239, __s0_239, __lane_reverse_128_16); \ |
| 44406 | | bfloat16x8_t __rev2_239; __rev2_239 = __builtin_shufflevector(__s2_239, __s2_239, __lane_reverse_128_16); \ |
| 44407 | | __ret_239 = __noswap_vsetq_lane_bf16(__noswap_vgetq_lane_bf16(__rev2_239, __p3_239), __rev0_239, __p1_239); \ |
| 44408 | | __ret_239 = __builtin_shufflevector(__ret_239, __ret_239, __lane_reverse_128_16); \ |
| 44409 | | __ret_239; \ |
| 44410 | | }) |
| 44411 | | #endif |
| 44412 | | |
| 44413 | | #ifdef __LITTLE_ENDIAN__ |
| 44414 | | #define vcopy_laneq_bf16(__p0_240, __p1_240, __p2_240, __p3_240) __extension__ ({ \ |
| 44415 | | bfloat16x4_t __ret_240; \ |
| 44416 | | bfloat16x4_t __s0_240 = __p0_240; \ |
| 44417 | | bfloat16x8_t __s2_240 = __p2_240; \ |
| 44418 | | __ret_240 = vset_lane_bf16(vgetq_lane_bf16(__s2_240, __p3_240), __s0_240, __p1_240); \ |
| 44419 | | __ret_240; \ |
| 44420 | | }) |
| 44421 | | #else |
| 44422 | | #define vcopy_laneq_bf16(__p0_241, __p1_241, __p2_241, __p3_241) __extension__ ({ \ |
| 44423 | | bfloat16x4_t __ret_241; \ |
| 44424 | | bfloat16x4_t __s0_241 = __p0_241; \ |
| 44425 | | bfloat16x8_t __s2_241 = __p2_241; \ |
| 44426 | | bfloat16x4_t __rev0_241; __rev0_241 = __builtin_shufflevector(__s0_241, __s0_241, __lane_reverse_64_16); \ |
| 44427 | | bfloat16x8_t __rev2_241; __rev2_241 = __builtin_shufflevector(__s2_241, __s2_241, __lane_reverse_128_16); \ |
| 44428 | | __ret_241 = __noswap_vset_lane_bf16(__noswap_vgetq_lane_bf16(__rev2_241, __p3_241), __rev0_241, __p1_241); \ |
| 44429 | | __ret_241 = __builtin_shufflevector(__ret_241, __ret_241, __lane_reverse_64_16); \ |
| 44430 | | __ret_241; \ |
| 44431 | | }) |
| 44432 | | #endif |
| 44433 | | |
| 44434 | | #ifdef __LITTLE_ENDIAN__ |
| 44435 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vcvt_bf16_f32(float32x4_t __p0) { |
| 44436 | | bfloat16x4_t __ret; |
| 44437 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vcvt_bf16_f32(__builtin_bit_cast(int8x16_t, __p0), 11)); |
| 44438 | | return __ret; |
| 44439 | | } |
| 44440 | | #else |
| 44441 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vcvt_bf16_f32(float32x4_t __p0) { |
| 44442 | | bfloat16x4_t __ret; |
| 44443 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44444 | | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vcvt_bf16_f32(__builtin_bit_cast(int8x16_t, __rev0), 11)); |
| 44445 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 44446 | | return __ret; |
| 44447 | | } |
| 44448 | | #endif |
| 44449 | | |
| 44450 | | #ifdef __LITTLE_ENDIAN__ |
| 44451 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_high_bf16_f32(bfloat16x8_t __p0, float32x4_t __p1) { |
| 44452 | | bfloat16x8_t __ret; |
| 44453 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_high_bf16_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 43)); |
| 44454 | | return __ret; |
| 44455 | | } |
| 44456 | | #else |
| 44457 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_high_bf16_f32(bfloat16x8_t __p0, float32x4_t __p1) { |
| 44458 | | bfloat16x8_t __ret; |
| 44459 | | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 44460 | | float32x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_32); |
| 44461 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_high_bf16_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 43)); |
| 44462 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44463 | | return __ret; |
| 44464 | | } |
| 44465 | | #endif |
| 44466 | | |
| 44467 | | #ifdef __LITTLE_ENDIAN__ |
| 44468 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_low_bf16_f32(float32x4_t __p0) { |
| 44469 | | bfloat16x8_t __ret; |
| 44470 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_low_bf16_f32(__builtin_bit_cast(int8x16_t, __p0), 43)); |
| 44471 | | return __ret; |
| 44472 | | } |
| 44473 | | #else |
| 44474 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_low_bf16_f32(float32x4_t __p0) { |
| 44475 | | bfloat16x8_t __ret; |
| 44476 | | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44477 | | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_low_bf16_f32(__builtin_bit_cast(int8x16_t, __rev0), 43)); |
| 44478 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44479 | | return __ret; |
| 44480 | | } |
| 44481 | | #endif |
| 44482 | | |
| 44483 | | __ai __attribute__((target("bf16,neon"))) poly8x8_t vreinterpret_p8_bf16(bfloat16x4_t __p0) { |
| 44484 | | poly8x8_t __ret; |
| 44485 | | __ret = __builtin_bit_cast(poly8x8_t, __p0); |
| 44486 | | return __ret; |
| 44487 | | } |
| 44488 | | __ai __attribute__((target("bf16,neon"))) poly64x1_t vreinterpret_p64_bf16(bfloat16x4_t __p0) { |
| 44489 | | poly64x1_t __ret; |
| 44490 | | __ret = __builtin_bit_cast(poly64x1_t, __p0); |
| 44491 | | return __ret; |
| 44492 | | } |
| 44493 | | __ai __attribute__((target("bf16,neon"))) poly16x4_t vreinterpret_p16_bf16(bfloat16x4_t __p0) { |
| 44494 | | poly16x4_t __ret; |
| 44495 | | __ret = __builtin_bit_cast(poly16x4_t, __p0); |
| 44496 | | return __ret; |
| 44497 | | } |
| 44498 | | __ai __attribute__((target("bf16,neon"))) poly8x16_t vreinterpretq_p8_bf16(bfloat16x8_t __p0) { |
| 44499 | | poly8x16_t __ret; |
| 44500 | | __ret = __builtin_bit_cast(poly8x16_t, __p0); |
| 44501 | | return __ret; |
| 44502 | | } |
| 44503 | | __ai __attribute__((target("bf16,neon"))) poly128_t vreinterpretq_p128_bf16(bfloat16x8_t __p0) { |
| 44504 | | poly128_t __ret; |
| 44505 | | __ret = __builtin_bit_cast(poly128_t, __p0); |
| 44506 | | return __ret; |
| 44507 | | } |
| 44508 | | __ai __attribute__((target("bf16,neon"))) poly64x2_t vreinterpretq_p64_bf16(bfloat16x8_t __p0) { |
| 44509 | | poly64x2_t __ret; |
| 44510 | | __ret = __builtin_bit_cast(poly64x2_t, __p0); |
| 44511 | | return __ret; |
| 44512 | | } |
| 44513 | | __ai __attribute__((target("bf16,neon"))) poly16x8_t vreinterpretq_p16_bf16(bfloat16x8_t __p0) { |
| 44514 | | poly16x8_t __ret; |
| 44515 | | __ret = __builtin_bit_cast(poly16x8_t, __p0); |
| 44516 | | return __ret; |
| 44517 | | } |
| 44518 | | __ai __attribute__((target("bf16,neon"))) uint8x16_t vreinterpretq_u8_bf16(bfloat16x8_t __p0) { |
| 44519 | | uint8x16_t __ret; |
| 44520 | | __ret = __builtin_bit_cast(uint8x16_t, __p0); |
| 44521 | | return __ret; |
| 44522 | | } |
| 44523 | | __ai __attribute__((target("bf16,neon"))) uint32x4_t vreinterpretq_u32_bf16(bfloat16x8_t __p0) { |
| 44524 | | uint32x4_t __ret; |
| 44525 | | __ret = __builtin_bit_cast(uint32x4_t, __p0); |
| 44526 | | return __ret; |
| 44527 | | } |
| 44528 | | __ai __attribute__((target("bf16,neon"))) uint64x2_t vreinterpretq_u64_bf16(bfloat16x8_t __p0) { |
| 44529 | | uint64x2_t __ret; |
| 44530 | | __ret = __builtin_bit_cast(uint64x2_t, __p0); |
| 44531 | | return __ret; |
| 44532 | | } |
| 44533 | | __ai __attribute__((target("bf16,neon"))) uint16x8_t vreinterpretq_u16_bf16(bfloat16x8_t __p0) { |
| 44534 | | uint16x8_t __ret; |
| 44535 | | __ret = __builtin_bit_cast(uint16x8_t, __p0); |
| 44536 | | return __ret; |
| 44537 | | } |
| 44538 | | __ai __attribute__((target("bf16,neon"))) int8x16_t vreinterpretq_s8_bf16(bfloat16x8_t __p0) { |
| 44539 | | int8x16_t __ret; |
| 44540 | | __ret = __builtin_bit_cast(int8x16_t, __p0); |
| 44541 | | return __ret; |
| 44542 | | } |
| 44543 | | __ai __attribute__((target("bf16,neon"))) float64x2_t vreinterpretq_f64_bf16(bfloat16x8_t __p0) { |
| 44544 | | float64x2_t __ret; |
| 44545 | | __ret = __builtin_bit_cast(float64x2_t, __p0); |
| 44546 | | return __ret; |
| 44547 | | } |
| 44548 | | __ai __attribute__((target("bf16,neon"))) float32x4_t vreinterpretq_f32_bf16(bfloat16x8_t __p0) { |
| 44549 | | float32x4_t __ret; |
| 44550 | | __ret = __builtin_bit_cast(float32x4_t, __p0); |
| 44551 | | return __ret; |
| 44552 | | } |
| 44553 | | __ai __attribute__((target("bf16,neon"))) float16x8_t vreinterpretq_f16_bf16(bfloat16x8_t __p0) { |
| 44554 | | float16x8_t __ret; |
| 44555 | | __ret = __builtin_bit_cast(float16x8_t, __p0); |
| 44556 | | return __ret; |
| 44557 | | } |
| 44558 | | __ai __attribute__((target("bf16,neon"))) int32x4_t vreinterpretq_s32_bf16(bfloat16x8_t __p0) { |
| 44559 | | int32x4_t __ret; |
| 44560 | | __ret = __builtin_bit_cast(int32x4_t, __p0); |
| 44561 | | return __ret; |
| 44562 | | } |
| 44563 | | __ai __attribute__((target("bf16,neon"))) int64x2_t vreinterpretq_s64_bf16(bfloat16x8_t __p0) { |
| 44564 | | int64x2_t __ret; |
| 44565 | | __ret = __builtin_bit_cast(int64x2_t, __p0); |
| 44566 | | return __ret; |
| 44567 | | } |
| 44568 | | __ai __attribute__((target("bf16,neon"))) int16x8_t vreinterpretq_s16_bf16(bfloat16x8_t __p0) { |
| 44569 | | int16x8_t __ret; |
| 44570 | | __ret = __builtin_bit_cast(int16x8_t, __p0); |
| 44571 | | return __ret; |
| 44572 | | } |
| 44573 | | __ai __attribute__((target("bf16,neon"))) uint8x8_t vreinterpret_u8_bf16(bfloat16x4_t __p0) { |
| 44574 | | uint8x8_t __ret; |
| 44575 | | __ret = __builtin_bit_cast(uint8x8_t, __p0); |
| 44576 | | return __ret; |
| 44577 | | } |
| 44578 | | __ai __attribute__((target("bf16,neon"))) uint32x2_t vreinterpret_u32_bf16(bfloat16x4_t __p0) { |
| 44579 | | uint32x2_t __ret; |
| 44580 | | __ret = __builtin_bit_cast(uint32x2_t, __p0); |
| 44581 | | return __ret; |
| 44582 | | } |
| 44583 | | __ai __attribute__((target("bf16,neon"))) uint64x1_t vreinterpret_u64_bf16(bfloat16x4_t __p0) { |
| 44584 | | uint64x1_t __ret; |
| 44585 | | __ret = __builtin_bit_cast(uint64x1_t, __p0); |
| 44586 | | return __ret; |
| 44587 | | } |
| 44588 | | __ai __attribute__((target("bf16,neon"))) uint16x4_t vreinterpret_u16_bf16(bfloat16x4_t __p0) { |
| 44589 | | uint16x4_t __ret; |
| 44590 | | __ret = __builtin_bit_cast(uint16x4_t, __p0); |
| 44591 | | return __ret; |
| 44592 | | } |
| 44593 | | __ai __attribute__((target("bf16,neon"))) int8x8_t vreinterpret_s8_bf16(bfloat16x4_t __p0) { |
| 44594 | | int8x8_t __ret; |
| 44595 | | __ret = __builtin_bit_cast(int8x8_t, __p0); |
| 44596 | | return __ret; |
| 44597 | | } |
| 44598 | | __ai __attribute__((target("bf16,neon"))) float64x1_t vreinterpret_f64_bf16(bfloat16x4_t __p0) { |
| 44599 | | float64x1_t __ret; |
| 44600 | | __ret = __builtin_bit_cast(float64x1_t, __p0); |
| 44601 | | return __ret; |
| 44602 | | } |
| 44603 | | __ai __attribute__((target("bf16,neon"))) float32x2_t vreinterpret_f32_bf16(bfloat16x4_t __p0) { |
| 44604 | | float32x2_t __ret; |
| 44605 | | __ret = __builtin_bit_cast(float32x2_t, __p0); |
| 44606 | | return __ret; |
| 44607 | | } |
| 44608 | | __ai __attribute__((target("bf16,neon"))) float16x4_t vreinterpret_f16_bf16(bfloat16x4_t __p0) { |
| 44609 | | float16x4_t __ret; |
| 44610 | | __ret = __builtin_bit_cast(float16x4_t, __p0); |
| 44611 | | return __ret; |
| 44612 | | } |
| 44613 | | __ai __attribute__((target("bf16,neon"))) int32x2_t vreinterpret_s32_bf16(bfloat16x4_t __p0) { |
| 44614 | | int32x2_t __ret; |
| 44615 | | __ret = __builtin_bit_cast(int32x2_t, __p0); |
| 44616 | | return __ret; |
| 44617 | | } |
| 44618 | | __ai __attribute__((target("bf16,neon"))) int64x1_t vreinterpret_s64_bf16(bfloat16x4_t __p0) { |
| 44619 | | int64x1_t __ret; |
| 44620 | | __ret = __builtin_bit_cast(int64x1_t, __p0); |
| 44621 | | return __ret; |
| 44622 | | } |
| 44623 | | __ai __attribute__((target("bf16,neon"))) int16x4_t vreinterpret_s16_bf16(bfloat16x4_t __p0) { |
| 44624 | | int16x4_t __ret; |
| 44625 | | __ret = __builtin_bit_cast(int16x4_t, __p0); |
| 44626 | | return __ret; |
| 44627 | | } |
| 44628 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p8(poly8x16_t __p0) { |
| 44629 | | bfloat16x8_t __ret; |
| 44630 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44631 | | return __ret; |
| 44632 | | } |
| 44633 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p128(poly128_t __p0) { |
| 44634 | | bfloat16x8_t __ret; |
| 44635 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44636 | | return __ret; |
| 44637 | | } |
| 44638 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p64(poly64x2_t __p0) { |
| 44639 | | bfloat16x8_t __ret; |
| 44640 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44342 | __ai __attribute__((target("neon,faminmax"))) float64x2_t vamaxq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44343 | float64x2_t __ret; |
| 44344 | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vamaxq_f64(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 42)); |
| 44641 | 44345 | return __ret; |
| 44642 | 44346 | } |
| 44643 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_p16(poly16x8_t __p0) { |
| 44644 | | bfloat16x8_t __ret; |
| 44645 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44347 | #else |
| 44348 | __ai __attribute__((target("neon,faminmax"))) float64x2_t vamaxq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44349 | float64x2_t __ret; |
| 44350 | float64x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_64); |
| 44351 | float64x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_64); |
| 44352 | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vamaxq_f64(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 42)); |
| 44353 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_64); |
| 44646 | 44354 | return __ret; |
| 44647 | 44355 | } |
| 44648 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u8(uint8x16_t __p0) { |
| 44649 | | bfloat16x8_t __ret; |
| 44650 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44356 | #endif |
| 44357 | |
| 44358 | #ifdef __LITTLE_ENDIAN__ |
| 44359 | __ai __attribute__((target("neon,faminmax"))) float32x4_t vamaxq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44360 | float32x4_t __ret; |
| 44361 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vamaxq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 41)); |
| 44651 | 44362 | return __ret; |
| 44652 | 44363 | } |
| 44653 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u32(uint32x4_t __p0) { |
| 44654 | | bfloat16x8_t __ret; |
| 44655 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44364 | #else |
| 44365 | __ai __attribute__((target("neon,faminmax"))) float32x4_t vamaxq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44366 | float32x4_t __ret; |
| 44367 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44368 | float32x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_32); |
| 44369 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vamaxq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 41)); |
| 44370 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 44656 | 44371 | return __ret; |
| 44657 | 44372 | } |
| 44658 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u64(uint64x2_t __p0) { |
| 44659 | | bfloat16x8_t __ret; |
| 44660 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44373 | #endif |
| 44374 | |
| 44375 | #ifdef __LITTLE_ENDIAN__ |
| 44376 | __ai __attribute__((target("neon,faminmax"))) float16x8_t vamaxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44377 | float16x8_t __ret; |
| 44378 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vamaxq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 44661 | 44379 | return __ret; |
| 44662 | 44380 | } |
| 44663 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_u16(uint16x8_t __p0) { |
| 44664 | | bfloat16x8_t __ret; |
| 44665 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44381 | #else |
| 44382 | __ai __attribute__((target("neon,faminmax"))) float16x8_t vamaxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44383 | float16x8_t __ret; |
| 44384 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 44385 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 44386 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vamaxq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 40)); |
| 44387 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44666 | 44388 | return __ret; |
| 44667 | 44389 | } |
| 44668 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s8(int8x16_t __p0) { |
| 44669 | | bfloat16x8_t __ret; |
| 44670 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44390 | #endif |
| 44391 | |
| 44392 | #ifdef __LITTLE_ENDIAN__ |
| 44393 | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamax_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44394 | float32x2_t __ret; |
| 44395 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamax_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 9)); |
| 44671 | 44396 | return __ret; |
| 44672 | 44397 | } |
| 44673 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_f64(float64x2_t __p0) { |
| 44674 | | bfloat16x8_t __ret; |
| 44675 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44398 | #else |
| 44399 | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamax_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44400 | float32x2_t __ret; |
| 44401 | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 44402 | float32x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_32); |
| 44403 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamax_f32(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 9)); |
| 44404 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 44676 | 44405 | return __ret; |
| 44677 | 44406 | } |
| 44678 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_f32(float32x4_t __p0) { |
| 44679 | | bfloat16x8_t __ret; |
| 44680 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44407 | #endif |
| 44408 | |
| 44409 | #ifdef __LITTLE_ENDIAN__ |
| 44410 | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamax_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44411 | float16x4_t __ret; |
| 44412 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamax_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 44681 | 44413 | return __ret; |
| 44682 | 44414 | } |
| 44683 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_f16(float16x8_t __p0) { |
| 44684 | | bfloat16x8_t __ret; |
| 44685 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44415 | #else |
| 44416 | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamax_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44417 | float16x4_t __ret; |
| 44418 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 44419 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 44420 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamax_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 8)); |
| 44421 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 44686 | 44422 | return __ret; |
| 44687 | 44423 | } |
| 44688 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s32(int32x4_t __p0) { |
| 44689 | | bfloat16x8_t __ret; |
| 44690 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44424 | #endif |
| 44425 | |
| 44426 | #ifdef __LITTLE_ENDIAN__ |
| 44427 | __ai __attribute__((target("neon,faminmax"))) float64x2_t vaminq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44428 | float64x2_t __ret; |
| 44429 | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vaminq_f64(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 42)); |
| 44691 | 44430 | return __ret; |
| 44692 | 44431 | } |
| 44693 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s64(int64x2_t __p0) { |
| 44694 | | bfloat16x8_t __ret; |
| 44695 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44432 | #else |
| 44433 | __ai __attribute__((target("neon,faminmax"))) float64x2_t vaminq_f64(float64x2_t __p0, float64x2_t __p1) { |
| 44434 | float64x2_t __ret; |
| 44435 | float64x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_64); |
| 44436 | float64x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_64); |
| 44437 | __ret = __builtin_bit_cast(float64x2_t, __builtin_neon_vaminq_f64(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 42)); |
| 44438 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_64); |
| 44696 | 44439 | return __ret; |
| 44697 | 44440 | } |
| 44698 | | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vreinterpretq_bf16_s16(int16x8_t __p0) { |
| 44699 | | bfloat16x8_t __ret; |
| 44700 | | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 44441 | #endif |
| 44442 | |
| 44443 | #ifdef __LITTLE_ENDIAN__ |
| 44444 | __ai __attribute__((target("neon,faminmax"))) float32x4_t vaminq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44445 | float32x4_t __ret; |
| 44446 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vaminq_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 41)); |
| 44701 | 44447 | return __ret; |
| 44702 | 44448 | } |
| 44703 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_p8(poly8x8_t __p0) { |
| 44704 | | bfloat16x4_t __ret; |
| 44705 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44449 | #else |
| 44450 | __ai __attribute__((target("neon,faminmax"))) float32x4_t vaminq_f32(float32x4_t __p0, float32x4_t __p1) { |
| 44451 | float32x4_t __ret; |
| 44452 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44453 | float32x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_32); |
| 44454 | __ret = __builtin_bit_cast(float32x4_t, __builtin_neon_vaminq_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 41)); |
| 44455 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_32); |
| 44706 | 44456 | return __ret; |
| 44707 | 44457 | } |
| 44708 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_p64(poly64x1_t __p0) { |
| 44709 | | bfloat16x4_t __ret; |
| 44710 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44458 | #endif |
| 44459 | |
| 44460 | #ifdef __LITTLE_ENDIAN__ |
| 44461 | __ai __attribute__((target("neon,faminmax"))) float16x8_t vaminq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44462 | float16x8_t __ret; |
| 44463 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vaminq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 44711 | 44464 | return __ret; |
| 44712 | 44465 | } |
| 44713 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_p16(poly16x4_t __p0) { |
| 44714 | | bfloat16x4_t __ret; |
| 44715 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44466 | #else |
| 44467 | __ai __attribute__((target("neon,faminmax"))) float16x8_t vaminq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 44468 | float16x8_t __ret; |
| 44469 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 44470 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 44471 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vaminq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 40)); |
| 44472 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44716 | 44473 | return __ret; |
| 44717 | 44474 | } |
| 44718 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u8(uint8x8_t __p0) { |
| 44719 | | bfloat16x4_t __ret; |
| 44720 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44475 | #endif |
| 44476 | |
| 44477 | #ifdef __LITTLE_ENDIAN__ |
| 44478 | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamin_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44479 | float32x2_t __ret; |
| 44480 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamin_f32(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 9)); |
| 44721 | 44481 | return __ret; |
| 44722 | 44482 | } |
| 44723 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u32(uint32x2_t __p0) { |
| 44724 | | bfloat16x4_t __ret; |
| 44725 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44483 | #else |
| 44484 | __ai __attribute__((target("neon,faminmax"))) float32x2_t vamin_f32(float32x2_t __p0, float32x2_t __p1) { |
| 44485 | float32x2_t __ret; |
| 44486 | float32x2_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_32); |
| 44487 | float32x2_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_32); |
| 44488 | __ret = __builtin_bit_cast(float32x2_t, __builtin_neon_vamin_f32(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 9)); |
| 44489 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_32); |
| 44726 | 44490 | return __ret; |
| 44727 | 44491 | } |
| 44728 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u64(uint64x1_t __p0) { |
| 44729 | | bfloat16x4_t __ret; |
| 44730 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44492 | #endif |
| 44493 | |
| 44494 | #ifdef __LITTLE_ENDIAN__ |
| 44495 | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamin_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44496 | float16x4_t __ret; |
| 44497 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamin_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 44731 | 44498 | return __ret; |
| 44732 | 44499 | } |
| 44733 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_u16(uint16x4_t __p0) { |
| 44734 | | bfloat16x4_t __ret; |
| 44735 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44500 | #else |
| 44501 | __ai __attribute__((target("neon,faminmax"))) float16x4_t vamin_f16(float16x4_t __p0, float16x4_t __p1) { |
| 44502 | float16x4_t __ret; |
| 44503 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 44504 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 44505 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vamin_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 8)); |
| 44506 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 44736 | 44507 | return __ret; |
| 44737 | 44508 | } |
| 44738 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s8(int8x8_t __p0) { |
| 44739 | | bfloat16x4_t __ret; |
| 44740 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44509 | #endif |
| 44510 | |
| 44511 | #endif |
| 44512 | #if defined(__aarch64__) || defined(__arm64ec__) |
| 44513 | __ai __attribute__((target("aes,neon"))) poly128_t vmull_p64(poly64_t __p0, poly64_t __p1) { |
| 44514 | poly128_t __ret; |
| 44515 | __ret = __builtin_bit_cast(poly128_t, __builtin_neon_vmull_p64(__p0, __p1)); |
| 44741 | 44516 | return __ret; |
| 44742 | 44517 | } |
| 44743 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_f64(float64x1_t __p0) { |
| 44518 | #ifdef __LITTLE_ENDIAN__ |
| 44519 | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vcvt_bf16_f32(float32x4_t __p0) { |
| 44744 | 44520 | bfloat16x4_t __ret; |
| 44745 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44521 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vcvt_bf16_f32(__builtin_bit_cast(int8x16_t, __p0), 11)); |
| 44746 | 44522 | return __ret; |
| 44747 | 44523 | } |
| 44748 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_f32(float32x2_t __p0) { |
| 44524 | #else |
| 44525 | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vcvt_bf16_f32(float32x4_t __p0) { |
| 44749 | 44526 | bfloat16x4_t __ret; |
| 44750 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44527 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44528 | __ret = __builtin_bit_cast(bfloat16x4_t, __builtin_neon_vcvt_bf16_f32(__builtin_bit_cast(int8x16_t, __rev0), 11)); |
| 44529 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 44751 | 44530 | return __ret; |
| 44752 | 44531 | } |
| 44753 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_f16(float16x4_t __p0) { |
| 44754 | | bfloat16x4_t __ret; |
| 44755 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44532 | #endif |
| 44533 | |
| 44534 | #ifdef __LITTLE_ENDIAN__ |
| 44535 | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_high_bf16_f32(bfloat16x8_t __p0, float32x4_t __p1) { |
| 44536 | bfloat16x8_t __ret; |
| 44537 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_high_bf16_f32(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 43)); |
| 44756 | 44538 | return __ret; |
| 44757 | 44539 | } |
| 44758 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s32(int32x2_t __p0) { |
| 44759 | | bfloat16x4_t __ret; |
| 44760 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44540 | #else |
| 44541 | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_high_bf16_f32(bfloat16x8_t __p0, float32x4_t __p1) { |
| 44542 | bfloat16x8_t __ret; |
| 44543 | bfloat16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 44544 | float32x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_32); |
| 44545 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_high_bf16_f32(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 43)); |
| 44546 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44761 | 44547 | return __ret; |
| 44762 | 44548 | } |
| 44763 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s64(int64x1_t __p0) { |
| 44764 | | bfloat16x4_t __ret; |
| 44765 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44549 | #endif |
| 44550 | |
| 44551 | #ifdef __LITTLE_ENDIAN__ |
| 44552 | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_low_bf16_f32(float32x4_t __p0) { |
| 44553 | bfloat16x8_t __ret; |
| 44554 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_low_bf16_f32(__builtin_bit_cast(int8x16_t, __p0), 43)); |
| 44766 | 44555 | return __ret; |
| 44767 | 44556 | } |
| 44768 | | __ai __attribute__((target("bf16,neon"))) bfloat16x4_t vreinterpret_bf16_s16(int16x4_t __p0) { |
| 44769 | | bfloat16x4_t __ret; |
| 44770 | | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 44557 | #else |
| 44558 | __ai __attribute__((target("bf16,neon"))) bfloat16x8_t vcvtq_low_bf16_f32(float32x4_t __p0) { |
| 44559 | bfloat16x8_t __ret; |
| 44560 | float32x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_32); |
| 44561 | __ret = __builtin_bit_cast(bfloat16x8_t, __builtin_neon_vcvtq_low_bf16_f32(__builtin_bit_cast(int8x16_t, __rev0), 43)); |
| 44562 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 44771 | 44563 | return __ret; |
| 44772 | 44564 | } |
| 44565 | #endif |
| 44566 | |
| 44773 | 44567 | #ifdef __LITTLE_ENDIAN__ |
| 44774 | | #define vdotq_laneq_u32(__p0_242, __p1_242, __p2_242, __p3_242) __extension__ ({ \ |
| 44775 | | uint32x4_t __ret_242; \ |
| 44776 | | uint32x4_t __s0_242 = __p0_242; \ |
| 44777 | | uint8x16_t __s1_242 = __p1_242; \ |
| 44778 | | uint8x16_t __s2_242 = __p2_242; \ |
| 44779 | | __ret_242 = vdotq_u32(__s0_242, __s1_242, __builtin_bit_cast(uint8x16_t, splatq_laneq_u32(__builtin_bit_cast(uint32x4_t, __s2_242), __p3_242))); \ |
| 44780 | | __ret_242; \ |
| 44568 | #define vdotq_laneq_u32(__p0_234, __p1_234, __p2_234, __p3_234) __extension__ ({ \ |
| 44569 | uint32x4_t __ret_234; \ |
| 44570 | uint32x4_t __s0_234 = __p0_234; \ |
| 44571 | uint8x16_t __s1_234 = __p1_234; \ |
| 44572 | uint8x16_t __s2_234 = __p2_234; \ |
| 44573 | __ret_234 = vdotq_u32(__s0_234, __s1_234, __builtin_bit_cast(uint8x16_t, splatq_laneq_u32(__builtin_bit_cast(uint32x4_t, __s2_234), __p3_234))); \ |
| 44574 | __ret_234; \ |
| 44781 | 44575 | }) |
| 44782 | 44576 | #else |
| 44783 | | #define vdotq_laneq_u32(__p0_243, __p1_243, __p2_243, __p3_243) __extension__ ({ \ |
| 44784 | | uint32x4_t __ret_243; \ |
| 44785 | | uint32x4_t __s0_243 = __p0_243; \ |
| 44786 | | uint8x16_t __s1_243 = __p1_243; \ |
| 44787 | | uint8x16_t __s2_243 = __p2_243; \ |
| 44788 | | uint32x4_t __rev0_243; __rev0_243 = __builtin_shufflevector(__s0_243, __s0_243, __lane_reverse_128_32); \ |
| 44789 | | uint8x16_t __rev1_243; __rev1_243 = __builtin_shufflevector(__s1_243, __s1_243, __lane_reverse_128_8); \ |
| 44790 | | uint8x16_t __rev2_243; __rev2_243 = __builtin_shufflevector(__s2_243, __s2_243, __lane_reverse_128_8); \ |
| 44791 | | __ret_243 = __noswap_vdotq_u32(__rev0_243, __rev1_243, __builtin_bit_cast(uint8x16_t, __noswap_splatq_laneq_u32(__builtin_bit_cast(uint32x4_t, __rev2_243), __p3_243))); \ |
| 44792 | | __ret_243 = __builtin_shufflevector(__ret_243, __ret_243, __lane_reverse_128_32); \ |
| 44793 | | __ret_243; \ |
| 44577 | #define vdotq_laneq_u32(__p0_235, __p1_235, __p2_235, __p3_235) __extension__ ({ \ |
| 44578 | uint32x4_t __ret_235; \ |
| 44579 | uint32x4_t __s0_235 = __p0_235; \ |
| 44580 | uint8x16_t __s1_235 = __p1_235; \ |
| 44581 | uint8x16_t __s2_235 = __p2_235; \ |
| 44582 | uint32x4_t __rev0_235; __rev0_235 = __builtin_shufflevector(__s0_235, __s0_235, __lane_reverse_128_32); \ |
| 44583 | uint8x16_t __rev1_235; __rev1_235 = __builtin_shufflevector(__s1_235, __s1_235, __lane_reverse_128_8); \ |
| 44584 | uint8x16_t __rev2_235; __rev2_235 = __builtin_shufflevector(__s2_235, __s2_235, __lane_reverse_128_8); \ |
| 44585 | __ret_235 = __noswap_vdotq_u32(__rev0_235, __rev1_235, __builtin_bit_cast(uint8x16_t, __noswap_splatq_laneq_u32(__builtin_bit_cast(uint32x4_t, __rev2_235), __p3_235))); \ |
| 44586 | __ret_235 = __builtin_shufflevector(__ret_235, __ret_235, __lane_reverse_128_32); \ |
| 44587 | __ret_235; \ |
| 44794 | 44588 | }) |
| 44795 | 44589 | #endif |
| 44796 | 44590 | |
| 44797 | 44591 | #ifdef __LITTLE_ENDIAN__ |
| 44798 | | #define vdotq_laneq_s32(__p0_244, __p1_244, __p2_244, __p3_244) __extension__ ({ \ |
| 44799 | | int32x4_t __ret_244; \ |
| 44800 | | int32x4_t __s0_244 = __p0_244; \ |
| 44801 | | int8x16_t __s1_244 = __p1_244; \ |
| 44802 | | int8x16_t __s2_244 = __p2_244; \ |
| 44803 | | __ret_244 = vdotq_s32(__s0_244, __s1_244, __builtin_bit_cast(int8x16_t, splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_244), __p3_244))); \ |
| 44804 | | __ret_244; \ |
| 44592 | #define vdotq_laneq_s32(__p0_236, __p1_236, __p2_236, __p3_236) __extension__ ({ \ |
| 44593 | int32x4_t __ret_236; \ |
| 44594 | int32x4_t __s0_236 = __p0_236; \ |
| 44595 | int8x16_t __s1_236 = __p1_236; \ |
| 44596 | int8x16_t __s2_236 = __p2_236; \ |
| 44597 | __ret_236 = vdotq_s32(__s0_236, __s1_236, __builtin_bit_cast(int8x16_t, splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_236), __p3_236))); \ |
| 44598 | __ret_236; \ |
| 44805 | 44599 | }) |
| 44806 | 44600 | #else |
| 44807 | | #define vdotq_laneq_s32(__p0_245, __p1_245, __p2_245, __p3_245) __extension__ ({ \ |
| 44808 | | int32x4_t __ret_245; \ |
| 44809 | | int32x4_t __s0_245 = __p0_245; \ |
| 44810 | | int8x16_t __s1_245 = __p1_245; \ |
| 44811 | | int8x16_t __s2_245 = __p2_245; \ |
| 44812 | | int32x4_t __rev0_245; __rev0_245 = __builtin_shufflevector(__s0_245, __s0_245, __lane_reverse_128_32); \ |
| 44813 | | int8x16_t __rev1_245; __rev1_245 = __builtin_shufflevector(__s1_245, __s1_245, __lane_reverse_128_8); \ |
| 44814 | | int8x16_t __rev2_245; __rev2_245 = __builtin_shufflevector(__s2_245, __s2_245, __lane_reverse_128_8); \ |
| 44815 | | __ret_245 = __noswap_vdotq_s32(__rev0_245, __rev1_245, __builtin_bit_cast(int8x16_t, __noswap_splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_245), __p3_245))); \ |
| 44816 | | __ret_245 = __builtin_shufflevector(__ret_245, __ret_245, __lane_reverse_128_32); \ |
| 44817 | | __ret_245; \ |
| 44601 | #define vdotq_laneq_s32(__p0_237, __p1_237, __p2_237, __p3_237) __extension__ ({ \ |
| 44602 | int32x4_t __ret_237; \ |
| 44603 | int32x4_t __s0_237 = __p0_237; \ |
| 44604 | int8x16_t __s1_237 = __p1_237; \ |
| 44605 | int8x16_t __s2_237 = __p2_237; \ |
| 44606 | int32x4_t __rev0_237; __rev0_237 = __builtin_shufflevector(__s0_237, __s0_237, __lane_reverse_128_32); \ |
| 44607 | int8x16_t __rev1_237; __rev1_237 = __builtin_shufflevector(__s1_237, __s1_237, __lane_reverse_128_8); \ |
| 44608 | int8x16_t __rev2_237; __rev2_237 = __builtin_shufflevector(__s2_237, __s2_237, __lane_reverse_128_8); \ |
| 44609 | __ret_237 = __noswap_vdotq_s32(__rev0_237, __rev1_237, __builtin_bit_cast(int8x16_t, __noswap_splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_237), __p3_237))); \ |
| 44610 | __ret_237 = __builtin_shufflevector(__ret_237, __ret_237, __lane_reverse_128_32); \ |
| 44611 | __ret_237; \ |
| 44818 | 44612 | }) |
| 44819 | 44613 | #endif |
| 44820 | 44614 | |
| 44821 | 44615 | #ifdef __LITTLE_ENDIAN__ |
| 44822 | | #define vdot_laneq_u32(__p0_246, __p1_246, __p2_246, __p3_246) __extension__ ({ \ |
| 44823 | | uint32x2_t __ret_246; \ |
| 44824 | | uint32x2_t __s0_246 = __p0_246; \ |
| 44825 | | uint8x8_t __s1_246 = __p1_246; \ |
| 44826 | | uint8x16_t __s2_246 = __p2_246; \ |
| 44827 | | __ret_246 = vdot_u32(__s0_246, __s1_246, __builtin_bit_cast(uint8x8_t, splat_laneq_u32(__builtin_bit_cast(uint32x4_t, __s2_246), __p3_246))); \ |
| 44828 | | __ret_246; \ |
| 44616 | #define vdot_laneq_u32(__p0_238, __p1_238, __p2_238, __p3_238) __extension__ ({ \ |
| 44617 | uint32x2_t __ret_238; \ |
| 44618 | uint32x2_t __s0_238 = __p0_238; \ |
| 44619 | uint8x8_t __s1_238 = __p1_238; \ |
| 44620 | uint8x16_t __s2_238 = __p2_238; \ |
| 44621 | __ret_238 = vdot_u32(__s0_238, __s1_238, __builtin_bit_cast(uint8x8_t, splat_laneq_u32(__builtin_bit_cast(uint32x4_t, __s2_238), __p3_238))); \ |
| 44622 | __ret_238; \ |
| 44829 | 44623 | }) |
| 44830 | 44624 | #else |
| 44831 | | #define vdot_laneq_u32(__p0_247, __p1_247, __p2_247, __p3_247) __extension__ ({ \ |
| 44832 | | uint32x2_t __ret_247; \ |
| 44833 | | uint32x2_t __s0_247 = __p0_247; \ |
| 44834 | | uint8x8_t __s1_247 = __p1_247; \ |
| 44835 | | uint8x16_t __s2_247 = __p2_247; \ |
| 44836 | | uint32x2_t __rev0_247; __rev0_247 = __builtin_shufflevector(__s0_247, __s0_247, __lane_reverse_64_32); \ |
| 44837 | | uint8x8_t __rev1_247; __rev1_247 = __builtin_shufflevector(__s1_247, __s1_247, __lane_reverse_64_8); \ |
| 44838 | | uint8x16_t __rev2_247; __rev2_247 = __builtin_shufflevector(__s2_247, __s2_247, __lane_reverse_128_8); \ |
| 44839 | | __ret_247 = __noswap_vdot_u32(__rev0_247, __rev1_247, __builtin_bit_cast(uint8x8_t, __noswap_splat_laneq_u32(__builtin_bit_cast(uint32x4_t, __rev2_247), __p3_247))); \ |
| 44840 | | __ret_247 = __builtin_shufflevector(__ret_247, __ret_247, __lane_reverse_64_32); \ |
| 44841 | | __ret_247; \ |
| 44625 | #define vdot_laneq_u32(__p0_239, __p1_239, __p2_239, __p3_239) __extension__ ({ \ |
| 44626 | uint32x2_t __ret_239; \ |
| 44627 | uint32x2_t __s0_239 = __p0_239; \ |
| 44628 | uint8x8_t __s1_239 = __p1_239; \ |
| 44629 | uint8x16_t __s2_239 = __p2_239; \ |
| 44630 | uint32x2_t __rev0_239; __rev0_239 = __builtin_shufflevector(__s0_239, __s0_239, __lane_reverse_64_32); \ |
| 44631 | uint8x8_t __rev1_239; __rev1_239 = __builtin_shufflevector(__s1_239, __s1_239, __lane_reverse_64_8); \ |
| 44632 | uint8x16_t __rev2_239; __rev2_239 = __builtin_shufflevector(__s2_239, __s2_239, __lane_reverse_128_8); \ |
| 44633 | __ret_239 = __noswap_vdot_u32(__rev0_239, __rev1_239, __builtin_bit_cast(uint8x8_t, __noswap_splat_laneq_u32(__builtin_bit_cast(uint32x4_t, __rev2_239), __p3_239))); \ |
| 44634 | __ret_239 = __builtin_shufflevector(__ret_239, __ret_239, __lane_reverse_64_32); \ |
| 44635 | __ret_239; \ |
| 44842 | 44636 | }) |
| 44843 | 44637 | #endif |
| 44844 | 44638 | |
| 44845 | 44639 | #ifdef __LITTLE_ENDIAN__ |
| 44846 | | #define vdot_laneq_s32(__p0_248, __p1_248, __p2_248, __p3_248) __extension__ ({ \ |
| 44847 | | int32x2_t __ret_248; \ |
| 44848 | | int32x2_t __s0_248 = __p0_248; \ |
| 44849 | | int8x8_t __s1_248 = __p1_248; \ |
| 44850 | | int8x16_t __s2_248 = __p2_248; \ |
| 44851 | | __ret_248 = vdot_s32(__s0_248, __s1_248, __builtin_bit_cast(int8x8_t, splat_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_248), __p3_248))); \ |
| 44852 | | __ret_248; \ |
| 44640 | #define vdot_laneq_s32(__p0_240, __p1_240, __p2_240, __p3_240) __extension__ ({ \ |
| 44641 | int32x2_t __ret_240; \ |
| 44642 | int32x2_t __s0_240 = __p0_240; \ |
| 44643 | int8x8_t __s1_240 = __p1_240; \ |
| 44644 | int8x16_t __s2_240 = __p2_240; \ |
| 44645 | __ret_240 = vdot_s32(__s0_240, __s1_240, __builtin_bit_cast(int8x8_t, splat_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_240), __p3_240))); \ |
| 44646 | __ret_240; \ |
| 44853 | 44647 | }) |
| 44854 | 44648 | #else |
| 44855 | | #define vdot_laneq_s32(__p0_249, __p1_249, __p2_249, __p3_249) __extension__ ({ \ |
| 44856 | | int32x2_t __ret_249; \ |
| 44857 | | int32x2_t __s0_249 = __p0_249; \ |
| 44858 | | int8x8_t __s1_249 = __p1_249; \ |
| 44859 | | int8x16_t __s2_249 = __p2_249; \ |
| 44860 | | int32x2_t __rev0_249; __rev0_249 = __builtin_shufflevector(__s0_249, __s0_249, __lane_reverse_64_32); \ |
| 44861 | | int8x8_t __rev1_249; __rev1_249 = __builtin_shufflevector(__s1_249, __s1_249, __lane_reverse_64_8); \ |
| 44862 | | int8x16_t __rev2_249; __rev2_249 = __builtin_shufflevector(__s2_249, __s2_249, __lane_reverse_128_8); \ |
| 44863 | | __ret_249 = __noswap_vdot_s32(__rev0_249, __rev1_249, __builtin_bit_cast(int8x8_t, __noswap_splat_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_249), __p3_249))); \ |
| 44864 | | __ret_249 = __builtin_shufflevector(__ret_249, __ret_249, __lane_reverse_64_32); \ |
| 44865 | | __ret_249; \ |
| 44649 | #define vdot_laneq_s32(__p0_241, __p1_241, __p2_241, __p3_241) __extension__ ({ \ |
| 44650 | int32x2_t __ret_241; \ |
| 44651 | int32x2_t __s0_241 = __p0_241; \ |
| 44652 | int8x8_t __s1_241 = __p1_241; \ |
| 44653 | int8x16_t __s2_241 = __p2_241; \ |
| 44654 | int32x2_t __rev0_241; __rev0_241 = __builtin_shufflevector(__s0_241, __s0_241, __lane_reverse_64_32); \ |
| 44655 | int8x8_t __rev1_241; __rev1_241 = __builtin_shufflevector(__s1_241, __s1_241, __lane_reverse_64_8); \ |
| 44656 | int8x16_t __rev2_241; __rev2_241 = __builtin_shufflevector(__s2_241, __s2_241, __lane_reverse_128_8); \ |
| 44657 | __ret_241 = __noswap_vdot_s32(__rev0_241, __rev1_241, __builtin_bit_cast(int8x8_t, __noswap_splat_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_241), __p3_241))); \ |
| 44658 | __ret_241 = __builtin_shufflevector(__ret_241, __ret_241, __lane_reverse_64_32); \ |
| 44659 | __ret_241; \ |
| 44866 | 44660 | }) |
| 44867 | 44661 | #endif |
| 44868 | 44662 | |
| ... | ... | @@ -45317,533 +45111,533 @@ __ai __attribute__((target("fullfp16,neon"))) float16x4_t vdiv_f16(float16x4_t _ |
| 45317 | 45111 | #endif |
| 45318 | 45112 | |
| 45319 | 45113 | #ifdef __LITTLE_ENDIAN__ |
| 45320 | | #define vfmsh_lane_f16(__p0_250, __p1_250, __p2_250, __p3_250) __extension__ ({ \ |
| 45321 | | float16_t __ret_250; \ |
| 45322 | | float16_t __s0_250 = __p0_250; \ |
| 45323 | | float16_t __s1_250 = __p1_250; \ |
| 45324 | | float16x4_t __s2_250 = __p2_250; \ |
| 45325 | | __ret_250 = vfmah_lane_f16(__s0_250, -__s1_250, __s2_250, __p3_250); \ |
| 45114 | #define vfmsh_lane_f16(__p0_242, __p1_242, __p2_242, __p3_242) __extension__ ({ \ |
| 45115 | float16_t __ret_242; \ |
| 45116 | float16_t __s0_242 = __p0_242; \ |
| 45117 | float16_t __s1_242 = __p1_242; \ |
| 45118 | float16x4_t __s2_242 = __p2_242; \ |
| 45119 | __ret_242 = vfmah_lane_f16(__s0_242, -__s1_242, __s2_242, __p3_242); \ |
| 45120 | __ret_242; \ |
| 45121 | }) |
| 45122 | #else |
| 45123 | #define vfmsh_lane_f16(__p0_243, __p1_243, __p2_243, __p3_243) __extension__ ({ \ |
| 45124 | float16_t __ret_243; \ |
| 45125 | float16_t __s0_243 = __p0_243; \ |
| 45126 | float16_t __s1_243 = __p1_243; \ |
| 45127 | float16x4_t __s2_243 = __p2_243; \ |
| 45128 | float16x4_t __rev2_243; __rev2_243 = __builtin_shufflevector(__s2_243, __s2_243, __lane_reverse_64_16); \ |
| 45129 | __ret_243 = __noswap_vfmah_lane_f16(__s0_243, -__s1_243, __rev2_243, __p3_243); \ |
| 45130 | __ret_243; \ |
| 45131 | }) |
| 45132 | #endif |
| 45133 | |
| 45134 | #ifdef __LITTLE_ENDIAN__ |
| 45135 | #define vfmsq_lane_f16(__p0_244, __p1_244, __p2_244, __p3_244) __extension__ ({ \ |
| 45136 | float16x8_t __ret_244; \ |
| 45137 | float16x8_t __s0_244 = __p0_244; \ |
| 45138 | float16x8_t __s1_244 = __p1_244; \ |
| 45139 | float16x4_t __s2_244 = __p2_244; \ |
| 45140 | __ret_244 = vfmaq_lane_f16(__s0_244, -__s1_244, __s2_244, __p3_244); \ |
| 45141 | __ret_244; \ |
| 45142 | }) |
| 45143 | #else |
| 45144 | #define vfmsq_lane_f16(__p0_245, __p1_245, __p2_245, __p3_245) __extension__ ({ \ |
| 45145 | float16x8_t __ret_245; \ |
| 45146 | float16x8_t __s0_245 = __p0_245; \ |
| 45147 | float16x8_t __s1_245 = __p1_245; \ |
| 45148 | float16x4_t __s2_245 = __p2_245; \ |
| 45149 | float16x8_t __rev0_245; __rev0_245 = __builtin_shufflevector(__s0_245, __s0_245, __lane_reverse_128_16); \ |
| 45150 | float16x8_t __rev1_245; __rev1_245 = __builtin_shufflevector(__s1_245, __s1_245, __lane_reverse_128_16); \ |
| 45151 | float16x4_t __rev2_245; __rev2_245 = __builtin_shufflevector(__s2_245, __s2_245, __lane_reverse_64_16); \ |
| 45152 | __ret_245 = __noswap_vfmaq_lane_f16(__rev0_245, -__rev1_245, __rev2_245, __p3_245); \ |
| 45153 | __ret_245 = __builtin_shufflevector(__ret_245, __ret_245, __lane_reverse_128_16); \ |
| 45154 | __ret_245; \ |
| 45155 | }) |
| 45156 | #endif |
| 45157 | |
| 45158 | #ifdef __LITTLE_ENDIAN__ |
| 45159 | #define vfms_lane_f16(__p0_246, __p1_246, __p2_246, __p3_246) __extension__ ({ \ |
| 45160 | float16x4_t __ret_246; \ |
| 45161 | float16x4_t __s0_246 = __p0_246; \ |
| 45162 | float16x4_t __s1_246 = __p1_246; \ |
| 45163 | float16x4_t __s2_246 = __p2_246; \ |
| 45164 | __ret_246 = vfma_lane_f16(__s0_246, -__s1_246, __s2_246, __p3_246); \ |
| 45165 | __ret_246; \ |
| 45166 | }) |
| 45167 | #else |
| 45168 | #define vfms_lane_f16(__p0_247, __p1_247, __p2_247, __p3_247) __extension__ ({ \ |
| 45169 | float16x4_t __ret_247; \ |
| 45170 | float16x4_t __s0_247 = __p0_247; \ |
| 45171 | float16x4_t __s1_247 = __p1_247; \ |
| 45172 | float16x4_t __s2_247 = __p2_247; \ |
| 45173 | float16x4_t __rev0_247; __rev0_247 = __builtin_shufflevector(__s0_247, __s0_247, __lane_reverse_64_16); \ |
| 45174 | float16x4_t __rev1_247; __rev1_247 = __builtin_shufflevector(__s1_247, __s1_247, __lane_reverse_64_16); \ |
| 45175 | float16x4_t __rev2_247; __rev2_247 = __builtin_shufflevector(__s2_247, __s2_247, __lane_reverse_64_16); \ |
| 45176 | __ret_247 = __noswap_vfma_lane_f16(__rev0_247, -__rev1_247, __rev2_247, __p3_247); \ |
| 45177 | __ret_247 = __builtin_shufflevector(__ret_247, __ret_247, __lane_reverse_64_16); \ |
| 45178 | __ret_247; \ |
| 45179 | }) |
| 45180 | #endif |
| 45181 | |
| 45182 | #ifdef __LITTLE_ENDIAN__ |
| 45183 | #define vfmsh_laneq_f16(__p0_248, __p1_248, __p2_248, __p3_248) __extension__ ({ \ |
| 45184 | float16_t __ret_248; \ |
| 45185 | float16_t __s0_248 = __p0_248; \ |
| 45186 | float16_t __s1_248 = __p1_248; \ |
| 45187 | float16x8_t __s2_248 = __p2_248; \ |
| 45188 | __ret_248 = vfmah_laneq_f16(__s0_248, -__s1_248, __s2_248, __p3_248); \ |
| 45189 | __ret_248; \ |
| 45190 | }) |
| 45191 | #else |
| 45192 | #define vfmsh_laneq_f16(__p0_249, __p1_249, __p2_249, __p3_249) __extension__ ({ \ |
| 45193 | float16_t __ret_249; \ |
| 45194 | float16_t __s0_249 = __p0_249; \ |
| 45195 | float16_t __s1_249 = __p1_249; \ |
| 45196 | float16x8_t __s2_249 = __p2_249; \ |
| 45197 | float16x8_t __rev2_249; __rev2_249 = __builtin_shufflevector(__s2_249, __s2_249, __lane_reverse_128_16); \ |
| 45198 | __ret_249 = __noswap_vfmah_laneq_f16(__s0_249, -__s1_249, __rev2_249, __p3_249); \ |
| 45199 | __ret_249; \ |
| 45200 | }) |
| 45201 | #endif |
| 45202 | |
| 45203 | #ifdef __LITTLE_ENDIAN__ |
| 45204 | #define vfmsq_laneq_f16(__p0_250, __p1_250, __p2_250, __p3_250) __extension__ ({ \ |
| 45205 | float16x8_t __ret_250; \ |
| 45206 | float16x8_t __s0_250 = __p0_250; \ |
| 45207 | float16x8_t __s1_250 = __p1_250; \ |
| 45208 | float16x8_t __s2_250 = __p2_250; \ |
| 45209 | __ret_250 = vfmaq_laneq_f16(__s0_250, -__s1_250, __s2_250, __p3_250); \ |
| 45326 | 45210 | __ret_250; \ |
| 45327 | 45211 | }) |
| 45328 | 45212 | #else |
| 45329 | | #define vfmsh_lane_f16(__p0_251, __p1_251, __p2_251, __p3_251) __extension__ ({ \ |
| 45330 | | float16_t __ret_251; \ |
| 45331 | | float16_t __s0_251 = __p0_251; \ |
| 45332 | | float16_t __s1_251 = __p1_251; \ |
| 45333 | | float16x4_t __s2_251 = __p2_251; \ |
| 45334 | | float16x4_t __rev2_251; __rev2_251 = __builtin_shufflevector(__s2_251, __s2_251, __lane_reverse_64_16); \ |
| 45335 | | __ret_251 = __noswap_vfmah_lane_f16(__s0_251, -__s1_251, __rev2_251, __p3_251); \ |
| 45213 | #define vfmsq_laneq_f16(__p0_251, __p1_251, __p2_251, __p3_251) __extension__ ({ \ |
| 45214 | float16x8_t __ret_251; \ |
| 45215 | float16x8_t __s0_251 = __p0_251; \ |
| 45216 | float16x8_t __s1_251 = __p1_251; \ |
| 45217 | float16x8_t __s2_251 = __p2_251; \ |
| 45218 | float16x8_t __rev0_251; __rev0_251 = __builtin_shufflevector(__s0_251, __s0_251, __lane_reverse_128_16); \ |
| 45219 | float16x8_t __rev1_251; __rev1_251 = __builtin_shufflevector(__s1_251, __s1_251, __lane_reverse_128_16); \ |
| 45220 | float16x8_t __rev2_251; __rev2_251 = __builtin_shufflevector(__s2_251, __s2_251, __lane_reverse_128_16); \ |
| 45221 | __ret_251 = __noswap_vfmaq_laneq_f16(__rev0_251, -__rev1_251, __rev2_251, __p3_251); \ |
| 45222 | __ret_251 = __builtin_shufflevector(__ret_251, __ret_251, __lane_reverse_128_16); \ |
| 45336 | 45223 | __ret_251; \ |
| 45337 | 45224 | }) |
| 45338 | 45225 | #endif |
| 45339 | 45226 | |
| 45340 | 45227 | #ifdef __LITTLE_ENDIAN__ |
| 45341 | | #define vfmsq_lane_f16(__p0_252, __p1_252, __p2_252, __p3_252) __extension__ ({ \ |
| 45342 | | float16x8_t __ret_252; \ |
| 45343 | | float16x8_t __s0_252 = __p0_252; \ |
| 45344 | | float16x8_t __s1_252 = __p1_252; \ |
| 45345 | | float16x4_t __s2_252 = __p2_252; \ |
| 45346 | | __ret_252 = vfmaq_lane_f16(__s0_252, -__s1_252, __s2_252, __p3_252); \ |
| 45228 | #define vfms_laneq_f16(__p0_252, __p1_252, __p2_252, __p3_252) __extension__ ({ \ |
| 45229 | float16x4_t __ret_252; \ |
| 45230 | float16x4_t __s0_252 = __p0_252; \ |
| 45231 | float16x4_t __s1_252 = __p1_252; \ |
| 45232 | float16x8_t __s2_252 = __p2_252; \ |
| 45233 | __ret_252 = vfma_laneq_f16(__s0_252, -__s1_252, __s2_252, __p3_252); \ |
| 45347 | 45234 | __ret_252; \ |
| 45348 | 45235 | }) |
| 45349 | 45236 | #else |
| 45350 | | #define vfmsq_lane_f16(__p0_253, __p1_253, __p2_253, __p3_253) __extension__ ({ \ |
| 45351 | | float16x8_t __ret_253; \ |
| 45352 | | float16x8_t __s0_253 = __p0_253; \ |
| 45353 | | float16x8_t __s1_253 = __p1_253; \ |
| 45354 | | float16x4_t __s2_253 = __p2_253; \ |
| 45355 | | float16x8_t __rev0_253; __rev0_253 = __builtin_shufflevector(__s0_253, __s0_253, __lane_reverse_128_16); \ |
| 45356 | | float16x8_t __rev1_253; __rev1_253 = __builtin_shufflevector(__s1_253, __s1_253, __lane_reverse_128_16); \ |
| 45357 | | float16x4_t __rev2_253; __rev2_253 = __builtin_shufflevector(__s2_253, __s2_253, __lane_reverse_64_16); \ |
| 45358 | | __ret_253 = __noswap_vfmaq_lane_f16(__rev0_253, -__rev1_253, __rev2_253, __p3_253); \ |
| 45359 | | __ret_253 = __builtin_shufflevector(__ret_253, __ret_253, __lane_reverse_128_16); \ |
| 45237 | #define vfms_laneq_f16(__p0_253, __p1_253, __p2_253, __p3_253) __extension__ ({ \ |
| 45238 | float16x4_t __ret_253; \ |
| 45239 | float16x4_t __s0_253 = __p0_253; \ |
| 45240 | float16x4_t __s1_253 = __p1_253; \ |
| 45241 | float16x8_t __s2_253 = __p2_253; \ |
| 45242 | float16x4_t __rev0_253; __rev0_253 = __builtin_shufflevector(__s0_253, __s0_253, __lane_reverse_64_16); \ |
| 45243 | float16x4_t __rev1_253; __rev1_253 = __builtin_shufflevector(__s1_253, __s1_253, __lane_reverse_64_16); \ |
| 45244 | float16x8_t __rev2_253; __rev2_253 = __builtin_shufflevector(__s2_253, __s2_253, __lane_reverse_128_16); \ |
| 45245 | __ret_253 = __noswap_vfma_laneq_f16(__rev0_253, -__rev1_253, __rev2_253, __p3_253); \ |
| 45246 | __ret_253 = __builtin_shufflevector(__ret_253, __ret_253, __lane_reverse_64_16); \ |
| 45360 | 45247 | __ret_253; \ |
| 45361 | 45248 | }) |
| 45362 | 45249 | #endif |
| 45363 | 45250 | |
| 45364 | 45251 | #ifdef __LITTLE_ENDIAN__ |
| 45365 | | #define vfms_lane_f16(__p0_254, __p1_254, __p2_254, __p3_254) __extension__ ({ \ |
| 45366 | | float16x4_t __ret_254; \ |
| 45367 | | float16x4_t __s0_254 = __p0_254; \ |
| 45368 | | float16x4_t __s1_254 = __p1_254; \ |
| 45369 | | float16x4_t __s2_254 = __p2_254; \ |
| 45370 | | __ret_254 = vfma_lane_f16(__s0_254, -__s1_254, __s2_254, __p3_254); \ |
| 45252 | #define vfmsq_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45253 | float16x8_t __ret; \ |
| 45254 | float16x8_t __s0 = __p0; \ |
| 45255 | float16x8_t __s1 = __p1; \ |
| 45256 | float16_t __s2 = __p2; \ |
| 45257 | __ret = vfmaq_f16(__s0, -__s1, (float16x8_t) {__s2, __s2, __s2, __s2, __s2, __s2, __s2, __s2}); \ |
| 45258 | __ret; \ |
| 45259 | }) |
| 45260 | #else |
| 45261 | #define vfmsq_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45262 | float16x8_t __ret; \ |
| 45263 | float16x8_t __s0 = __p0; \ |
| 45264 | float16x8_t __s1 = __p1; \ |
| 45265 | float16_t __s2 = __p2; \ |
| 45266 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45267 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 45268 | __ret = __noswap_vfmaq_f16(__rev0, -__rev1, (float16x8_t) {__s2, __s2, __s2, __s2, __s2, __s2, __s2, __s2}); \ |
| 45269 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 45270 | __ret; \ |
| 45271 | }) |
| 45272 | #endif |
| 45273 | |
| 45274 | #ifdef __LITTLE_ENDIAN__ |
| 45275 | #define vfms_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45276 | float16x4_t __ret; \ |
| 45277 | float16x4_t __s0 = __p0; \ |
| 45278 | float16x4_t __s1 = __p1; \ |
| 45279 | float16_t __s2 = __p2; \ |
| 45280 | __ret = vfma_f16(__s0, -__s1, (float16x4_t) {__s2, __s2, __s2, __s2}); \ |
| 45281 | __ret; \ |
| 45282 | }) |
| 45283 | #else |
| 45284 | #define vfms_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45285 | float16x4_t __ret; \ |
| 45286 | float16x4_t __s0 = __p0; \ |
| 45287 | float16x4_t __s1 = __p1; \ |
| 45288 | float16_t __s2 = __p2; \ |
| 45289 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45290 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 45291 | __ret = __noswap_vfma_f16(__rev0, -__rev1, (float16x4_t) {__s2, __s2, __s2, __s2}); \ |
| 45292 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 45293 | __ret; \ |
| 45294 | }) |
| 45295 | #endif |
| 45296 | |
| 45297 | #ifdef __LITTLE_ENDIAN__ |
| 45298 | #define vmaxnmvq_f16(__p0) __extension__ ({ \ |
| 45299 | float16_t __ret; \ |
| 45300 | float16x8_t __s0 = __p0; \ |
| 45301 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45302 | __ret; \ |
| 45303 | }) |
| 45304 | #else |
| 45305 | #define vmaxnmvq_f16(__p0) __extension__ ({ \ |
| 45306 | float16_t __ret; \ |
| 45307 | float16x8_t __s0 = __p0; \ |
| 45308 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45309 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45310 | __ret; \ |
| 45311 | }) |
| 45312 | #endif |
| 45313 | |
| 45314 | #ifdef __LITTLE_ENDIAN__ |
| 45315 | #define vmaxnmv_f16(__p0) __extension__ ({ \ |
| 45316 | float16_t __ret; \ |
| 45317 | float16x4_t __s0 = __p0; \ |
| 45318 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45319 | __ret; \ |
| 45320 | }) |
| 45321 | #else |
| 45322 | #define vmaxnmv_f16(__p0) __extension__ ({ \ |
| 45323 | float16_t __ret; \ |
| 45324 | float16x4_t __s0 = __p0; \ |
| 45325 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45326 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45327 | __ret; \ |
| 45328 | }) |
| 45329 | #endif |
| 45330 | |
| 45331 | #ifdef __LITTLE_ENDIAN__ |
| 45332 | #define vmaxvq_f16(__p0) __extension__ ({ \ |
| 45333 | float16_t __ret; \ |
| 45334 | float16x8_t __s0 = __p0; \ |
| 45335 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45336 | __ret; \ |
| 45337 | }) |
| 45338 | #else |
| 45339 | #define vmaxvq_f16(__p0) __extension__ ({ \ |
| 45340 | float16_t __ret; \ |
| 45341 | float16x8_t __s0 = __p0; \ |
| 45342 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45343 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45344 | __ret; \ |
| 45345 | }) |
| 45346 | #endif |
| 45347 | |
| 45348 | #ifdef __LITTLE_ENDIAN__ |
| 45349 | #define vmaxv_f16(__p0) __extension__ ({ \ |
| 45350 | float16_t __ret; \ |
| 45351 | float16x4_t __s0 = __p0; \ |
| 45352 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45353 | __ret; \ |
| 45354 | }) |
| 45355 | #else |
| 45356 | #define vmaxv_f16(__p0) __extension__ ({ \ |
| 45357 | float16_t __ret; \ |
| 45358 | float16x4_t __s0 = __p0; \ |
| 45359 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45360 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45361 | __ret; \ |
| 45362 | }) |
| 45363 | #endif |
| 45364 | |
| 45365 | #ifdef __LITTLE_ENDIAN__ |
| 45366 | #define vminnmvq_f16(__p0) __extension__ ({ \ |
| 45367 | float16_t __ret; \ |
| 45368 | float16x8_t __s0 = __p0; \ |
| 45369 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45370 | __ret; \ |
| 45371 | }) |
| 45372 | #else |
| 45373 | #define vminnmvq_f16(__p0) __extension__ ({ \ |
| 45374 | float16_t __ret; \ |
| 45375 | float16x8_t __s0 = __p0; \ |
| 45376 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45377 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45378 | __ret; \ |
| 45379 | }) |
| 45380 | #endif |
| 45381 | |
| 45382 | #ifdef __LITTLE_ENDIAN__ |
| 45383 | #define vminnmv_f16(__p0) __extension__ ({ \ |
| 45384 | float16_t __ret; \ |
| 45385 | float16x4_t __s0 = __p0; \ |
| 45386 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45387 | __ret; \ |
| 45388 | }) |
| 45389 | #else |
| 45390 | #define vminnmv_f16(__p0) __extension__ ({ \ |
| 45391 | float16_t __ret; \ |
| 45392 | float16x4_t __s0 = __p0; \ |
| 45393 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45394 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45395 | __ret; \ |
| 45396 | }) |
| 45397 | #endif |
| 45398 | |
| 45399 | #ifdef __LITTLE_ENDIAN__ |
| 45400 | #define vminvq_f16(__p0) __extension__ ({ \ |
| 45401 | float16_t __ret; \ |
| 45402 | float16x8_t __s0 = __p0; \ |
| 45403 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45404 | __ret; \ |
| 45405 | }) |
| 45406 | #else |
| 45407 | #define vminvq_f16(__p0) __extension__ ({ \ |
| 45408 | float16_t __ret; \ |
| 45409 | float16x8_t __s0 = __p0; \ |
| 45410 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45411 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45412 | __ret; \ |
| 45413 | }) |
| 45414 | #endif |
| 45415 | |
| 45416 | #ifdef __LITTLE_ENDIAN__ |
| 45417 | #define vminv_f16(__p0) __extension__ ({ \ |
| 45418 | float16_t __ret; \ |
| 45419 | float16x4_t __s0 = __p0; \ |
| 45420 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45421 | __ret; \ |
| 45422 | }) |
| 45423 | #else |
| 45424 | #define vminv_f16(__p0) __extension__ ({ \ |
| 45425 | float16_t __ret; \ |
| 45426 | float16x4_t __s0 = __p0; \ |
| 45427 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45428 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45429 | __ret; \ |
| 45430 | }) |
| 45431 | #endif |
| 45432 | |
| 45433 | #ifdef __LITTLE_ENDIAN__ |
| 45434 | #define vmulq_laneq_f16(__p0_254, __p1_254, __p2_254) __extension__ ({ \ |
| 45435 | float16x8_t __ret_254; \ |
| 45436 | float16x8_t __s0_254 = __p0_254; \ |
| 45437 | float16x8_t __s1_254 = __p1_254; \ |
| 45438 | __ret_254 = __s0_254 * splatq_laneq_f16(__s1_254, __p2_254); \ |
| 45371 | 45439 | __ret_254; \ |
| 45372 | 45440 | }) |
| 45373 | 45441 | #else |
| 45374 | | #define vfms_lane_f16(__p0_255, __p1_255, __p2_255, __p3_255) __extension__ ({ \ |
| 45375 | | float16x4_t __ret_255; \ |
| 45376 | | float16x4_t __s0_255 = __p0_255; \ |
| 45377 | | float16x4_t __s1_255 = __p1_255; \ |
| 45378 | | float16x4_t __s2_255 = __p2_255; \ |
| 45379 | | float16x4_t __rev0_255; __rev0_255 = __builtin_shufflevector(__s0_255, __s0_255, __lane_reverse_64_16); \ |
| 45380 | | float16x4_t __rev1_255; __rev1_255 = __builtin_shufflevector(__s1_255, __s1_255, __lane_reverse_64_16); \ |
| 45381 | | float16x4_t __rev2_255; __rev2_255 = __builtin_shufflevector(__s2_255, __s2_255, __lane_reverse_64_16); \ |
| 45382 | | __ret_255 = __noswap_vfma_lane_f16(__rev0_255, -__rev1_255, __rev2_255, __p3_255); \ |
| 45383 | | __ret_255 = __builtin_shufflevector(__ret_255, __ret_255, __lane_reverse_64_16); \ |
| 45442 | #define vmulq_laneq_f16(__p0_255, __p1_255, __p2_255) __extension__ ({ \ |
| 45443 | float16x8_t __ret_255; \ |
| 45444 | float16x8_t __s0_255 = __p0_255; \ |
| 45445 | float16x8_t __s1_255 = __p1_255; \ |
| 45446 | float16x8_t __rev0_255; __rev0_255 = __builtin_shufflevector(__s0_255, __s0_255, __lane_reverse_128_16); \ |
| 45447 | float16x8_t __rev1_255; __rev1_255 = __builtin_shufflevector(__s1_255, __s1_255, __lane_reverse_128_16); \ |
| 45448 | __ret_255 = __rev0_255 * __noswap_splatq_laneq_f16(__rev1_255, __p2_255); \ |
| 45449 | __ret_255 = __builtin_shufflevector(__ret_255, __ret_255, __lane_reverse_128_16); \ |
| 45384 | 45450 | __ret_255; \ |
| 45385 | 45451 | }) |
| 45386 | 45452 | #endif |
| 45387 | 45453 | |
| 45388 | 45454 | #ifdef __LITTLE_ENDIAN__ |
| 45389 | | #define vfmsh_laneq_f16(__p0_256, __p1_256, __p2_256, __p3_256) __extension__ ({ \ |
| 45390 | | float16_t __ret_256; \ |
| 45391 | | float16_t __s0_256 = __p0_256; \ |
| 45392 | | float16_t __s1_256 = __p1_256; \ |
| 45393 | | float16x8_t __s2_256 = __p2_256; \ |
| 45394 | | __ret_256 = vfmah_laneq_f16(__s0_256, -__s1_256, __s2_256, __p3_256); \ |
| 45455 | #define vmul_laneq_f16(__p0_256, __p1_256, __p2_256) __extension__ ({ \ |
| 45456 | float16x4_t __ret_256; \ |
| 45457 | float16x4_t __s0_256 = __p0_256; \ |
| 45458 | float16x8_t __s1_256 = __p1_256; \ |
| 45459 | __ret_256 = __s0_256 * splat_laneq_f16(__s1_256, __p2_256); \ |
| 45395 | 45460 | __ret_256; \ |
| 45396 | 45461 | }) |
| 45397 | 45462 | #else |
| 45398 | | #define vfmsh_laneq_f16(__p0_257, __p1_257, __p2_257, __p3_257) __extension__ ({ \ |
| 45399 | | float16_t __ret_257; \ |
| 45400 | | float16_t __s0_257 = __p0_257; \ |
| 45401 | | float16_t __s1_257 = __p1_257; \ |
| 45402 | | float16x8_t __s2_257 = __p2_257; \ |
| 45403 | | float16x8_t __rev2_257; __rev2_257 = __builtin_shufflevector(__s2_257, __s2_257, __lane_reverse_128_16); \ |
| 45404 | | __ret_257 = __noswap_vfmah_laneq_f16(__s0_257, -__s1_257, __rev2_257, __p3_257); \ |
| 45463 | #define vmul_laneq_f16(__p0_257, __p1_257, __p2_257) __extension__ ({ \ |
| 45464 | float16x4_t __ret_257; \ |
| 45465 | float16x4_t __s0_257 = __p0_257; \ |
| 45466 | float16x8_t __s1_257 = __p1_257; \ |
| 45467 | float16x4_t __rev0_257; __rev0_257 = __builtin_shufflevector(__s0_257, __s0_257, __lane_reverse_64_16); \ |
| 45468 | float16x8_t __rev1_257; __rev1_257 = __builtin_shufflevector(__s1_257, __s1_257, __lane_reverse_128_16); \ |
| 45469 | __ret_257 = __rev0_257 * __noswap_splat_laneq_f16(__rev1_257, __p2_257); \ |
| 45470 | __ret_257 = __builtin_shufflevector(__ret_257, __ret_257, __lane_reverse_64_16); \ |
| 45405 | 45471 | __ret_257; \ |
| 45406 | 45472 | }) |
| 45407 | 45473 | #endif |
| 45408 | 45474 | |
| 45409 | 45475 | #ifdef __LITTLE_ENDIAN__ |
| 45410 | | #define vfmsq_laneq_f16(__p0_258, __p1_258, __p2_258, __p3_258) __extension__ ({ \ |
| 45476 | __ai __attribute__((target("fullfp16,neon"))) float16x8_t vmulxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 45477 | float16x8_t __ret; |
| 45478 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmulxq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 45479 | return __ret; |
| 45480 | } |
| 45481 | #else |
| 45482 | __ai __attribute__((target("fullfp16,neon"))) float16x8_t vmulxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 45483 | float16x8_t __ret; |
| 45484 | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 45485 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 45486 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmulxq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 40)); |
| 45487 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 45488 | return __ret; |
| 45489 | } |
| 45490 | __ai __attribute__((target("fullfp16,neon"))) float16x8_t __noswap_vmulxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 45491 | float16x8_t __ret; |
| 45492 | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmulxq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 45493 | return __ret; |
| 45494 | } |
| 45495 | #endif |
| 45496 | |
| 45497 | #ifdef __LITTLE_ENDIAN__ |
| 45498 | __ai __attribute__((target("fullfp16,neon"))) float16x4_t vmulx_f16(float16x4_t __p0, float16x4_t __p1) { |
| 45499 | float16x4_t __ret; |
| 45500 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vmulx_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 45501 | return __ret; |
| 45502 | } |
| 45503 | #else |
| 45504 | __ai __attribute__((target("fullfp16,neon"))) float16x4_t vmulx_f16(float16x4_t __p0, float16x4_t __p1) { |
| 45505 | float16x4_t __ret; |
| 45506 | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 45507 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 45508 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vmulx_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 8)); |
| 45509 | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 45510 | return __ret; |
| 45511 | } |
| 45512 | __ai __attribute__((target("fullfp16,neon"))) float16x4_t __noswap_vmulx_f16(float16x4_t __p0, float16x4_t __p1) { |
| 45513 | float16x4_t __ret; |
| 45514 | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vmulx_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 45515 | return __ret; |
| 45516 | } |
| 45517 | #endif |
| 45518 | |
| 45519 | #ifdef __LITTLE_ENDIAN__ |
| 45520 | #define vmulxh_lane_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45521 | float16_t __ret; \ |
| 45522 | float16_t __s0 = __p0; \ |
| 45523 | float16x4_t __s1 = __p1; \ |
| 45524 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_lane_f16(__s0, __s1, __p2)); \ |
| 45525 | __ret; \ |
| 45526 | }) |
| 45527 | #else |
| 45528 | #define vmulxh_lane_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45529 | float16_t __ret; \ |
| 45530 | float16_t __s0 = __p0; \ |
| 45531 | float16x4_t __s1 = __p1; \ |
| 45532 | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 45533 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_lane_f16(__s0, __rev1, __p2)); \ |
| 45534 | __ret; \ |
| 45535 | }) |
| 45536 | #endif |
| 45537 | |
| 45538 | #ifdef __LITTLE_ENDIAN__ |
| 45539 | #define vmulxq_lane_f16(__p0_258, __p1_258, __p2_258) __extension__ ({ \ |
| 45411 | 45540 | float16x8_t __ret_258; \ |
| 45412 | 45541 | float16x8_t __s0_258 = __p0_258; \ |
| 45413 | | float16x8_t __s1_258 = __p1_258; \ |
| 45414 | | float16x8_t __s2_258 = __p2_258; \ |
| 45415 | | __ret_258 = vfmaq_laneq_f16(__s0_258, -__s1_258, __s2_258, __p3_258); \ |
| 45542 | float16x4_t __s1_258 = __p1_258; \ |
| 45543 | __ret_258 = vmulxq_f16(__s0_258, splatq_lane_f16(__s1_258, __p2_258)); \ |
| 45416 | 45544 | __ret_258; \ |
| 45417 | 45545 | }) |
| 45418 | 45546 | #else |
| 45419 | | #define vfmsq_laneq_f16(__p0_259, __p1_259, __p2_259, __p3_259) __extension__ ({ \ |
| 45547 | #define vmulxq_lane_f16(__p0_259, __p1_259, __p2_259) __extension__ ({ \ |
| 45420 | 45548 | float16x8_t __ret_259; \ |
| 45421 | 45549 | float16x8_t __s0_259 = __p0_259; \ |
| 45422 | | float16x8_t __s1_259 = __p1_259; \ |
| 45423 | | float16x8_t __s2_259 = __p2_259; \ |
| 45550 | float16x4_t __s1_259 = __p1_259; \ |
| 45424 | 45551 | float16x8_t __rev0_259; __rev0_259 = __builtin_shufflevector(__s0_259, __s0_259, __lane_reverse_128_16); \ |
| 45425 | | float16x8_t __rev1_259; __rev1_259 = __builtin_shufflevector(__s1_259, __s1_259, __lane_reverse_128_16); \ |
| 45426 | | float16x8_t __rev2_259; __rev2_259 = __builtin_shufflevector(__s2_259, __s2_259, __lane_reverse_128_16); \ |
| 45427 | | __ret_259 = __noswap_vfmaq_laneq_f16(__rev0_259, -__rev1_259, __rev2_259, __p3_259); \ |
| 45552 | float16x4_t __rev1_259; __rev1_259 = __builtin_shufflevector(__s1_259, __s1_259, __lane_reverse_64_16); \ |
| 45553 | __ret_259 = __noswap_vmulxq_f16(__rev0_259, __noswap_splatq_lane_f16(__rev1_259, __p2_259)); \ |
| 45428 | 45554 | __ret_259 = __builtin_shufflevector(__ret_259, __ret_259, __lane_reverse_128_16); \ |
| 45429 | 45555 | __ret_259; \ |
| 45430 | 45556 | }) |
| 45431 | 45557 | #endif |
| 45432 | 45558 | |
| 45433 | 45559 | #ifdef __LITTLE_ENDIAN__ |
| 45434 | | #define vfms_laneq_f16(__p0_260, __p1_260, __p2_260, __p3_260) __extension__ ({ \ |
| 45560 | #define vmulx_lane_f16(__p0_260, __p1_260, __p2_260) __extension__ ({ \ |
| 45435 | 45561 | float16x4_t __ret_260; \ |
| 45436 | 45562 | float16x4_t __s0_260 = __p0_260; \ |
| 45437 | 45563 | float16x4_t __s1_260 = __p1_260; \ |
| 45438 | | float16x8_t __s2_260 = __p2_260; \ |
| 45439 | | __ret_260 = vfma_laneq_f16(__s0_260, -__s1_260, __s2_260, __p3_260); \ |
| 45564 | __ret_260 = vmulx_f16(__s0_260, splat_lane_f16(__s1_260, __p2_260)); \ |
| 45440 | 45565 | __ret_260; \ |
| 45441 | 45566 | }) |
| 45442 | 45567 | #else |
| 45443 | | #define vfms_laneq_f16(__p0_261, __p1_261, __p2_261, __p3_261) __extension__ ({ \ |
| 45568 | #define vmulx_lane_f16(__p0_261, __p1_261, __p2_261) __extension__ ({ \ |
| 45444 | 45569 | float16x4_t __ret_261; \ |
| 45445 | 45570 | float16x4_t __s0_261 = __p0_261; \ |
| 45446 | 45571 | float16x4_t __s1_261 = __p1_261; \ |
| 45447 | | float16x8_t __s2_261 = __p2_261; \ |
| 45448 | 45572 | float16x4_t __rev0_261; __rev0_261 = __builtin_shufflevector(__s0_261, __s0_261, __lane_reverse_64_16); \ |
| 45449 | 45573 | float16x4_t __rev1_261; __rev1_261 = __builtin_shufflevector(__s1_261, __s1_261, __lane_reverse_64_16); \ |
| 45450 | | float16x8_t __rev2_261; __rev2_261 = __builtin_shufflevector(__s2_261, __s2_261, __lane_reverse_128_16); \ |
| 45451 | | __ret_261 = __noswap_vfma_laneq_f16(__rev0_261, -__rev1_261, __rev2_261, __p3_261); \ |
| 45574 | __ret_261 = __noswap_vmulx_f16(__rev0_261, __noswap_splat_lane_f16(__rev1_261, __p2_261)); \ |
| 45452 | 45575 | __ret_261 = __builtin_shufflevector(__ret_261, __ret_261, __lane_reverse_64_16); \ |
| 45453 | 45576 | __ret_261; \ |
| 45454 | 45577 | }) |
| 45455 | 45578 | #endif |
| 45456 | 45579 | |
| 45457 | 45580 | #ifdef __LITTLE_ENDIAN__ |
| 45458 | | #define vfmsq_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45459 | | float16x8_t __ret; \ |
| 45460 | | float16x8_t __s0 = __p0; \ |
| 45581 | #define vmulxh_laneq_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45582 | float16_t __ret; \ |
| 45583 | float16_t __s0 = __p0; \ |
| 45461 | 45584 | float16x8_t __s1 = __p1; \ |
| 45462 | | float16_t __s2 = __p2; \ |
| 45463 | | __ret = vfmaq_f16(__s0, -__s1, (float16x8_t) {__s2, __s2, __s2, __s2, __s2, __s2, __s2, __s2}); \ |
| 45585 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_laneq_f16(__s0, __s1, __p2)); \ |
| 45464 | 45586 | __ret; \ |
| 45465 | 45587 | }) |
| 45466 | 45588 | #else |
| 45467 | | #define vfmsq_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45468 | | float16x8_t __ret; \ |
| 45469 | | float16x8_t __s0 = __p0; \ |
| 45589 | #define vmulxh_laneq_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45590 | float16_t __ret; \ |
| 45591 | float16_t __s0 = __p0; \ |
| 45470 | 45592 | float16x8_t __s1 = __p1; \ |
| 45471 | | float16_t __s2 = __p2; \ |
| 45472 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45473 | 45593 | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 45474 | | __ret = __noswap_vfmaq_f16(__rev0, -__rev1, (float16x8_t) {__s2, __s2, __s2, __s2, __s2, __s2, __s2, __s2}); \ |
| 45475 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); \ |
| 45476 | | __ret; \ |
| 45477 | | }) |
| 45478 | | #endif |
| 45479 | | |
| 45480 | | #ifdef __LITTLE_ENDIAN__ |
| 45481 | | #define vfms_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45482 | | float16x4_t __ret; \ |
| 45483 | | float16x4_t __s0 = __p0; \ |
| 45484 | | float16x4_t __s1 = __p1; \ |
| 45485 | | float16_t __s2 = __p2; \ |
| 45486 | | __ret = vfma_f16(__s0, -__s1, (float16x4_t) {__s2, __s2, __s2, __s2}); \ |
| 45487 | | __ret; \ |
| 45488 | | }) |
| 45489 | | #else |
| 45490 | | #define vfms_n_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45491 | | float16x4_t __ret; \ |
| 45492 | | float16x4_t __s0 = __p0; \ |
| 45493 | | float16x4_t __s1 = __p1; \ |
| 45494 | | float16_t __s2 = __p2; \ |
| 45495 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45496 | | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 45497 | | __ret = __noswap_vfma_f16(__rev0, -__rev1, (float16x4_t) {__s2, __s2, __s2, __s2}); \ |
| 45498 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); \ |
| 45499 | | __ret; \ |
| 45500 | | }) |
| 45501 | | #endif |
| 45502 | | |
| 45503 | | #ifdef __LITTLE_ENDIAN__ |
| 45504 | | #define vmaxnmvq_f16(__p0) __extension__ ({ \ |
| 45505 | | float16_t __ret; \ |
| 45506 | | float16x8_t __s0 = __p0; \ |
| 45507 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45508 | | __ret; \ |
| 45509 | | }) |
| 45510 | | #else |
| 45511 | | #define vmaxnmvq_f16(__p0) __extension__ ({ \ |
| 45512 | | float16_t __ret; \ |
| 45513 | | float16x8_t __s0 = __p0; \ |
| 45514 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45515 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45516 | | __ret; \ |
| 45517 | | }) |
| 45518 | | #endif |
| 45519 | | |
| 45520 | | #ifdef __LITTLE_ENDIAN__ |
| 45521 | | #define vmaxnmv_f16(__p0) __extension__ ({ \ |
| 45522 | | float16_t __ret; \ |
| 45523 | | float16x4_t __s0 = __p0; \ |
| 45524 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45525 | | __ret; \ |
| 45526 | | }) |
| 45527 | | #else |
| 45528 | | #define vmaxnmv_f16(__p0) __extension__ ({ \ |
| 45529 | | float16_t __ret; \ |
| 45530 | | float16x4_t __s0 = __p0; \ |
| 45531 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45532 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxnmv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45533 | | __ret; \ |
| 45534 | | }) |
| 45535 | | #endif |
| 45536 | | |
| 45537 | | #ifdef __LITTLE_ENDIAN__ |
| 45538 | | #define vmaxvq_f16(__p0) __extension__ ({ \ |
| 45539 | | float16_t __ret; \ |
| 45540 | | float16x8_t __s0 = __p0; \ |
| 45541 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45542 | | __ret; \ |
| 45543 | | }) |
| 45544 | | #else |
| 45545 | | #define vmaxvq_f16(__p0) __extension__ ({ \ |
| 45546 | | float16_t __ret; \ |
| 45547 | | float16x8_t __s0 = __p0; \ |
| 45548 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45549 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45550 | | __ret; \ |
| 45551 | | }) |
| 45552 | | #endif |
| 45553 | | |
| 45554 | | #ifdef __LITTLE_ENDIAN__ |
| 45555 | | #define vmaxv_f16(__p0) __extension__ ({ \ |
| 45556 | | float16_t __ret; \ |
| 45557 | | float16x4_t __s0 = __p0; \ |
| 45558 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45559 | | __ret; \ |
| 45560 | | }) |
| 45561 | | #else |
| 45562 | | #define vmaxv_f16(__p0) __extension__ ({ \ |
| 45563 | | float16_t __ret; \ |
| 45564 | | float16x4_t __s0 = __p0; \ |
| 45565 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45566 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmaxv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45567 | | __ret; \ |
| 45568 | | }) |
| 45569 | | #endif |
| 45570 | | |
| 45571 | | #ifdef __LITTLE_ENDIAN__ |
| 45572 | | #define vminnmvq_f16(__p0) __extension__ ({ \ |
| 45573 | | float16_t __ret; \ |
| 45574 | | float16x8_t __s0 = __p0; \ |
| 45575 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45576 | | __ret; \ |
| 45577 | | }) |
| 45578 | | #else |
| 45579 | | #define vminnmvq_f16(__p0) __extension__ ({ \ |
| 45580 | | float16_t __ret; \ |
| 45581 | | float16x8_t __s0 = __p0; \ |
| 45582 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45583 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45584 | | __ret; \ |
| 45585 | | }) |
| 45586 | | #endif |
| 45587 | | |
| 45588 | | #ifdef __LITTLE_ENDIAN__ |
| 45589 | | #define vminnmv_f16(__p0) __extension__ ({ \ |
| 45590 | | float16_t __ret; \ |
| 45591 | | float16x4_t __s0 = __p0; \ |
| 45592 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45593 | | __ret; \ |
| 45594 | | }) |
| 45595 | | #else |
| 45596 | | #define vminnmv_f16(__p0) __extension__ ({ \ |
| 45597 | | float16_t __ret; \ |
| 45598 | | float16x4_t __s0 = __p0; \ |
| 45599 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45600 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminnmv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45601 | | __ret; \ |
| 45602 | | }) |
| 45603 | | #endif |
| 45604 | | |
| 45605 | | #ifdef __LITTLE_ENDIAN__ |
| 45606 | | #define vminvq_f16(__p0) __extension__ ({ \ |
| 45607 | | float16_t __ret; \ |
| 45608 | | float16x8_t __s0 = __p0; \ |
| 45609 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminvq_f16(__builtin_bit_cast(int8x16_t, __s0))); \ |
| 45610 | | __ret; \ |
| 45611 | | }) |
| 45612 | | #else |
| 45613 | | #define vminvq_f16(__p0) __extension__ ({ \ |
| 45614 | | float16_t __ret; \ |
| 45615 | | float16x8_t __s0 = __p0; \ |
| 45616 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_128_16); \ |
| 45617 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminvq_f16(__builtin_bit_cast(int8x16_t, __rev0))); \ |
| 45618 | | __ret; \ |
| 45619 | | }) |
| 45620 | | #endif |
| 45621 | | |
| 45622 | | #ifdef __LITTLE_ENDIAN__ |
| 45623 | | #define vminv_f16(__p0) __extension__ ({ \ |
| 45624 | | float16_t __ret; \ |
| 45625 | | float16x4_t __s0 = __p0; \ |
| 45626 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminv_f16(__builtin_bit_cast(int8x8_t, __s0))); \ |
| 45627 | | __ret; \ |
| 45628 | | }) |
| 45629 | | #else |
| 45630 | | #define vminv_f16(__p0) __extension__ ({ \ |
| 45631 | | float16_t __ret; \ |
| 45632 | | float16x4_t __s0 = __p0; \ |
| 45633 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__s0, __s0, __lane_reverse_64_16); \ |
| 45634 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vminv_f16(__builtin_bit_cast(int8x8_t, __rev0))); \ |
| 45594 | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_laneq_f16(__s0, __rev1, __p2)); \ |
| 45635 | 45595 | __ret; \ |
| 45636 | 45596 | }) |
| 45637 | 45597 | #endif |
| 45638 | 45598 | |
| 45639 | 45599 | #ifdef __LITTLE_ENDIAN__ |
| 45640 | | #define vmulq_laneq_f16(__p0_262, __p1_262, __p2_262) __extension__ ({ \ |
| 45600 | #define vmulxq_laneq_f16(__p0_262, __p1_262, __p2_262) __extension__ ({ \ |
| 45641 | 45601 | float16x8_t __ret_262; \ |
| 45642 | 45602 | float16x8_t __s0_262 = __p0_262; \ |
| 45643 | 45603 | float16x8_t __s1_262 = __p1_262; \ |
| 45644 | | __ret_262 = __s0_262 * splatq_laneq_f16(__s1_262, __p2_262); \ |
| 45604 | __ret_262 = vmulxq_f16(__s0_262, splatq_laneq_f16(__s1_262, __p2_262)); \ |
| 45645 | 45605 | __ret_262; \ |
| 45646 | 45606 | }) |
| 45647 | 45607 | #else |
| 45648 | | #define vmulq_laneq_f16(__p0_263, __p1_263, __p2_263) __extension__ ({ \ |
| 45608 | #define vmulxq_laneq_f16(__p0_263, __p1_263, __p2_263) __extension__ ({ \ |
| 45649 | 45609 | float16x8_t __ret_263; \ |
| 45650 | 45610 | float16x8_t __s0_263 = __p0_263; \ |
| 45651 | 45611 | float16x8_t __s1_263 = __p1_263; \ |
| 45652 | 45612 | float16x8_t __rev0_263; __rev0_263 = __builtin_shufflevector(__s0_263, __s0_263, __lane_reverse_128_16); \ |
| 45653 | 45613 | float16x8_t __rev1_263; __rev1_263 = __builtin_shufflevector(__s1_263, __s1_263, __lane_reverse_128_16); \ |
| 45654 | | __ret_263 = __rev0_263 * __noswap_splatq_laneq_f16(__rev1_263, __p2_263); \ |
| 45614 | __ret_263 = __noswap_vmulxq_f16(__rev0_263, __noswap_splatq_laneq_f16(__rev1_263, __p2_263)); \ |
| 45655 | 45615 | __ret_263 = __builtin_shufflevector(__ret_263, __ret_263, __lane_reverse_128_16); \ |
| 45656 | 45616 | __ret_263; \ |
| 45657 | 45617 | }) |
| 45658 | 45618 | #endif |
| 45659 | 45619 | |
| 45660 | 45620 | #ifdef __LITTLE_ENDIAN__ |
| 45661 | | #define vmul_laneq_f16(__p0_264, __p1_264, __p2_264) __extension__ ({ \ |
| 45621 | #define vmulx_laneq_f16(__p0_264, __p1_264, __p2_264) __extension__ ({ \ |
| 45662 | 45622 | float16x4_t __ret_264; \ |
| 45663 | 45623 | float16x4_t __s0_264 = __p0_264; \ |
| 45664 | 45624 | float16x8_t __s1_264 = __p1_264; \ |
| 45665 | | __ret_264 = __s0_264 * splat_laneq_f16(__s1_264, __p2_264); \ |
| 45625 | __ret_264 = vmulx_f16(__s0_264, splat_laneq_f16(__s1_264, __p2_264)); \ |
| 45666 | 45626 | __ret_264; \ |
| 45667 | 45627 | }) |
| 45668 | 45628 | #else |
| 45669 | | #define vmul_laneq_f16(__p0_265, __p1_265, __p2_265) __extension__ ({ \ |
| 45629 | #define vmulx_laneq_f16(__p0_265, __p1_265, __p2_265) __extension__ ({ \ |
| 45670 | 45630 | float16x4_t __ret_265; \ |
| 45671 | 45631 | float16x4_t __s0_265 = __p0_265; \ |
| 45672 | 45632 | float16x8_t __s1_265 = __p1_265; \ |
| 45673 | 45633 | float16x4_t __rev0_265; __rev0_265 = __builtin_shufflevector(__s0_265, __s0_265, __lane_reverse_64_16); \ |
| 45674 | 45634 | float16x8_t __rev1_265; __rev1_265 = __builtin_shufflevector(__s1_265, __s1_265, __lane_reverse_128_16); \ |
| 45675 | | __ret_265 = __rev0_265 * __noswap_splat_laneq_f16(__rev1_265, __p2_265); \ |
| 45635 | __ret_265 = __noswap_vmulx_f16(__rev0_265, __noswap_splat_laneq_f16(__rev1_265, __p2_265)); \ |
| 45676 | 45636 | __ret_265 = __builtin_shufflevector(__ret_265, __ret_265, __lane_reverse_64_16); \ |
| 45677 | 45637 | __ret_265; \ |
| 45678 | 45638 | }) |
| 45679 | 45639 | #endif |
| 45680 | 45640 | |
| 45681 | | #ifdef __LITTLE_ENDIAN__ |
| 45682 | | __ai __attribute__((target("fullfp16,neon"))) float16x8_t vmulxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 45683 | | float16x8_t __ret; |
| 45684 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmulxq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 45685 | | return __ret; |
| 45686 | | } |
| 45687 | | #else |
| 45688 | | __ai __attribute__((target("fullfp16,neon"))) float16x8_t vmulxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 45689 | | float16x8_t __ret; |
| 45690 | | float16x8_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_128_16); |
| 45691 | | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_128_16); |
| 45692 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmulxq_f16(__builtin_bit_cast(int8x16_t, __rev0), __builtin_bit_cast(int8x16_t, __rev1), 40)); |
| 45693 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_128_16); |
| 45694 | | return __ret; |
| 45695 | | } |
| 45696 | | __ai __attribute__((target("fullfp16,neon"))) float16x8_t __noswap_vmulxq_f16(float16x8_t __p0, float16x8_t __p1) { |
| 45697 | | float16x8_t __ret; |
| 45698 | | __ret = __builtin_bit_cast(float16x8_t, __builtin_neon_vmulxq_f16(__builtin_bit_cast(int8x16_t, __p0), __builtin_bit_cast(int8x16_t, __p1), 40)); |
| 45699 | | return __ret; |
| 45700 | | } |
| 45701 | | #endif |
| 45702 | | |
| 45703 | | #ifdef __LITTLE_ENDIAN__ |
| 45704 | | __ai __attribute__((target("fullfp16,neon"))) float16x4_t vmulx_f16(float16x4_t __p0, float16x4_t __p1) { |
| 45705 | | float16x4_t __ret; |
| 45706 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vmulx_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 45707 | | return __ret; |
| 45708 | | } |
| 45709 | | #else |
| 45710 | | __ai __attribute__((target("fullfp16,neon"))) float16x4_t vmulx_f16(float16x4_t __p0, float16x4_t __p1) { |
| 45711 | | float16x4_t __ret; |
| 45712 | | float16x4_t __rev0; __rev0 = __builtin_shufflevector(__p0, __p0, __lane_reverse_64_16); |
| 45713 | | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__p1, __p1, __lane_reverse_64_16); |
| 45714 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vmulx_f16(__builtin_bit_cast(int8x8_t, __rev0), __builtin_bit_cast(int8x8_t, __rev1), 8)); |
| 45715 | | __ret = __builtin_shufflevector(__ret, __ret, __lane_reverse_64_16); |
| 45716 | | return __ret; |
| 45717 | | } |
| 45718 | | __ai __attribute__((target("fullfp16,neon"))) float16x4_t __noswap_vmulx_f16(float16x4_t __p0, float16x4_t __p1) { |
| 45719 | | float16x4_t __ret; |
| 45720 | | __ret = __builtin_bit_cast(float16x4_t, __builtin_neon_vmulx_f16(__builtin_bit_cast(int8x8_t, __p0), __builtin_bit_cast(int8x8_t, __p1), 8)); |
| 45721 | | return __ret; |
| 45722 | | } |
| 45723 | | #endif |
| 45724 | | |
| 45725 | | #ifdef __LITTLE_ENDIAN__ |
| 45726 | | #define vmulxh_lane_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45727 | | float16_t __ret; \ |
| 45728 | | float16_t __s0 = __p0; \ |
| 45729 | | float16x4_t __s1 = __p1; \ |
| 45730 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_lane_f16(__s0, __s1, __p2)); \ |
| 45731 | | __ret; \ |
| 45732 | | }) |
| 45733 | | #else |
| 45734 | | #define vmulxh_lane_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45735 | | float16_t __ret; \ |
| 45736 | | float16_t __s0 = __p0; \ |
| 45737 | | float16x4_t __s1 = __p1; \ |
| 45738 | | float16x4_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_64_16); \ |
| 45739 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_lane_f16(__s0, __rev1, __p2)); \ |
| 45740 | | __ret; \ |
| 45741 | | }) |
| 45742 | | #endif |
| 45743 | | |
| 45744 | | #ifdef __LITTLE_ENDIAN__ |
| 45745 | | #define vmulxq_lane_f16(__p0_266, __p1_266, __p2_266) __extension__ ({ \ |
| 45746 | | float16x8_t __ret_266; \ |
| 45747 | | float16x8_t __s0_266 = __p0_266; \ |
| 45748 | | float16x4_t __s1_266 = __p1_266; \ |
| 45749 | | __ret_266 = vmulxq_f16(__s0_266, splatq_lane_f16(__s1_266, __p2_266)); \ |
| 45750 | | __ret_266; \ |
| 45751 | | }) |
| 45752 | | #else |
| 45753 | | #define vmulxq_lane_f16(__p0_267, __p1_267, __p2_267) __extension__ ({ \ |
| 45754 | | float16x8_t __ret_267; \ |
| 45755 | | float16x8_t __s0_267 = __p0_267; \ |
| 45756 | | float16x4_t __s1_267 = __p1_267; \ |
| 45757 | | float16x8_t __rev0_267; __rev0_267 = __builtin_shufflevector(__s0_267, __s0_267, __lane_reverse_128_16); \ |
| 45758 | | float16x4_t __rev1_267; __rev1_267 = __builtin_shufflevector(__s1_267, __s1_267, __lane_reverse_64_16); \ |
| 45759 | | __ret_267 = __noswap_vmulxq_f16(__rev0_267, __noswap_splatq_lane_f16(__rev1_267, __p2_267)); \ |
| 45760 | | __ret_267 = __builtin_shufflevector(__ret_267, __ret_267, __lane_reverse_128_16); \ |
| 45761 | | __ret_267; \ |
| 45762 | | }) |
| 45763 | | #endif |
| 45764 | | |
| 45765 | | #ifdef __LITTLE_ENDIAN__ |
| 45766 | | #define vmulx_lane_f16(__p0_268, __p1_268, __p2_268) __extension__ ({ \ |
| 45767 | | float16x4_t __ret_268; \ |
| 45768 | | float16x4_t __s0_268 = __p0_268; \ |
| 45769 | | float16x4_t __s1_268 = __p1_268; \ |
| 45770 | | __ret_268 = vmulx_f16(__s0_268, splat_lane_f16(__s1_268, __p2_268)); \ |
| 45771 | | __ret_268; \ |
| 45772 | | }) |
| 45773 | | #else |
| 45774 | | #define vmulx_lane_f16(__p0_269, __p1_269, __p2_269) __extension__ ({ \ |
| 45775 | | float16x4_t __ret_269; \ |
| 45776 | | float16x4_t __s0_269 = __p0_269; \ |
| 45777 | | float16x4_t __s1_269 = __p1_269; \ |
| 45778 | | float16x4_t __rev0_269; __rev0_269 = __builtin_shufflevector(__s0_269, __s0_269, __lane_reverse_64_16); \ |
| 45779 | | float16x4_t __rev1_269; __rev1_269 = __builtin_shufflevector(__s1_269, __s1_269, __lane_reverse_64_16); \ |
| 45780 | | __ret_269 = __noswap_vmulx_f16(__rev0_269, __noswap_splat_lane_f16(__rev1_269, __p2_269)); \ |
| 45781 | | __ret_269 = __builtin_shufflevector(__ret_269, __ret_269, __lane_reverse_64_16); \ |
| 45782 | | __ret_269; \ |
| 45783 | | }) |
| 45784 | | #endif |
| 45785 | | |
| 45786 | | #ifdef __LITTLE_ENDIAN__ |
| 45787 | | #define vmulxh_laneq_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45788 | | float16_t __ret; \ |
| 45789 | | float16_t __s0 = __p0; \ |
| 45790 | | float16x8_t __s1 = __p1; \ |
| 45791 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_laneq_f16(__s0, __s1, __p2)); \ |
| 45792 | | __ret; \ |
| 45793 | | }) |
| 45794 | | #else |
| 45795 | | #define vmulxh_laneq_f16(__p0, __p1, __p2) __extension__ ({ \ |
| 45796 | | float16_t __ret; \ |
| 45797 | | float16_t __s0 = __p0; \ |
| 45798 | | float16x8_t __s1 = __p1; \ |
| 45799 | | float16x8_t __rev1; __rev1 = __builtin_shufflevector(__s1, __s1, __lane_reverse_128_16); \ |
| 45800 | | __ret = __builtin_bit_cast(float16_t, __builtin_neon_vmulxh_laneq_f16(__s0, __rev1, __p2)); \ |
| 45801 | | __ret; \ |
| 45802 | | }) |
| 45803 | | #endif |
| 45804 | | |
| 45805 | | #ifdef __LITTLE_ENDIAN__ |
| 45806 | | #define vmulxq_laneq_f16(__p0_270, __p1_270, __p2_270) __extension__ ({ \ |
| 45807 | | float16x8_t __ret_270; \ |
| 45808 | | float16x8_t __s0_270 = __p0_270; \ |
| 45809 | | float16x8_t __s1_270 = __p1_270; \ |
| 45810 | | __ret_270 = vmulxq_f16(__s0_270, splatq_laneq_f16(__s1_270, __p2_270)); \ |
| 45811 | | __ret_270; \ |
| 45812 | | }) |
| 45813 | | #else |
| 45814 | | #define vmulxq_laneq_f16(__p0_271, __p1_271, __p2_271) __extension__ ({ \ |
| 45815 | | float16x8_t __ret_271; \ |
| 45816 | | float16x8_t __s0_271 = __p0_271; \ |
| 45817 | | float16x8_t __s1_271 = __p1_271; \ |
| 45818 | | float16x8_t __rev0_271; __rev0_271 = __builtin_shufflevector(__s0_271, __s0_271, __lane_reverse_128_16); \ |
| 45819 | | float16x8_t __rev1_271; __rev1_271 = __builtin_shufflevector(__s1_271, __s1_271, __lane_reverse_128_16); \ |
| 45820 | | __ret_271 = __noswap_vmulxq_f16(__rev0_271, __noswap_splatq_laneq_f16(__rev1_271, __p2_271)); \ |
| 45821 | | __ret_271 = __builtin_shufflevector(__ret_271, __ret_271, __lane_reverse_128_16); \ |
| 45822 | | __ret_271; \ |
| 45823 | | }) |
| 45824 | | #endif |
| 45825 | | |
| 45826 | | #ifdef __LITTLE_ENDIAN__ |
| 45827 | | #define vmulx_laneq_f16(__p0_272, __p1_272, __p2_272) __extension__ ({ \ |
| 45828 | | float16x4_t __ret_272; \ |
| 45829 | | float16x4_t __s0_272 = __p0_272; \ |
| 45830 | | float16x8_t __s1_272 = __p1_272; \ |
| 45831 | | __ret_272 = vmulx_f16(__s0_272, splat_laneq_f16(__s1_272, __p2_272)); \ |
| 45832 | | __ret_272; \ |
| 45833 | | }) |
| 45834 | | #else |
| 45835 | | #define vmulx_laneq_f16(__p0_273, __p1_273, __p2_273) __extension__ ({ \ |
| 45836 | | float16x4_t __ret_273; \ |
| 45837 | | float16x4_t __s0_273 = __p0_273; \ |
| 45838 | | float16x8_t __s1_273 = __p1_273; \ |
| 45839 | | float16x4_t __rev0_273; __rev0_273 = __builtin_shufflevector(__s0_273, __s0_273, __lane_reverse_64_16); \ |
| 45840 | | float16x8_t __rev1_273; __rev1_273 = __builtin_shufflevector(__s1_273, __s1_273, __lane_reverse_128_16); \ |
| 45841 | | __ret_273 = __noswap_vmulx_f16(__rev0_273, __noswap_splat_laneq_f16(__rev1_273, __p2_273)); \ |
| 45842 | | __ret_273 = __builtin_shufflevector(__ret_273, __ret_273, __lane_reverse_64_16); \ |
| 45843 | | __ret_273; \ |
| 45844 | | }) |
| 45845 | | #endif |
| 45846 | | |
| 45847 | 45641 | #ifdef __LITTLE_ENDIAN__ |
| 45848 | 45642 | #define vmulxq_n_f16(__p0, __p1) __extension__ ({ \ |
| 45849 | 45643 | float16x8_t __ret; \ |
| ... | ... | @@ -46068,98 +45862,98 @@ __ai __attribute__((target("fullfp16,neon"))) float16x4_t vsqrt_f16(float16x4_t |
| 46068 | 45862 | #endif |
| 46069 | 45863 | |
| 46070 | 45864 | #ifdef __LITTLE_ENDIAN__ |
| 46071 | | #define vsudotq_laneq_s32(__p0_274, __p1_274, __p2_274, __p3_274) __extension__ ({ \ |
| 46072 | | int32x4_t __ret_274; \ |
| 46073 | | int32x4_t __s0_274 = __p0_274; \ |
| 46074 | | int8x16_t __s1_274 = __p1_274; \ |
| 46075 | | uint8x16_t __s2_274 = __p2_274; \ |
| 46076 | | __ret_274 = vusdotq_s32(__s0_274, __builtin_bit_cast(uint8x16_t, splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_274), __p3_274)), __s1_274); \ |
| 46077 | | __ret_274; \ |
| 45865 | #define vsudotq_laneq_s32(__p0_266, __p1_266, __p2_266, __p3_266) __extension__ ({ \ |
| 45866 | int32x4_t __ret_266; \ |
| 45867 | int32x4_t __s0_266 = __p0_266; \ |
| 45868 | int8x16_t __s1_266 = __p1_266; \ |
| 45869 | uint8x16_t __s2_266 = __p2_266; \ |
| 45870 | __ret_266 = vusdotq_s32(__s0_266, __builtin_bit_cast(uint8x16_t, splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_266), __p3_266)), __s1_266); \ |
| 45871 | __ret_266; \ |
| 46078 | 45872 | }) |
| 46079 | 45873 | #else |
| 46080 | | #define vsudotq_laneq_s32(__p0_275, __p1_275, __p2_275, __p3_275) __extension__ ({ \ |
| 46081 | | int32x4_t __ret_275; \ |
| 46082 | | int32x4_t __s0_275 = __p0_275; \ |
| 46083 | | int8x16_t __s1_275 = __p1_275; \ |
| 46084 | | uint8x16_t __s2_275 = __p2_275; \ |
| 46085 | | int32x4_t __rev0_275; __rev0_275 = __builtin_shufflevector(__s0_275, __s0_275, __lane_reverse_128_32); \ |
| 46086 | | int8x16_t __rev1_275; __rev1_275 = __builtin_shufflevector(__s1_275, __s1_275, __lane_reverse_128_8); \ |
| 46087 | | uint8x16_t __rev2_275; __rev2_275 = __builtin_shufflevector(__s2_275, __s2_275, __lane_reverse_128_8); \ |
| 46088 | | __ret_275 = __noswap_vusdotq_s32(__rev0_275, __builtin_bit_cast(uint8x16_t, __noswap_splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_275), __p3_275)), __rev1_275); \ |
| 46089 | | __ret_275 = __builtin_shufflevector(__ret_275, __ret_275, __lane_reverse_128_32); \ |
| 46090 | | __ret_275; \ |
| 45874 | #define vsudotq_laneq_s32(__p0_267, __p1_267, __p2_267, __p3_267) __extension__ ({ \ |
| 45875 | int32x4_t __ret_267; \ |
| 45876 | int32x4_t __s0_267 = __p0_267; \ |
| 45877 | int8x16_t __s1_267 = __p1_267; \ |
| 45878 | uint8x16_t __s2_267 = __p2_267; \ |
| 45879 | int32x4_t __rev0_267; __rev0_267 = __builtin_shufflevector(__s0_267, __s0_267, __lane_reverse_128_32); \ |
| 45880 | int8x16_t __rev1_267; __rev1_267 = __builtin_shufflevector(__s1_267, __s1_267, __lane_reverse_128_8); \ |
| 45881 | uint8x16_t __rev2_267; __rev2_267 = __builtin_shufflevector(__s2_267, __s2_267, __lane_reverse_128_8); \ |
| 45882 | __ret_267 = __noswap_vusdotq_s32(__rev0_267, __builtin_bit_cast(uint8x16_t, __noswap_splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_267), __p3_267)), __rev1_267); \ |
| 45883 | __ret_267 = __builtin_shufflevector(__ret_267, __ret_267, __lane_reverse_128_32); \ |
| 45884 | __ret_267; \ |
| 46091 | 45885 | }) |
| 46092 | 45886 | #endif |
| 46093 | 45887 | |
| 46094 | 45888 | #ifdef __LITTLE_ENDIAN__ |
| 46095 | | #define vsudot_laneq_s32(__p0_276, __p1_276, __p2_276, __p3_276) __extension__ ({ \ |
| 46096 | | int32x2_t __ret_276; \ |
| 46097 | | int32x2_t __s0_276 = __p0_276; \ |
| 46098 | | int8x8_t __s1_276 = __p1_276; \ |
| 46099 | | uint8x16_t __s2_276 = __p2_276; \ |
| 46100 | | __ret_276 = vusdot_s32(__s0_276, __builtin_bit_cast(uint8x8_t, splat_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_276), __p3_276)), __s1_276); \ |
| 46101 | | __ret_276; \ |
| 45889 | #define vsudot_laneq_s32(__p0_268, __p1_268, __p2_268, __p3_268) __extension__ ({ \ |
| 45890 | int32x2_t __ret_268; \ |
| 45891 | int32x2_t __s0_268 = __p0_268; \ |
| 45892 | int8x8_t __s1_268 = __p1_268; \ |
| 45893 | uint8x16_t __s2_268 = __p2_268; \ |
| 45894 | __ret_268 = vusdot_s32(__s0_268, __builtin_bit_cast(uint8x8_t, splat_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_268), __p3_268)), __s1_268); \ |
| 45895 | __ret_268; \ |
| 46102 | 45896 | }) |
| 46103 | 45897 | #else |
| 46104 | | #define vsudot_laneq_s32(__p0_277, __p1_277, __p2_277, __p3_277) __extension__ ({ \ |
| 46105 | | int32x2_t __ret_277; \ |
| 46106 | | int32x2_t __s0_277 = __p0_277; \ |
| 46107 | | int8x8_t __s1_277 = __p1_277; \ |
| 46108 | | uint8x16_t __s2_277 = __p2_277; \ |
| 46109 | | int32x2_t __rev0_277; __rev0_277 = __builtin_shufflevector(__s0_277, __s0_277, __lane_reverse_64_32); \ |
| 46110 | | int8x8_t __rev1_277; __rev1_277 = __builtin_shufflevector(__s1_277, __s1_277, __lane_reverse_64_8); \ |
| 46111 | | uint8x16_t __rev2_277; __rev2_277 = __builtin_shufflevector(__s2_277, __s2_277, __lane_reverse_128_8); \ |
| 46112 | | __ret_277 = __noswap_vusdot_s32(__rev0_277, __builtin_bit_cast(uint8x8_t, __noswap_splat_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_277), __p3_277)), __rev1_277); \ |
| 46113 | | __ret_277 = __builtin_shufflevector(__ret_277, __ret_277, __lane_reverse_64_32); \ |
| 46114 | | __ret_277; \ |
| 45898 | #define vsudot_laneq_s32(__p0_269, __p1_269, __p2_269, __p3_269) __extension__ ({ \ |
| 45899 | int32x2_t __ret_269; \ |
| 45900 | int32x2_t __s0_269 = __p0_269; \ |
| 45901 | int8x8_t __s1_269 = __p1_269; \ |
| 45902 | uint8x16_t __s2_269 = __p2_269; \ |
| 45903 | int32x2_t __rev0_269; __rev0_269 = __builtin_shufflevector(__s0_269, __s0_269, __lane_reverse_64_32); \ |
| 45904 | int8x8_t __rev1_269; __rev1_269 = __builtin_shufflevector(__s1_269, __s1_269, __lane_reverse_64_8); \ |
| 45905 | uint8x16_t __rev2_269; __rev2_269 = __builtin_shufflevector(__s2_269, __s2_269, __lane_reverse_128_8); \ |
| 45906 | __ret_269 = __noswap_vusdot_s32(__rev0_269, __builtin_bit_cast(uint8x8_t, __noswap_splat_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_269), __p3_269)), __rev1_269); \ |
| 45907 | __ret_269 = __builtin_shufflevector(__ret_269, __ret_269, __lane_reverse_64_32); \ |
| 45908 | __ret_269; \ |
| 46115 | 45909 | }) |
| 46116 | 45910 | #endif |
| 46117 | 45911 | |
| 46118 | 45912 | #ifdef __LITTLE_ENDIAN__ |
| 46119 | | #define vusdotq_laneq_s32(__p0_278, __p1_278, __p2_278, __p3_278) __extension__ ({ \ |
| 46120 | | int32x4_t __ret_278; \ |
| 46121 | | int32x4_t __s0_278 = __p0_278; \ |
| 46122 | | uint8x16_t __s1_278 = __p1_278; \ |
| 46123 | | int8x16_t __s2_278 = __p2_278; \ |
| 46124 | | __ret_278 = vusdotq_s32(__s0_278, __s1_278, __builtin_bit_cast(int8x16_t, splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_278), __p3_278))); \ |
| 46125 | | __ret_278; \ |
| 45913 | #define vusdotq_laneq_s32(__p0_270, __p1_270, __p2_270, __p3_270) __extension__ ({ \ |
| 45914 | int32x4_t __ret_270; \ |
| 45915 | int32x4_t __s0_270 = __p0_270; \ |
| 45916 | uint8x16_t __s1_270 = __p1_270; \ |
| 45917 | int8x16_t __s2_270 = __p2_270; \ |
| 45918 | __ret_270 = vusdotq_s32(__s0_270, __s1_270, __builtin_bit_cast(int8x16_t, splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_270), __p3_270))); \ |
| 45919 | __ret_270; \ |
| 46126 | 45920 | }) |
| 46127 | 45921 | #else |
| 46128 | | #define vusdotq_laneq_s32(__p0_279, __p1_279, __p2_279, __p3_279) __extension__ ({ \ |
| 46129 | | int32x4_t __ret_279; \ |
| 46130 | | int32x4_t __s0_279 = __p0_279; \ |
| 46131 | | uint8x16_t __s1_279 = __p1_279; \ |
| 46132 | | int8x16_t __s2_279 = __p2_279; \ |
| 46133 | | int32x4_t __rev0_279; __rev0_279 = __builtin_shufflevector(__s0_279, __s0_279, __lane_reverse_128_32); \ |
| 46134 | | uint8x16_t __rev1_279; __rev1_279 = __builtin_shufflevector(__s1_279, __s1_279, __lane_reverse_128_8); \ |
| 46135 | | int8x16_t __rev2_279; __rev2_279 = __builtin_shufflevector(__s2_279, __s2_279, __lane_reverse_128_8); \ |
| 46136 | | __ret_279 = __noswap_vusdotq_s32(__rev0_279, __rev1_279, __builtin_bit_cast(int8x16_t, __noswap_splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_279), __p3_279))); \ |
| 46137 | | __ret_279 = __builtin_shufflevector(__ret_279, __ret_279, __lane_reverse_128_32); \ |
| 46138 | | __ret_279; \ |
| 45922 | #define vusdotq_laneq_s32(__p0_271, __p1_271, __p2_271, __p3_271) __extension__ ({ \ |
| 45923 | int32x4_t __ret_271; \ |
| 45924 | int32x4_t __s0_271 = __p0_271; \ |
| 45925 | uint8x16_t __s1_271 = __p1_271; \ |
| 45926 | int8x16_t __s2_271 = __p2_271; \ |
| 45927 | int32x4_t __rev0_271; __rev0_271 = __builtin_shufflevector(__s0_271, __s0_271, __lane_reverse_128_32); \ |
| 45928 | uint8x16_t __rev1_271; __rev1_271 = __builtin_shufflevector(__s1_271, __s1_271, __lane_reverse_128_8); \ |
| 45929 | int8x16_t __rev2_271; __rev2_271 = __builtin_shufflevector(__s2_271, __s2_271, __lane_reverse_128_8); \ |
| 45930 | __ret_271 = __noswap_vusdotq_s32(__rev0_271, __rev1_271, __builtin_bit_cast(int8x16_t, __noswap_splatq_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_271), __p3_271))); \ |
| 45931 | __ret_271 = __builtin_shufflevector(__ret_271, __ret_271, __lane_reverse_128_32); \ |
| 45932 | __ret_271; \ |
| 46139 | 45933 | }) |
| 46140 | 45934 | #endif |
| 46141 | 45935 | |
| 46142 | 45936 | #ifdef __LITTLE_ENDIAN__ |
| 46143 | | #define vusdot_laneq_s32(__p0_280, __p1_280, __p2_280, __p3_280) __extension__ ({ \ |
| 46144 | | int32x2_t __ret_280; \ |
| 46145 | | int32x2_t __s0_280 = __p0_280; \ |
| 46146 | | uint8x8_t __s1_280 = __p1_280; \ |
| 46147 | | int8x16_t __s2_280 = __p2_280; \ |
| 46148 | | __ret_280 = vusdot_s32(__s0_280, __s1_280, __builtin_bit_cast(int8x8_t, splat_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_280), __p3_280))); \ |
| 46149 | | __ret_280; \ |
| 45937 | #define vusdot_laneq_s32(__p0_272, __p1_272, __p2_272, __p3_272) __extension__ ({ \ |
| 45938 | int32x2_t __ret_272; \ |
| 45939 | int32x2_t __s0_272 = __p0_272; \ |
| 45940 | uint8x8_t __s1_272 = __p1_272; \ |
| 45941 | int8x16_t __s2_272 = __p2_272; \ |
| 45942 | __ret_272 = vusdot_s32(__s0_272, __s1_272, __builtin_bit_cast(int8x8_t, splat_laneq_s32(__builtin_bit_cast(int32x4_t, __s2_272), __p3_272))); \ |
| 45943 | __ret_272; \ |
| 46150 | 45944 | }) |
| 46151 | 45945 | #else |
| 46152 | | #define vusdot_laneq_s32(__p0_281, __p1_281, __p2_281, __p3_281) __extension__ ({ \ |
| 46153 | | int32x2_t __ret_281; \ |
| 46154 | | int32x2_t __s0_281 = __p0_281; \ |
| 46155 | | uint8x8_t __s1_281 = __p1_281; \ |
| 46156 | | int8x16_t __s2_281 = __p2_281; \ |
| 46157 | | int32x2_t __rev0_281; __rev0_281 = __builtin_shufflevector(__s0_281, __s0_281, __lane_reverse_64_32); \ |
| 46158 | | uint8x8_t __rev1_281; __rev1_281 = __builtin_shufflevector(__s1_281, __s1_281, __lane_reverse_64_8); \ |
| 46159 | | int8x16_t __rev2_281; __rev2_281 = __builtin_shufflevector(__s2_281, __s2_281, __lane_reverse_128_8); \ |
| 46160 | | __ret_281 = __noswap_vusdot_s32(__rev0_281, __rev1_281, __builtin_bit_cast(int8x8_t, __noswap_splat_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_281), __p3_281))); \ |
| 46161 | | __ret_281 = __builtin_shufflevector(__ret_281, __ret_281, __lane_reverse_64_32); \ |
| 46162 | | __ret_281; \ |
| 45946 | #define vusdot_laneq_s32(__p0_273, __p1_273, __p2_273, __p3_273) __extension__ ({ \ |
| 45947 | int32x2_t __ret_273; \ |
| 45948 | int32x2_t __s0_273 = __p0_273; \ |
| 45949 | uint8x8_t __s1_273 = __p1_273; \ |
| 45950 | int8x16_t __s2_273 = __p2_273; \ |
| 45951 | int32x2_t __rev0_273; __rev0_273 = __builtin_shufflevector(__s0_273, __s0_273, __lane_reverse_64_32); \ |
| 45952 | uint8x8_t __rev1_273; __rev1_273 = __builtin_shufflevector(__s1_273, __s1_273, __lane_reverse_64_8); \ |
| 45953 | int8x16_t __rev2_273; __rev2_273 = __builtin_shufflevector(__s2_273, __s2_273, __lane_reverse_128_8); \ |
| 45954 | __ret_273 = __noswap_vusdot_s32(__rev0_273, __rev1_273, __builtin_bit_cast(int8x8_t, __noswap_splat_laneq_s32(__builtin_bit_cast(int32x4_t, __rev2_273), __p3_273))); \ |
| 45955 | __ret_273 = __builtin_shufflevector(__ret_273, __ret_273, __lane_reverse_64_32); \ |
| 45956 | __ret_273; \ |
| 46163 | 45957 | }) |
| 46164 | 45958 | #endif |
| 46165 | 45959 | |
| ... | ... | @@ -48579,974 +48373,1058 @@ __ai __attribute__((target("neon"))) float64x2_t vcombine_f64(float64x1_t __p0, |
| 48579 | 48373 | #endif |
| 48580 | 48374 | |
| 48581 | 48375 | #ifdef __LITTLE_ENDIAN__ |
| 48582 | | #define vcopyq_lane_p8(__p0_282, __p1_282, __p2_282, __p3_282) __extension__ ({ \ |
| 48583 | | poly8x16_t __ret_282; \ |
| 48584 | | poly8x16_t __s0_282 = __p0_282; \ |
| 48585 | | poly8x8_t __s2_282 = __p2_282; \ |
| 48586 | | __ret_282 = vsetq_lane_p8(vget_lane_p8(__s2_282, __p3_282), __s0_282, __p1_282); \ |
| 48376 | #define vcopyq_lane_p8(__p0_274, __p1_274, __p2_274, __p3_274) __extension__ ({ \ |
| 48377 | poly8x16_t __ret_274; \ |
| 48378 | poly8x16_t __s0_274 = __p0_274; \ |
| 48379 | poly8x8_t __s2_274 = __p2_274; \ |
| 48380 | __ret_274 = vsetq_lane_p8(vget_lane_p8(__s2_274, __p3_274), __s0_274, __p1_274); \ |
| 48381 | __ret_274; \ |
| 48382 | }) |
| 48383 | #else |
| 48384 | #define vcopyq_lane_p8(__p0_275, __p1_275, __p2_275, __p3_275) __extension__ ({ \ |
| 48385 | poly8x16_t __ret_275; \ |
| 48386 | poly8x16_t __s0_275 = __p0_275; \ |
| 48387 | poly8x8_t __s2_275 = __p2_275; \ |
| 48388 | poly8x16_t __rev0_275; __rev0_275 = __builtin_shufflevector(__s0_275, __s0_275, __lane_reverse_128_8); \ |
| 48389 | poly8x8_t __rev2_275; __rev2_275 = __builtin_shufflevector(__s2_275, __s2_275, __lane_reverse_64_8); \ |
| 48390 | __ret_275 = __noswap_vsetq_lane_p8(__noswap_vget_lane_p8(__rev2_275, __p3_275), __rev0_275, __p1_275); \ |
| 48391 | __ret_275 = __builtin_shufflevector(__ret_275, __ret_275, __lane_reverse_128_8); \ |
| 48392 | __ret_275; \ |
| 48393 | }) |
| 48394 | #endif |
| 48395 | |
| 48396 | #ifdef __LITTLE_ENDIAN__ |
| 48397 | #define vcopyq_lane_p16(__p0_276, __p1_276, __p2_276, __p3_276) __extension__ ({ \ |
| 48398 | poly16x8_t __ret_276; \ |
| 48399 | poly16x8_t __s0_276 = __p0_276; \ |
| 48400 | poly16x4_t __s2_276 = __p2_276; \ |
| 48401 | __ret_276 = vsetq_lane_p16(vget_lane_p16(__s2_276, __p3_276), __s0_276, __p1_276); \ |
| 48402 | __ret_276; \ |
| 48403 | }) |
| 48404 | #else |
| 48405 | #define vcopyq_lane_p16(__p0_277, __p1_277, __p2_277, __p3_277) __extension__ ({ \ |
| 48406 | poly16x8_t __ret_277; \ |
| 48407 | poly16x8_t __s0_277 = __p0_277; \ |
| 48408 | poly16x4_t __s2_277 = __p2_277; \ |
| 48409 | poly16x8_t __rev0_277; __rev0_277 = __builtin_shufflevector(__s0_277, __s0_277, __lane_reverse_128_16); \ |
| 48410 | poly16x4_t __rev2_277; __rev2_277 = __builtin_shufflevector(__s2_277, __s2_277, __lane_reverse_64_16); \ |
| 48411 | __ret_277 = __noswap_vsetq_lane_p16(__noswap_vget_lane_p16(__rev2_277, __p3_277), __rev0_277, __p1_277); \ |
| 48412 | __ret_277 = __builtin_shufflevector(__ret_277, __ret_277, __lane_reverse_128_16); \ |
| 48413 | __ret_277; \ |
| 48414 | }) |
| 48415 | #endif |
| 48416 | |
| 48417 | #ifdef __LITTLE_ENDIAN__ |
| 48418 | #define vcopyq_lane_u8(__p0_278, __p1_278, __p2_278, __p3_278) __extension__ ({ \ |
| 48419 | uint8x16_t __ret_278; \ |
| 48420 | uint8x16_t __s0_278 = __p0_278; \ |
| 48421 | uint8x8_t __s2_278 = __p2_278; \ |
| 48422 | __ret_278 = vsetq_lane_u8(vget_lane_u8(__s2_278, __p3_278), __s0_278, __p1_278); \ |
| 48423 | __ret_278; \ |
| 48424 | }) |
| 48425 | #else |
| 48426 | #define vcopyq_lane_u8(__p0_279, __p1_279, __p2_279, __p3_279) __extension__ ({ \ |
| 48427 | uint8x16_t __ret_279; \ |
| 48428 | uint8x16_t __s0_279 = __p0_279; \ |
| 48429 | uint8x8_t __s2_279 = __p2_279; \ |
| 48430 | uint8x16_t __rev0_279; __rev0_279 = __builtin_shufflevector(__s0_279, __s0_279, __lane_reverse_128_8); \ |
| 48431 | uint8x8_t __rev2_279; __rev2_279 = __builtin_shufflevector(__s2_279, __s2_279, __lane_reverse_64_8); \ |
| 48432 | __ret_279 = __noswap_vsetq_lane_u8(__noswap_vget_lane_u8(__rev2_279, __p3_279), __rev0_279, __p1_279); \ |
| 48433 | __ret_279 = __builtin_shufflevector(__ret_279, __ret_279, __lane_reverse_128_8); \ |
| 48434 | __ret_279; \ |
| 48435 | }) |
| 48436 | #endif |
| 48437 | |
| 48438 | #ifdef __LITTLE_ENDIAN__ |
| 48439 | #define vcopyq_lane_u32(__p0_280, __p1_280, __p2_280, __p3_280) __extension__ ({ \ |
| 48440 | uint32x4_t __ret_280; \ |
| 48441 | uint32x4_t __s0_280 = __p0_280; \ |
| 48442 | uint32x2_t __s2_280 = __p2_280; \ |
| 48443 | __ret_280 = vsetq_lane_u32(vget_lane_u32(__s2_280, __p3_280), __s0_280, __p1_280); \ |
| 48444 | __ret_280; \ |
| 48445 | }) |
| 48446 | #else |
| 48447 | #define vcopyq_lane_u32(__p0_281, __p1_281, __p2_281, __p3_281) __extension__ ({ \ |
| 48448 | uint32x4_t __ret_281; \ |
| 48449 | uint32x4_t __s0_281 = __p0_281; \ |
| 48450 | uint32x2_t __s2_281 = __p2_281; \ |
| 48451 | uint32x4_t __rev0_281; __rev0_281 = __builtin_shufflevector(__s0_281, __s0_281, __lane_reverse_128_32); \ |
| 48452 | uint32x2_t __rev2_281; __rev2_281 = __builtin_shufflevector(__s2_281, __s2_281, __lane_reverse_64_32); \ |
| 48453 | __ret_281 = __noswap_vsetq_lane_u32(__noswap_vget_lane_u32(__rev2_281, __p3_281), __rev0_281, __p1_281); \ |
| 48454 | __ret_281 = __builtin_shufflevector(__ret_281, __ret_281, __lane_reverse_128_32); \ |
| 48455 | __ret_281; \ |
| 48456 | }) |
| 48457 | #endif |
| 48458 | |
| 48459 | #ifdef __LITTLE_ENDIAN__ |
| 48460 | #define vcopyq_lane_u64(__p0_282, __p1_282, __p2_282, __p3_282) __extension__ ({ \ |
| 48461 | uint64x2_t __ret_282; \ |
| 48462 | uint64x2_t __s0_282 = __p0_282; \ |
| 48463 | uint64x1_t __s2_282 = __p2_282; \ |
| 48464 | __ret_282 = vsetq_lane_u64(vget_lane_u64(__s2_282, __p3_282), __s0_282, __p1_282); \ |
| 48587 | 48465 | __ret_282; \ |
| 48588 | 48466 | }) |
| 48589 | 48467 | #else |
| 48590 | | #define vcopyq_lane_p8(__p0_283, __p1_283, __p2_283, __p3_283) __extension__ ({ \ |
| 48591 | | poly8x16_t __ret_283; \ |
| 48592 | | poly8x16_t __s0_283 = __p0_283; \ |
| 48593 | | poly8x8_t __s2_283 = __p2_283; \ |
| 48594 | | poly8x16_t __rev0_283; __rev0_283 = __builtin_shufflevector(__s0_283, __s0_283, __lane_reverse_128_8); \ |
| 48595 | | poly8x8_t __rev2_283; __rev2_283 = __builtin_shufflevector(__s2_283, __s2_283, __lane_reverse_64_8); \ |
| 48596 | | __ret_283 = __noswap_vsetq_lane_p8(__noswap_vget_lane_p8(__rev2_283, __p3_283), __rev0_283, __p1_283); \ |
| 48597 | | __ret_283 = __builtin_shufflevector(__ret_283, __ret_283, __lane_reverse_128_8); \ |
| 48468 | #define vcopyq_lane_u64(__p0_283, __p1_283, __p2_283, __p3_283) __extension__ ({ \ |
| 48469 | uint64x2_t __ret_283; \ |
| 48470 | uint64x2_t __s0_283 = __p0_283; \ |
| 48471 | uint64x1_t __s2_283 = __p2_283; \ |
| 48472 | uint64x2_t __rev0_283; __rev0_283 = __builtin_shufflevector(__s0_283, __s0_283, __lane_reverse_128_64); \ |
| 48473 | __ret_283 = __noswap_vsetq_lane_u64(vget_lane_u64(__s2_283, __p3_283), __rev0_283, __p1_283); \ |
| 48474 | __ret_283 = __builtin_shufflevector(__ret_283, __ret_283, __lane_reverse_128_64); \ |
| 48598 | 48475 | __ret_283; \ |
| 48599 | 48476 | }) |
| 48600 | 48477 | #endif |
| 48601 | 48478 | |
| 48602 | 48479 | #ifdef __LITTLE_ENDIAN__ |
| 48603 | | #define vcopyq_lane_p16(__p0_284, __p1_284, __p2_284, __p3_284) __extension__ ({ \ |
| 48604 | | poly16x8_t __ret_284; \ |
| 48605 | | poly16x8_t __s0_284 = __p0_284; \ |
| 48606 | | poly16x4_t __s2_284 = __p2_284; \ |
| 48607 | | __ret_284 = vsetq_lane_p16(vget_lane_p16(__s2_284, __p3_284), __s0_284, __p1_284); \ |
| 48480 | #define vcopyq_lane_u16(__p0_284, __p1_284, __p2_284, __p3_284) __extension__ ({ \ |
| 48481 | uint16x8_t __ret_284; \ |
| 48482 | uint16x8_t __s0_284 = __p0_284; \ |
| 48483 | uint16x4_t __s2_284 = __p2_284; \ |
| 48484 | __ret_284 = vsetq_lane_u16(vget_lane_u16(__s2_284, __p3_284), __s0_284, __p1_284); \ |
| 48608 | 48485 | __ret_284; \ |
| 48609 | 48486 | }) |
| 48610 | 48487 | #else |
| 48611 | | #define vcopyq_lane_p16(__p0_285, __p1_285, __p2_285, __p3_285) __extension__ ({ \ |
| 48612 | | poly16x8_t __ret_285; \ |
| 48613 | | poly16x8_t __s0_285 = __p0_285; \ |
| 48614 | | poly16x4_t __s2_285 = __p2_285; \ |
| 48615 | | poly16x8_t __rev0_285; __rev0_285 = __builtin_shufflevector(__s0_285, __s0_285, __lane_reverse_128_16); \ |
| 48616 | | poly16x4_t __rev2_285; __rev2_285 = __builtin_shufflevector(__s2_285, __s2_285, __lane_reverse_64_16); \ |
| 48617 | | __ret_285 = __noswap_vsetq_lane_p16(__noswap_vget_lane_p16(__rev2_285, __p3_285), __rev0_285, __p1_285); \ |
| 48488 | #define vcopyq_lane_u16(__p0_285, __p1_285, __p2_285, __p3_285) __extension__ ({ \ |
| 48489 | uint16x8_t __ret_285; \ |
| 48490 | uint16x8_t __s0_285 = __p0_285; \ |
| 48491 | uint16x4_t __s2_285 = __p2_285; \ |
| 48492 | uint16x8_t __rev0_285; __rev0_285 = __builtin_shufflevector(__s0_285, __s0_285, __lane_reverse_128_16); \ |
| 48493 | uint16x4_t __rev2_285; __rev2_285 = __builtin_shufflevector(__s2_285, __s2_285, __lane_reverse_64_16); \ |
| 48494 | __ret_285 = __noswap_vsetq_lane_u16(__noswap_vget_lane_u16(__rev2_285, __p3_285), __rev0_285, __p1_285); \ |
| 48618 | 48495 | __ret_285 = __builtin_shufflevector(__ret_285, __ret_285, __lane_reverse_128_16); \ |
| 48619 | 48496 | __ret_285; \ |
| 48620 | 48497 | }) |
| 48621 | 48498 | #endif |
| 48622 | 48499 | |
| 48623 | 48500 | #ifdef __LITTLE_ENDIAN__ |
| 48624 | | #define vcopyq_lane_u8(__p0_286, __p1_286, __p2_286, __p3_286) __extension__ ({ \ |
| 48625 | | uint8x16_t __ret_286; \ |
| 48626 | | uint8x16_t __s0_286 = __p0_286; \ |
| 48627 | | uint8x8_t __s2_286 = __p2_286; \ |
| 48628 | | __ret_286 = vsetq_lane_u8(vget_lane_u8(__s2_286, __p3_286), __s0_286, __p1_286); \ |
| 48501 | #define vcopyq_lane_s8(__p0_286, __p1_286, __p2_286, __p3_286) __extension__ ({ \ |
| 48502 | int8x16_t __ret_286; \ |
| 48503 | int8x16_t __s0_286 = __p0_286; \ |
| 48504 | int8x8_t __s2_286 = __p2_286; \ |
| 48505 | __ret_286 = vsetq_lane_s8(vget_lane_s8(__s2_286, __p3_286), __s0_286, __p1_286); \ |
| 48629 | 48506 | __ret_286; \ |
| 48630 | 48507 | }) |
| 48631 | 48508 | #else |
| 48632 | | #define vcopyq_lane_u8(__p0_287, __p1_287, __p2_287, __p3_287) __extension__ ({ \ |
| 48633 | | uint8x16_t __ret_287; \ |
| 48634 | | uint8x16_t __s0_287 = __p0_287; \ |
| 48635 | | uint8x8_t __s2_287 = __p2_287; \ |
| 48636 | | uint8x16_t __rev0_287; __rev0_287 = __builtin_shufflevector(__s0_287, __s0_287, __lane_reverse_128_8); \ |
| 48637 | | uint8x8_t __rev2_287; __rev2_287 = __builtin_shufflevector(__s2_287, __s2_287, __lane_reverse_64_8); \ |
| 48638 | | __ret_287 = __noswap_vsetq_lane_u8(__noswap_vget_lane_u8(__rev2_287, __p3_287), __rev0_287, __p1_287); \ |
| 48509 | #define vcopyq_lane_s8(__p0_287, __p1_287, __p2_287, __p3_287) __extension__ ({ \ |
| 48510 | int8x16_t __ret_287; \ |
| 48511 | int8x16_t __s0_287 = __p0_287; \ |
| 48512 | int8x8_t __s2_287 = __p2_287; \ |
| 48513 | int8x16_t __rev0_287; __rev0_287 = __builtin_shufflevector(__s0_287, __s0_287, __lane_reverse_128_8); \ |
| 48514 | int8x8_t __rev2_287; __rev2_287 = __builtin_shufflevector(__s2_287, __s2_287, __lane_reverse_64_8); \ |
| 48515 | __ret_287 = __noswap_vsetq_lane_s8(__noswap_vget_lane_s8(__rev2_287, __p3_287), __rev0_287, __p1_287); \ |
| 48639 | 48516 | __ret_287 = __builtin_shufflevector(__ret_287, __ret_287, __lane_reverse_128_8); \ |
| 48640 | 48517 | __ret_287; \ |
| 48641 | 48518 | }) |
| 48642 | 48519 | #endif |
| 48643 | 48520 | |
| 48644 | 48521 | #ifdef __LITTLE_ENDIAN__ |
| 48645 | | #define vcopyq_lane_u32(__p0_288, __p1_288, __p2_288, __p3_288) __extension__ ({ \ |
| 48646 | | uint32x4_t __ret_288; \ |
| 48647 | | uint32x4_t __s0_288 = __p0_288; \ |
| 48648 | | uint32x2_t __s2_288 = __p2_288; \ |
| 48649 | | __ret_288 = vsetq_lane_u32(vget_lane_u32(__s2_288, __p3_288), __s0_288, __p1_288); \ |
| 48522 | #define vcopyq_lane_f32(__p0_288, __p1_288, __p2_288, __p3_288) __extension__ ({ \ |
| 48523 | float32x4_t __ret_288; \ |
| 48524 | float32x4_t __s0_288 = __p0_288; \ |
| 48525 | float32x2_t __s2_288 = __p2_288; \ |
| 48526 | __ret_288 = vsetq_lane_f32(vget_lane_f32(__s2_288, __p3_288), __s0_288, __p1_288); \ |
| 48650 | 48527 | __ret_288; \ |
| 48651 | 48528 | }) |
| 48652 | 48529 | #else |
| 48653 | | #define vcopyq_lane_u32(__p0_289, __p1_289, __p2_289, __p3_289) __extension__ ({ \ |
| 48654 | | uint32x4_t __ret_289; \ |
| 48655 | | uint32x4_t __s0_289 = __p0_289; \ |
| 48656 | | uint32x2_t __s2_289 = __p2_289; \ |
| 48657 | | uint32x4_t __rev0_289; __rev0_289 = __builtin_shufflevector(__s0_289, __s0_289, __lane_reverse_128_32); \ |
| 48658 | | uint32x2_t __rev2_289; __rev2_289 = __builtin_shufflevector(__s2_289, __s2_289, __lane_reverse_64_32); \ |
| 48659 | | __ret_289 = __noswap_vsetq_lane_u32(__noswap_vget_lane_u32(__rev2_289, __p3_289), __rev0_289, __p1_289); \ |
| 48530 | #define vcopyq_lane_f32(__p0_289, __p1_289, __p2_289, __p3_289) __extension__ ({ \ |
| 48531 | float32x4_t __ret_289; \ |
| 48532 | float32x4_t __s0_289 = __p0_289; \ |
| 48533 | float32x2_t __s2_289 = __p2_289; \ |
| 48534 | float32x4_t __rev0_289; __rev0_289 = __builtin_shufflevector(__s0_289, __s0_289, __lane_reverse_128_32); \ |
| 48535 | float32x2_t __rev2_289; __rev2_289 = __builtin_shufflevector(__s2_289, __s2_289, __lane_reverse_64_32); \ |
| 48536 | __ret_289 = __noswap_vsetq_lane_f32(__noswap_vget_lane_f32(__rev2_289, __p3_289), __rev0_289, __p1_289); \ |
| 48660 | 48537 | __ret_289 = __builtin_shufflevector(__ret_289, __ret_289, __lane_reverse_128_32); \ |
| 48661 | 48538 | __ret_289; \ |
| 48662 | 48539 | }) |
| 48663 | 48540 | #endif |
| 48664 | 48541 | |
| 48665 | 48542 | #ifdef __LITTLE_ENDIAN__ |
| 48666 | | #define vcopyq_lane_u64(__p0_290, __p1_290, __p2_290, __p3_290) __extension__ ({ \ |
| 48667 | | uint64x2_t __ret_290; \ |
| 48668 | | uint64x2_t __s0_290 = __p0_290; \ |
| 48669 | | uint64x1_t __s2_290 = __p2_290; \ |
| 48670 | | __ret_290 = vsetq_lane_u64(vget_lane_u64(__s2_290, __p3_290), __s0_290, __p1_290); \ |
| 48543 | #define vcopyq_lane_s32(__p0_290, __p1_290, __p2_290, __p3_290) __extension__ ({ \ |
| 48544 | int32x4_t __ret_290; \ |
| 48545 | int32x4_t __s0_290 = __p0_290; \ |
| 48546 | int32x2_t __s2_290 = __p2_290; \ |
| 48547 | __ret_290 = vsetq_lane_s32(vget_lane_s32(__s2_290, __p3_290), __s0_290, __p1_290); \ |
| 48671 | 48548 | __ret_290; \ |
| 48672 | 48549 | }) |
| 48673 | 48550 | #else |
| 48674 | | #define vcopyq_lane_u64(__p0_291, __p1_291, __p2_291, __p3_291) __extension__ ({ \ |
| 48675 | | uint64x2_t __ret_291; \ |
| 48676 | | uint64x2_t __s0_291 = __p0_291; \ |
| 48677 | | uint64x1_t __s2_291 = __p2_291; \ |
| 48678 | | uint64x2_t __rev0_291; __rev0_291 = __builtin_shufflevector(__s0_291, __s0_291, __lane_reverse_128_64); \ |
| 48679 | | __ret_291 = __noswap_vsetq_lane_u64(vget_lane_u64(__s2_291, __p3_291), __rev0_291, __p1_291); \ |
| 48680 | | __ret_291 = __builtin_shufflevector(__ret_291, __ret_291, __lane_reverse_128_64); \ |
| 48551 | #define vcopyq_lane_s32(__p0_291, __p1_291, __p2_291, __p3_291) __extension__ ({ \ |
| 48552 | int32x4_t __ret_291; \ |
| 48553 | int32x4_t __s0_291 = __p0_291; \ |
| 48554 | int32x2_t __s2_291 = __p2_291; \ |
| 48555 | int32x4_t __rev0_291; __rev0_291 = __builtin_shufflevector(__s0_291, __s0_291, __lane_reverse_128_32); \ |
| 48556 | int32x2_t __rev2_291; __rev2_291 = __builtin_shufflevector(__s2_291, __s2_291, __lane_reverse_64_32); \ |
| 48557 | __ret_291 = __noswap_vsetq_lane_s32(__noswap_vget_lane_s32(__rev2_291, __p3_291), __rev0_291, __p1_291); \ |
| 48558 | __ret_291 = __builtin_shufflevector(__ret_291, __ret_291, __lane_reverse_128_32); \ |
| 48681 | 48559 | __ret_291; \ |
| 48682 | 48560 | }) |
| 48683 | 48561 | #endif |
| 48684 | 48562 | |
| 48685 | 48563 | #ifdef __LITTLE_ENDIAN__ |
| 48686 | | #define vcopyq_lane_u16(__p0_292, __p1_292, __p2_292, __p3_292) __extension__ ({ \ |
| 48687 | | uint16x8_t __ret_292; \ |
| 48688 | | uint16x8_t __s0_292 = __p0_292; \ |
| 48689 | | uint16x4_t __s2_292 = __p2_292; \ |
| 48690 | | __ret_292 = vsetq_lane_u16(vget_lane_u16(__s2_292, __p3_292), __s0_292, __p1_292); \ |
| 48564 | #define vcopyq_lane_s64(__p0_292, __p1_292, __p2_292, __p3_292) __extension__ ({ \ |
| 48565 | int64x2_t __ret_292; \ |
| 48566 | int64x2_t __s0_292 = __p0_292; \ |
| 48567 | int64x1_t __s2_292 = __p2_292; \ |
| 48568 | __ret_292 = vsetq_lane_s64(vget_lane_s64(__s2_292, __p3_292), __s0_292, __p1_292); \ |
| 48691 | 48569 | __ret_292; \ |
| 48692 | 48570 | }) |
| 48693 | 48571 | #else |
| 48694 | | #define vcopyq_lane_u16(__p0_293, __p1_293, __p2_293, __p3_293) __extension__ ({ \ |
| 48695 | | uint16x8_t __ret_293; \ |
| 48696 | | uint16x8_t __s0_293 = __p0_293; \ |
| 48697 | | uint16x4_t __s2_293 = __p2_293; \ |
| 48698 | | uint16x8_t __rev0_293; __rev0_293 = __builtin_shufflevector(__s0_293, __s0_293, __lane_reverse_128_16); \ |
| 48699 | | uint16x4_t __rev2_293; __rev2_293 = __builtin_shufflevector(__s2_293, __s2_293, __lane_reverse_64_16); \ |
| 48700 | | __ret_293 = __noswap_vsetq_lane_u16(__noswap_vget_lane_u16(__rev2_293, __p3_293), __rev0_293, __p1_293); \ |
| 48701 | | __ret_293 = __builtin_shufflevector(__ret_293, __ret_293, __lane_reverse_128_16); \ |
| 48572 | #define vcopyq_lane_s64(__p0_293, __p1_293, __p2_293, __p3_293) __extension__ ({ \ |
| 48573 | int64x2_t __ret_293; \ |
| 48574 | int64x2_t __s0_293 = __p0_293; \ |
| 48575 | int64x1_t __s2_293 = __p2_293; \ |
| 48576 | int64x2_t __rev0_293; __rev0_293 = __builtin_shufflevector(__s0_293, __s0_293, __lane_reverse_128_64); \ |
| 48577 | __ret_293 = __noswap_vsetq_lane_s64(vget_lane_s64(__s2_293, __p3_293), __rev0_293, __p1_293); \ |
| 48578 | __ret_293 = __builtin_shufflevector(__ret_293, __ret_293, __lane_reverse_128_64); \ |
| 48702 | 48579 | __ret_293; \ |
| 48703 | 48580 | }) |
| 48704 | 48581 | #endif |
| 48705 | 48582 | |
| 48706 | 48583 | #ifdef __LITTLE_ENDIAN__ |
| 48707 | | #define vcopyq_lane_s8(__p0_294, __p1_294, __p2_294, __p3_294) __extension__ ({ \ |
| 48708 | | int8x16_t __ret_294; \ |
| 48709 | | int8x16_t __s0_294 = __p0_294; \ |
| 48710 | | int8x8_t __s2_294 = __p2_294; \ |
| 48711 | | __ret_294 = vsetq_lane_s8(vget_lane_s8(__s2_294, __p3_294), __s0_294, __p1_294); \ |
| 48584 | #define vcopyq_lane_mf8(__p0_294, __p1_294, __p2_294, __p3_294) __extension__ ({ \ |
| 48585 | mfloat8x16_t __ret_294; \ |
| 48586 | mfloat8x16_t __s0_294 = __p0_294; \ |
| 48587 | mfloat8x8_t __s2_294 = __p2_294; \ |
| 48588 | __ret_294 = vsetq_lane_mf8(vget_lane_mf8(__s2_294, __p3_294), __s0_294, __p1_294); \ |
| 48712 | 48589 | __ret_294; \ |
| 48713 | 48590 | }) |
| 48714 | 48591 | #else |
| 48715 | | #define vcopyq_lane_s8(__p0_295, __p1_295, __p2_295, __p3_295) __extension__ ({ \ |
| 48716 | | int8x16_t __ret_295; \ |
| 48717 | | int8x16_t __s0_295 = __p0_295; \ |
| 48718 | | int8x8_t __s2_295 = __p2_295; \ |
| 48719 | | int8x16_t __rev0_295; __rev0_295 = __builtin_shufflevector(__s0_295, __s0_295, __lane_reverse_128_8); \ |
| 48720 | | int8x8_t __rev2_295; __rev2_295 = __builtin_shufflevector(__s2_295, __s2_295, __lane_reverse_64_8); \ |
| 48721 | | __ret_295 = __noswap_vsetq_lane_s8(__noswap_vget_lane_s8(__rev2_295, __p3_295), __rev0_295, __p1_295); \ |
| 48592 | #define vcopyq_lane_mf8(__p0_295, __p1_295, __p2_295, __p3_295) __extension__ ({ \ |
| 48593 | mfloat8x16_t __ret_295; \ |
| 48594 | mfloat8x16_t __s0_295 = __p0_295; \ |
| 48595 | mfloat8x8_t __s2_295 = __p2_295; \ |
| 48596 | mfloat8x16_t __rev0_295; __rev0_295 = __builtin_shufflevector(__s0_295, __s0_295, __lane_reverse_128_8); \ |
| 48597 | mfloat8x8_t __rev2_295; __rev2_295 = __builtin_shufflevector(__s2_295, __s2_295, __lane_reverse_64_8); \ |
| 48598 | __ret_295 = __noswap_vsetq_lane_mf8(__noswap_vget_lane_mf8(__rev2_295, __p3_295), __rev0_295, __p1_295); \ |
| 48722 | 48599 | __ret_295 = __builtin_shufflevector(__ret_295, __ret_295, __lane_reverse_128_8); \ |
| 48723 | 48600 | __ret_295; \ |
| 48724 | 48601 | }) |
| 48725 | 48602 | #endif |
| 48726 | 48603 | |
| 48727 | 48604 | #ifdef __LITTLE_ENDIAN__ |
| 48728 | | #define vcopyq_lane_f32(__p0_296, __p1_296, __p2_296, __p3_296) __extension__ ({ \ |
| 48729 | | float32x4_t __ret_296; \ |
| 48730 | | float32x4_t __s0_296 = __p0_296; \ |
| 48731 | | float32x2_t __s2_296 = __p2_296; \ |
| 48732 | | __ret_296 = vsetq_lane_f32(vget_lane_f32(__s2_296, __p3_296), __s0_296, __p1_296); \ |
| 48605 | #define vcopyq_lane_s16(__p0_296, __p1_296, __p2_296, __p3_296) __extension__ ({ \ |
| 48606 | int16x8_t __ret_296; \ |
| 48607 | int16x8_t __s0_296 = __p0_296; \ |
| 48608 | int16x4_t __s2_296 = __p2_296; \ |
| 48609 | __ret_296 = vsetq_lane_s16(vget_lane_s16(__s2_296, __p3_296), __s0_296, __p1_296); \ |
| 48733 | 48610 | __ret_296; \ |
| 48734 | 48611 | }) |
| 48735 | 48612 | #else |
| 48736 | | #define vcopyq_lane_f32(__p0_297, __p1_297, __p2_297, __p3_297) __extension__ ({ \ |
| 48737 | | float32x4_t __ret_297; \ |
| 48738 | | float32x4_t __s0_297 = __p0_297; \ |
| 48739 | | float32x2_t __s2_297 = __p2_297; \ |
| 48740 | | float32x4_t __rev0_297; __rev0_297 = __builtin_shufflevector(__s0_297, __s0_297, __lane_reverse_128_32); \ |
| 48741 | | float32x2_t __rev2_297; __rev2_297 = __builtin_shufflevector(__s2_297, __s2_297, __lane_reverse_64_32); \ |
| 48742 | | __ret_297 = __noswap_vsetq_lane_f32(__noswap_vget_lane_f32(__rev2_297, __p3_297), __rev0_297, __p1_297); \ |
| 48743 | | __ret_297 = __builtin_shufflevector(__ret_297, __ret_297, __lane_reverse_128_32); \ |
| 48613 | #define vcopyq_lane_s16(__p0_297, __p1_297, __p2_297, __p3_297) __extension__ ({ \ |
| 48614 | int16x8_t __ret_297; \ |
| 48615 | int16x8_t __s0_297 = __p0_297; \ |
| 48616 | int16x4_t __s2_297 = __p2_297; \ |
| 48617 | int16x8_t __rev0_297; __rev0_297 = __builtin_shufflevector(__s0_297, __s0_297, __lane_reverse_128_16); \ |
| 48618 | int16x4_t __rev2_297; __rev2_297 = __builtin_shufflevector(__s2_297, __s2_297, __lane_reverse_64_16); \ |
| 48619 | __ret_297 = __noswap_vsetq_lane_s16(__noswap_vget_lane_s16(__rev2_297, __p3_297), __rev0_297, __p1_297); \ |
| 48620 | __ret_297 = __builtin_shufflevector(__ret_297, __ret_297, __lane_reverse_128_16); \ |
| 48744 | 48621 | __ret_297; \ |
| 48745 | 48622 | }) |
| 48746 | 48623 | #endif |
| 48747 | 48624 | |
| 48748 | 48625 | #ifdef __LITTLE_ENDIAN__ |
| 48749 | | #define vcopyq_lane_s32(__p0_298, __p1_298, __p2_298, __p3_298) __extension__ ({ \ |
| 48750 | | int32x4_t __ret_298; \ |
| 48751 | | int32x4_t __s0_298 = __p0_298; \ |
| 48752 | | int32x2_t __s2_298 = __p2_298; \ |
| 48753 | | __ret_298 = vsetq_lane_s32(vget_lane_s32(__s2_298, __p3_298), __s0_298, __p1_298); \ |
| 48626 | #define vcopyq_lane_bf16(__p0_298, __p1_298, __p2_298, __p3_298) __extension__ ({ \ |
| 48627 | bfloat16x8_t __ret_298; \ |
| 48628 | bfloat16x8_t __s0_298 = __p0_298; \ |
| 48629 | bfloat16x4_t __s2_298 = __p2_298; \ |
| 48630 | __ret_298 = vsetq_lane_bf16(vget_lane_bf16(__s2_298, __p3_298), __s0_298, __p1_298); \ |
| 48754 | 48631 | __ret_298; \ |
| 48755 | 48632 | }) |
| 48756 | 48633 | #else |
| 48757 | | #define vcopyq_lane_s32(__p0_299, __p1_299, __p2_299, __p3_299) __extension__ ({ \ |
| 48758 | | int32x4_t __ret_299; \ |
| 48759 | | int32x4_t __s0_299 = __p0_299; \ |
| 48760 | | int32x2_t __s2_299 = __p2_299; \ |
| 48761 | | int32x4_t __rev0_299; __rev0_299 = __builtin_shufflevector(__s0_299, __s0_299, __lane_reverse_128_32); \ |
| 48762 | | int32x2_t __rev2_299; __rev2_299 = __builtin_shufflevector(__s2_299, __s2_299, __lane_reverse_64_32); \ |
| 48763 | | __ret_299 = __noswap_vsetq_lane_s32(__noswap_vget_lane_s32(__rev2_299, __p3_299), __rev0_299, __p1_299); \ |
| 48764 | | __ret_299 = __builtin_shufflevector(__ret_299, __ret_299, __lane_reverse_128_32); \ |
| 48634 | #define vcopyq_lane_bf16(__p0_299, __p1_299, __p2_299, __p3_299) __extension__ ({ \ |
| 48635 | bfloat16x8_t __ret_299; \ |
| 48636 | bfloat16x8_t __s0_299 = __p0_299; \ |
| 48637 | bfloat16x4_t __s2_299 = __p2_299; \ |
| 48638 | bfloat16x8_t __rev0_299; __rev0_299 = __builtin_shufflevector(__s0_299, __s0_299, __lane_reverse_128_16); \ |
| 48639 | bfloat16x4_t __rev2_299; __rev2_299 = __builtin_shufflevector(__s2_299, __s2_299, __lane_reverse_64_16); \ |
| 48640 | __ret_299 = __noswap_vsetq_lane_bf16(__noswap_vget_lane_bf16(__rev2_299, __p3_299), __rev0_299, __p1_299); \ |
| 48641 | __ret_299 = __builtin_shufflevector(__ret_299, __ret_299, __lane_reverse_128_16); \ |
| 48765 | 48642 | __ret_299; \ |
| 48766 | 48643 | }) |
| 48767 | 48644 | #endif |
| 48768 | 48645 | |
| 48769 | 48646 | #ifdef __LITTLE_ENDIAN__ |
| 48770 | | #define vcopyq_lane_s64(__p0_300, __p1_300, __p2_300, __p3_300) __extension__ ({ \ |
| 48771 | | int64x2_t __ret_300; \ |
| 48772 | | int64x2_t __s0_300 = __p0_300; \ |
| 48773 | | int64x1_t __s2_300 = __p2_300; \ |
| 48774 | | __ret_300 = vsetq_lane_s64(vget_lane_s64(__s2_300, __p3_300), __s0_300, __p1_300); \ |
| 48647 | #define vcopy_lane_p8(__p0_300, __p1_300, __p2_300, __p3_300) __extension__ ({ \ |
| 48648 | poly8x8_t __ret_300; \ |
| 48649 | poly8x8_t __s0_300 = __p0_300; \ |
| 48650 | poly8x8_t __s2_300 = __p2_300; \ |
| 48651 | __ret_300 = vset_lane_p8(vget_lane_p8(__s2_300, __p3_300), __s0_300, __p1_300); \ |
| 48775 | 48652 | __ret_300; \ |
| 48776 | 48653 | }) |
| 48777 | 48654 | #else |
| 48778 | | #define vcopyq_lane_s64(__p0_301, __p1_301, __p2_301, __p3_301) __extension__ ({ \ |
| 48779 | | int64x2_t __ret_301; \ |
| 48780 | | int64x2_t __s0_301 = __p0_301; \ |
| 48781 | | int64x1_t __s2_301 = __p2_301; \ |
| 48782 | | int64x2_t __rev0_301; __rev0_301 = __builtin_shufflevector(__s0_301, __s0_301, __lane_reverse_128_64); \ |
| 48783 | | __ret_301 = __noswap_vsetq_lane_s64(vget_lane_s64(__s2_301, __p3_301), __rev0_301, __p1_301); \ |
| 48784 | | __ret_301 = __builtin_shufflevector(__ret_301, __ret_301, __lane_reverse_128_64); \ |
| 48655 | #define vcopy_lane_p8(__p0_301, __p1_301, __p2_301, __p3_301) __extension__ ({ \ |
| 48656 | poly8x8_t __ret_301; \ |
| 48657 | poly8x8_t __s0_301 = __p0_301; \ |
| 48658 | poly8x8_t __s2_301 = __p2_301; \ |
| 48659 | poly8x8_t __rev0_301; __rev0_301 = __builtin_shufflevector(__s0_301, __s0_301, __lane_reverse_64_8); \ |
| 48660 | poly8x8_t __rev2_301; __rev2_301 = __builtin_shufflevector(__s2_301, __s2_301, __lane_reverse_64_8); \ |
| 48661 | __ret_301 = __noswap_vset_lane_p8(__noswap_vget_lane_p8(__rev2_301, __p3_301), __rev0_301, __p1_301); \ |
| 48662 | __ret_301 = __builtin_shufflevector(__ret_301, __ret_301, __lane_reverse_64_8); \ |
| 48785 | 48663 | __ret_301; \ |
| 48786 | 48664 | }) |
| 48787 | 48665 | #endif |
| 48788 | 48666 | |
| 48789 | 48667 | #ifdef __LITTLE_ENDIAN__ |
| 48790 | | #define vcopyq_lane_mf8(__p0_302, __p1_302, __p2_302, __p3_302) __extension__ ({ \ |
| 48791 | | mfloat8x16_t __ret_302; \ |
| 48792 | | mfloat8x16_t __s0_302 = __p0_302; \ |
| 48793 | | mfloat8x8_t __s2_302 = __p2_302; \ |
| 48794 | | __ret_302 = vsetq_lane_mf8(vget_lane_mf8(__s2_302, __p3_302), __s0_302, __p1_302); \ |
| 48668 | #define vcopy_lane_p16(__p0_302, __p1_302, __p2_302, __p3_302) __extension__ ({ \ |
| 48669 | poly16x4_t __ret_302; \ |
| 48670 | poly16x4_t __s0_302 = __p0_302; \ |
| 48671 | poly16x4_t __s2_302 = __p2_302; \ |
| 48672 | __ret_302 = vset_lane_p16(vget_lane_p16(__s2_302, __p3_302), __s0_302, __p1_302); \ |
| 48795 | 48673 | __ret_302; \ |
| 48796 | 48674 | }) |
| 48797 | 48675 | #else |
| 48798 | | #define vcopyq_lane_mf8(__p0_303, __p1_303, __p2_303, __p3_303) __extension__ ({ \ |
| 48799 | | mfloat8x16_t __ret_303; \ |
| 48800 | | mfloat8x16_t __s0_303 = __p0_303; \ |
| 48801 | | mfloat8x8_t __s2_303 = __p2_303; \ |
| 48802 | | mfloat8x16_t __rev0_303; __rev0_303 = __builtin_shufflevector(__s0_303, __s0_303, __lane_reverse_128_8); \ |
| 48803 | | mfloat8x8_t __rev2_303; __rev2_303 = __builtin_shufflevector(__s2_303, __s2_303, __lane_reverse_64_8); \ |
| 48804 | | __ret_303 = __noswap_vsetq_lane_mf8(__noswap_vget_lane_mf8(__rev2_303, __p3_303), __rev0_303, __p1_303); \ |
| 48805 | | __ret_303 = __builtin_shufflevector(__ret_303, __ret_303, __lane_reverse_128_8); \ |
| 48676 | #define vcopy_lane_p16(__p0_303, __p1_303, __p2_303, __p3_303) __extension__ ({ \ |
| 48677 | poly16x4_t __ret_303; \ |
| 48678 | poly16x4_t __s0_303 = __p0_303; \ |
| 48679 | poly16x4_t __s2_303 = __p2_303; \ |
| 48680 | poly16x4_t __rev0_303; __rev0_303 = __builtin_shufflevector(__s0_303, __s0_303, __lane_reverse_64_16); \ |
| 48681 | poly16x4_t __rev2_303; __rev2_303 = __builtin_shufflevector(__s2_303, __s2_303, __lane_reverse_64_16); \ |
| 48682 | __ret_303 = __noswap_vset_lane_p16(__noswap_vget_lane_p16(__rev2_303, __p3_303), __rev0_303, __p1_303); \ |
| 48683 | __ret_303 = __builtin_shufflevector(__ret_303, __ret_303, __lane_reverse_64_16); \ |
| 48806 | 48684 | __ret_303; \ |
| 48807 | 48685 | }) |
| 48808 | 48686 | #endif |
| 48809 | 48687 | |
| 48810 | 48688 | #ifdef __LITTLE_ENDIAN__ |
| 48811 | | #define vcopyq_lane_s16(__p0_304, __p1_304, __p2_304, __p3_304) __extension__ ({ \ |
| 48812 | | int16x8_t __ret_304; \ |
| 48813 | | int16x8_t __s0_304 = __p0_304; \ |
| 48814 | | int16x4_t __s2_304 = __p2_304; \ |
| 48815 | | __ret_304 = vsetq_lane_s16(vget_lane_s16(__s2_304, __p3_304), __s0_304, __p1_304); \ |
| 48689 | #define vcopy_lane_u8(__p0_304, __p1_304, __p2_304, __p3_304) __extension__ ({ \ |
| 48690 | uint8x8_t __ret_304; \ |
| 48691 | uint8x8_t __s0_304 = __p0_304; \ |
| 48692 | uint8x8_t __s2_304 = __p2_304; \ |
| 48693 | __ret_304 = vset_lane_u8(vget_lane_u8(__s2_304, __p3_304), __s0_304, __p1_304); \ |
| 48816 | 48694 | __ret_304; \ |
| 48817 | 48695 | }) |
| 48818 | 48696 | #else |
| 48819 | | #define vcopyq_lane_s16(__p0_305, __p1_305, __p2_305, __p3_305) __extension__ ({ \ |
| 48820 | | int16x8_t __ret_305; \ |
| 48821 | | int16x8_t __s0_305 = __p0_305; \ |
| 48822 | | int16x4_t __s2_305 = __p2_305; \ |
| 48823 | | int16x8_t __rev0_305; __rev0_305 = __builtin_shufflevector(__s0_305, __s0_305, __lane_reverse_128_16); \ |
| 48824 | | int16x4_t __rev2_305; __rev2_305 = __builtin_shufflevector(__s2_305, __s2_305, __lane_reverse_64_16); \ |
| 48825 | | __ret_305 = __noswap_vsetq_lane_s16(__noswap_vget_lane_s16(__rev2_305, __p3_305), __rev0_305, __p1_305); \ |
| 48826 | | __ret_305 = __builtin_shufflevector(__ret_305, __ret_305, __lane_reverse_128_16); \ |
| 48697 | #define vcopy_lane_u8(__p0_305, __p1_305, __p2_305, __p3_305) __extension__ ({ \ |
| 48698 | uint8x8_t __ret_305; \ |
| 48699 | uint8x8_t __s0_305 = __p0_305; \ |
| 48700 | uint8x8_t __s2_305 = __p2_305; \ |
| 48701 | uint8x8_t __rev0_305; __rev0_305 = __builtin_shufflevector(__s0_305, __s0_305, __lane_reverse_64_8); \ |
| 48702 | uint8x8_t __rev2_305; __rev2_305 = __builtin_shufflevector(__s2_305, __s2_305, __lane_reverse_64_8); \ |
| 48703 | __ret_305 = __noswap_vset_lane_u8(__noswap_vget_lane_u8(__rev2_305, __p3_305), __rev0_305, __p1_305); \ |
| 48704 | __ret_305 = __builtin_shufflevector(__ret_305, __ret_305, __lane_reverse_64_8); \ |
| 48827 | 48705 | __ret_305; \ |
| 48828 | 48706 | }) |
| 48829 | 48707 | #endif |
| 48830 | 48708 | |
| 48831 | 48709 | #ifdef __LITTLE_ENDIAN__ |
| 48832 | | #define vcopy_lane_p8(__p0_306, __p1_306, __p2_306, __p3_306) __extension__ ({ \ |
| 48833 | | poly8x8_t __ret_306; \ |
| 48834 | | poly8x8_t __s0_306 = __p0_306; \ |
| 48835 | | poly8x8_t __s2_306 = __p2_306; \ |
| 48836 | | __ret_306 = vset_lane_p8(vget_lane_p8(__s2_306, __p3_306), __s0_306, __p1_306); \ |
| 48710 | #define vcopy_lane_u32(__p0_306, __p1_306, __p2_306, __p3_306) __extension__ ({ \ |
| 48711 | uint32x2_t __ret_306; \ |
| 48712 | uint32x2_t __s0_306 = __p0_306; \ |
| 48713 | uint32x2_t __s2_306 = __p2_306; \ |
| 48714 | __ret_306 = vset_lane_u32(vget_lane_u32(__s2_306, __p3_306), __s0_306, __p1_306); \ |
| 48837 | 48715 | __ret_306; \ |
| 48838 | 48716 | }) |
| 48839 | 48717 | #else |
| 48840 | | #define vcopy_lane_p8(__p0_307, __p1_307, __p2_307, __p3_307) __extension__ ({ \ |
| 48841 | | poly8x8_t __ret_307; \ |
| 48842 | | poly8x8_t __s0_307 = __p0_307; \ |
| 48843 | | poly8x8_t __s2_307 = __p2_307; \ |
| 48844 | | poly8x8_t __rev0_307; __rev0_307 = __builtin_shufflevector(__s0_307, __s0_307, __lane_reverse_64_8); \ |
| 48845 | | poly8x8_t __rev2_307; __rev2_307 = __builtin_shufflevector(__s2_307, __s2_307, __lane_reverse_64_8); \ |
| 48846 | | __ret_307 = __noswap_vset_lane_p8(__noswap_vget_lane_p8(__rev2_307, __p3_307), __rev0_307, __p1_307); \ |
| 48847 | | __ret_307 = __builtin_shufflevector(__ret_307, __ret_307, __lane_reverse_64_8); \ |
| 48718 | #define vcopy_lane_u32(__p0_307, __p1_307, __p2_307, __p3_307) __extension__ ({ \ |
| 48719 | uint32x2_t __ret_307; \ |
| 48720 | uint32x2_t __s0_307 = __p0_307; \ |
| 48721 | uint32x2_t __s2_307 = __p2_307; \ |
| 48722 | uint32x2_t __rev0_307; __rev0_307 = __builtin_shufflevector(__s0_307, __s0_307, __lane_reverse_64_32); \ |
| 48723 | uint32x2_t __rev2_307; __rev2_307 = __builtin_shufflevector(__s2_307, __s2_307, __lane_reverse_64_32); \ |
| 48724 | __ret_307 = __noswap_vset_lane_u32(__noswap_vget_lane_u32(__rev2_307, __p3_307), __rev0_307, __p1_307); \ |
| 48725 | __ret_307 = __builtin_shufflevector(__ret_307, __ret_307, __lane_reverse_64_32); \ |
| 48848 | 48726 | __ret_307; \ |
| 48849 | 48727 | }) |
| 48850 | 48728 | #endif |
| 48851 | 48729 | |
| 48852 | | #ifdef __LITTLE_ENDIAN__ |
| 48853 | | #define vcopy_lane_p16(__p0_308, __p1_308, __p2_308, __p3_308) __extension__ ({ \ |
| 48854 | | poly16x4_t __ret_308; \ |
| 48855 | | poly16x4_t __s0_308 = __p0_308; \ |
| 48856 | | poly16x4_t __s2_308 = __p2_308; \ |
| 48857 | | __ret_308 = vset_lane_p16(vget_lane_p16(__s2_308, __p3_308), __s0_308, __p1_308); \ |
| 48730 | #define vcopy_lane_u64(__p0_308, __p1_308, __p2_308, __p3_308) __extension__ ({ \ |
| 48731 | uint64x1_t __ret_308; \ |
| 48732 | uint64x1_t __s0_308 = __p0_308; \ |
| 48733 | uint64x1_t __s2_308 = __p2_308; \ |
| 48734 | __ret_308 = vset_lane_u64(vget_lane_u64(__s2_308, __p3_308), __s0_308, __p1_308); \ |
| 48858 | 48735 | __ret_308; \ |
| 48859 | 48736 | }) |
| 48860 | | #else |
| 48861 | | #define vcopy_lane_p16(__p0_309, __p1_309, __p2_309, __p3_309) __extension__ ({ \ |
| 48862 | | poly16x4_t __ret_309; \ |
| 48863 | | poly16x4_t __s0_309 = __p0_309; \ |
| 48864 | | poly16x4_t __s2_309 = __p2_309; \ |
| 48865 | | poly16x4_t __rev0_309; __rev0_309 = __builtin_shufflevector(__s0_309, __s0_309, __lane_reverse_64_16); \ |
| 48866 | | poly16x4_t __rev2_309; __rev2_309 = __builtin_shufflevector(__s2_309, __s2_309, __lane_reverse_64_16); \ |
| 48867 | | __ret_309 = __noswap_vset_lane_p16(__noswap_vget_lane_p16(__rev2_309, __p3_309), __rev0_309, __p1_309); \ |
| 48868 | | __ret_309 = __builtin_shufflevector(__ret_309, __ret_309, __lane_reverse_64_16); \ |
| 48737 | #ifdef __LITTLE_ENDIAN__ |
| 48738 | #define vcopy_lane_u16(__p0_309, __p1_309, __p2_309, __p3_309) __extension__ ({ \ |
| 48739 | uint16x4_t __ret_309; \ |
| 48740 | uint16x4_t __s0_309 = __p0_309; \ |
| 48741 | uint16x4_t __s2_309 = __p2_309; \ |
| 48742 | __ret_309 = vset_lane_u16(vget_lane_u16(__s2_309, __p3_309), __s0_309, __p1_309); \ |
| 48869 | 48743 | __ret_309; \ |
| 48870 | 48744 | }) |
| 48745 | #else |
| 48746 | #define vcopy_lane_u16(__p0_310, __p1_310, __p2_310, __p3_310) __extension__ ({ \ |
| 48747 | uint16x4_t __ret_310; \ |
| 48748 | uint16x4_t __s0_310 = __p0_310; \ |
| 48749 | uint16x4_t __s2_310 = __p2_310; \ |
| 48750 | uint16x4_t __rev0_310; __rev0_310 = __builtin_shufflevector(__s0_310, __s0_310, __lane_reverse_64_16); \ |
| 48751 | uint16x4_t __rev2_310; __rev2_310 = __builtin_shufflevector(__s2_310, __s2_310, __lane_reverse_64_16); \ |
| 48752 | __ret_310 = __noswap_vset_lane_u16(__noswap_vget_lane_u16(__rev2_310, __p3_310), __rev0_310, __p1_310); \ |
| 48753 | __ret_310 = __builtin_shufflevector(__ret_310, __ret_310, __lane_reverse_64_16); \ |
| 48754 | __ret_310; \ |
| 48755 | }) |
| 48871 | 48756 | #endif |
| 48872 | 48757 | |
| 48873 | 48758 | #ifdef __LITTLE_ENDIAN__ |
| 48874 | | #define vcopy_lane_u8(__p0_310, __p1_310, __p2_310, __p3_310) __extension__ ({ \ |
| 48875 | | uint8x8_t __ret_310; \ |
| 48876 | | uint8x8_t __s0_310 = __p0_310; \ |
| 48877 | | uint8x8_t __s2_310 = __p2_310; \ |
| 48878 | | __ret_310 = vset_lane_u8(vget_lane_u8(__s2_310, __p3_310), __s0_310, __p1_310); \ |
| 48879 | | __ret_310; \ |
| 48759 | #define vcopy_lane_s8(__p0_311, __p1_311, __p2_311, __p3_311) __extension__ ({ \ |
| 48760 | int8x8_t __ret_311; \ |
| 48761 | int8x8_t __s0_311 = __p0_311; \ |
| 48762 | int8x8_t __s2_311 = __p2_311; \ |
| 48763 | __ret_311 = vset_lane_s8(vget_lane_s8(__s2_311, __p3_311), __s0_311, __p1_311); \ |
| 48764 | __ret_311; \ |
| 48880 | 48765 | }) |
| 48881 | 48766 | #else |
| 48882 | | #define vcopy_lane_u8(__p0_311, __p1_311, __p2_311, __p3_311) __extension__ ({ \ |
| 48883 | | uint8x8_t __ret_311; \ |
| 48884 | | uint8x8_t __s0_311 = __p0_311; \ |
| 48885 | | uint8x8_t __s2_311 = __p2_311; \ |
| 48886 | | uint8x8_t __rev0_311; __rev0_311 = __builtin_shufflevector(__s0_311, __s0_311, __lane_reverse_64_8); \ |
| 48887 | | uint8x8_t __rev2_311; __rev2_311 = __builtin_shufflevector(__s2_311, __s2_311, __lane_reverse_64_8); \ |
| 48888 | | __ret_311 = __noswap_vset_lane_u8(__noswap_vget_lane_u8(__rev2_311, __p3_311), __rev0_311, __p1_311); \ |
| 48889 | | __ret_311 = __builtin_shufflevector(__ret_311, __ret_311, __lane_reverse_64_8); \ |
| 48890 | | __ret_311; \ |
| 48767 | #define vcopy_lane_s8(__p0_312, __p1_312, __p2_312, __p3_312) __extension__ ({ \ |
| 48768 | int8x8_t __ret_312; \ |
| 48769 | int8x8_t __s0_312 = __p0_312; \ |
| 48770 | int8x8_t __s2_312 = __p2_312; \ |
| 48771 | int8x8_t __rev0_312; __rev0_312 = __builtin_shufflevector(__s0_312, __s0_312, __lane_reverse_64_8); \ |
| 48772 | int8x8_t __rev2_312; __rev2_312 = __builtin_shufflevector(__s2_312, __s2_312, __lane_reverse_64_8); \ |
| 48773 | __ret_312 = __noswap_vset_lane_s8(__noswap_vget_lane_s8(__rev2_312, __p3_312), __rev0_312, __p1_312); \ |
| 48774 | __ret_312 = __builtin_shufflevector(__ret_312, __ret_312, __lane_reverse_64_8); \ |
| 48775 | __ret_312; \ |
| 48891 | 48776 | }) |
| 48892 | 48777 | #endif |
| 48893 | 48778 | |
| 48894 | 48779 | #ifdef __LITTLE_ENDIAN__ |
| 48895 | | #define vcopy_lane_u32(__p0_312, __p1_312, __p2_312, __p3_312) __extension__ ({ \ |
| 48896 | | uint32x2_t __ret_312; \ |
| 48897 | | uint32x2_t __s0_312 = __p0_312; \ |
| 48898 | | uint32x2_t __s2_312 = __p2_312; \ |
| 48899 | | __ret_312 = vset_lane_u32(vget_lane_u32(__s2_312, __p3_312), __s0_312, __p1_312); \ |
| 48900 | | __ret_312; \ |
| 48780 | #define vcopy_lane_f32(__p0_313, __p1_313, __p2_313, __p3_313) __extension__ ({ \ |
| 48781 | float32x2_t __ret_313; \ |
| 48782 | float32x2_t __s0_313 = __p0_313; \ |
| 48783 | float32x2_t __s2_313 = __p2_313; \ |
| 48784 | __ret_313 = vset_lane_f32(vget_lane_f32(__s2_313, __p3_313), __s0_313, __p1_313); \ |
| 48785 | __ret_313; \ |
| 48901 | 48786 | }) |
| 48902 | 48787 | #else |
| 48903 | | #define vcopy_lane_u32(__p0_313, __p1_313, __p2_313, __p3_313) __extension__ ({ \ |
| 48904 | | uint32x2_t __ret_313; \ |
| 48905 | | uint32x2_t __s0_313 = __p0_313; \ |
| 48906 | | uint32x2_t __s2_313 = __p2_313; \ |
| 48907 | | uint32x2_t __rev0_313; __rev0_313 = __builtin_shufflevector(__s0_313, __s0_313, __lane_reverse_64_32); \ |
| 48908 | | uint32x2_t __rev2_313; __rev2_313 = __builtin_shufflevector(__s2_313, __s2_313, __lane_reverse_64_32); \ |
| 48909 | | __ret_313 = __noswap_vset_lane_u32(__noswap_vget_lane_u32(__rev2_313, __p3_313), __rev0_313, __p1_313); \ |
| 48910 | | __ret_313 = __builtin_shufflevector(__ret_313, __ret_313, __lane_reverse_64_32); \ |
| 48911 | | __ret_313; \ |
| 48788 | #define vcopy_lane_f32(__p0_314, __p1_314, __p2_314, __p3_314) __extension__ ({ \ |
| 48789 | float32x2_t __ret_314; \ |
| 48790 | float32x2_t __s0_314 = __p0_314; \ |
| 48791 | float32x2_t __s2_314 = __p2_314; \ |
| 48792 | float32x2_t __rev0_314; __rev0_314 = __builtin_shufflevector(__s0_314, __s0_314, __lane_reverse_64_32); \ |
| 48793 | float32x2_t __rev2_314; __rev2_314 = __builtin_shufflevector(__s2_314, __s2_314, __lane_reverse_64_32); \ |
| 48794 | __ret_314 = __noswap_vset_lane_f32(__noswap_vget_lane_f32(__rev2_314, __p3_314), __rev0_314, __p1_314); \ |
| 48795 | __ret_314 = __builtin_shufflevector(__ret_314, __ret_314, __lane_reverse_64_32); \ |
| 48796 | __ret_314; \ |
| 48912 | 48797 | }) |
| 48913 | 48798 | #endif |
| 48914 | 48799 | |
| 48915 | | #define vcopy_lane_u64(__p0_314, __p1_314, __p2_314, __p3_314) __extension__ ({ \ |
| 48916 | | uint64x1_t __ret_314; \ |
| 48917 | | uint64x1_t __s0_314 = __p0_314; \ |
| 48918 | | uint64x1_t __s2_314 = __p2_314; \ |
| 48919 | | __ret_314 = vset_lane_u64(vget_lane_u64(__s2_314, __p3_314), __s0_314, __p1_314); \ |
| 48920 | | __ret_314; \ |
| 48921 | | }) |
| 48922 | 48800 | #ifdef __LITTLE_ENDIAN__ |
| 48923 | | #define vcopy_lane_u16(__p0_315, __p1_315, __p2_315, __p3_315) __extension__ ({ \ |
| 48924 | | uint16x4_t __ret_315; \ |
| 48925 | | uint16x4_t __s0_315 = __p0_315; \ |
| 48926 | | uint16x4_t __s2_315 = __p2_315; \ |
| 48927 | | __ret_315 = vset_lane_u16(vget_lane_u16(__s2_315, __p3_315), __s0_315, __p1_315); \ |
| 48801 | #define vcopy_lane_s32(__p0_315, __p1_315, __p2_315, __p3_315) __extension__ ({ \ |
| 48802 | int32x2_t __ret_315; \ |
| 48803 | int32x2_t __s0_315 = __p0_315; \ |
| 48804 | int32x2_t __s2_315 = __p2_315; \ |
| 48805 | __ret_315 = vset_lane_s32(vget_lane_s32(__s2_315, __p3_315), __s0_315, __p1_315); \ |
| 48928 | 48806 | __ret_315; \ |
| 48929 | 48807 | }) |
| 48930 | 48808 | #else |
| 48931 | | #define vcopy_lane_u16(__p0_316, __p1_316, __p2_316, __p3_316) __extension__ ({ \ |
| 48932 | | uint16x4_t __ret_316; \ |
| 48933 | | uint16x4_t __s0_316 = __p0_316; \ |
| 48934 | | uint16x4_t __s2_316 = __p2_316; \ |
| 48935 | | uint16x4_t __rev0_316; __rev0_316 = __builtin_shufflevector(__s0_316, __s0_316, __lane_reverse_64_16); \ |
| 48936 | | uint16x4_t __rev2_316; __rev2_316 = __builtin_shufflevector(__s2_316, __s2_316, __lane_reverse_64_16); \ |
| 48937 | | __ret_316 = __noswap_vset_lane_u16(__noswap_vget_lane_u16(__rev2_316, __p3_316), __rev0_316, __p1_316); \ |
| 48938 | | __ret_316 = __builtin_shufflevector(__ret_316, __ret_316, __lane_reverse_64_16); \ |
| 48809 | #define vcopy_lane_s32(__p0_316, __p1_316, __p2_316, __p3_316) __extension__ ({ \ |
| 48810 | int32x2_t __ret_316; \ |
| 48811 | int32x2_t __s0_316 = __p0_316; \ |
| 48812 | int32x2_t __s2_316 = __p2_316; \ |
| 48813 | int32x2_t __rev0_316; __rev0_316 = __builtin_shufflevector(__s0_316, __s0_316, __lane_reverse_64_32); \ |
| 48814 | int32x2_t __rev2_316; __rev2_316 = __builtin_shufflevector(__s2_316, __s2_316, __lane_reverse_64_32); \ |
| 48815 | __ret_316 = __noswap_vset_lane_s32(__noswap_vget_lane_s32(__rev2_316, __p3_316), __rev0_316, __p1_316); \ |
| 48816 | __ret_316 = __builtin_shufflevector(__ret_316, __ret_316, __lane_reverse_64_32); \ |
| 48939 | 48817 | __ret_316; \ |
| 48940 | 48818 | }) |
| 48941 | 48819 | #endif |
| 48942 | 48820 | |
| 48943 | | #ifdef __LITTLE_ENDIAN__ |
| 48944 | | #define vcopy_lane_s8(__p0_317, __p1_317, __p2_317, __p3_317) __extension__ ({ \ |
| 48945 | | int8x8_t __ret_317; \ |
| 48946 | | int8x8_t __s0_317 = __p0_317; \ |
| 48947 | | int8x8_t __s2_317 = __p2_317; \ |
| 48948 | | __ret_317 = vset_lane_s8(vget_lane_s8(__s2_317, __p3_317), __s0_317, __p1_317); \ |
| 48821 | #define vcopy_lane_s64(__p0_317, __p1_317, __p2_317, __p3_317) __extension__ ({ \ |
| 48822 | int64x1_t __ret_317; \ |
| 48823 | int64x1_t __s0_317 = __p0_317; \ |
| 48824 | int64x1_t __s2_317 = __p2_317; \ |
| 48825 | __ret_317 = vset_lane_s64(vget_lane_s64(__s2_317, __p3_317), __s0_317, __p1_317); \ |
| 48949 | 48826 | __ret_317; \ |
| 48950 | 48827 | }) |
| 48951 | | #else |
| 48952 | | #define vcopy_lane_s8(__p0_318, __p1_318, __p2_318, __p3_318) __extension__ ({ \ |
| 48953 | | int8x8_t __ret_318; \ |
| 48954 | | int8x8_t __s0_318 = __p0_318; \ |
| 48955 | | int8x8_t __s2_318 = __p2_318; \ |
| 48956 | | int8x8_t __rev0_318; __rev0_318 = __builtin_shufflevector(__s0_318, __s0_318, __lane_reverse_64_8); \ |
| 48957 | | int8x8_t __rev2_318; __rev2_318 = __builtin_shufflevector(__s2_318, __s2_318, __lane_reverse_64_8); \ |
| 48958 | | __ret_318 = __noswap_vset_lane_s8(__noswap_vget_lane_s8(__rev2_318, __p3_318), __rev0_318, __p1_318); \ |
| 48959 | | __ret_318 = __builtin_shufflevector(__ret_318, __ret_318, __lane_reverse_64_8); \ |
| 48828 | #ifdef __LITTLE_ENDIAN__ |
| 48829 | #define vcopy_lane_mf8(__p0_318, __p1_318, __p2_318, __p3_318) __extension__ ({ \ |
| 48830 | mfloat8x8_t __ret_318; \ |
| 48831 | mfloat8x8_t __s0_318 = __p0_318; \ |
| 48832 | mfloat8x8_t __s2_318 = __p2_318; \ |
| 48833 | __ret_318 = vset_lane_mf8(vget_lane_mf8(__s2_318, __p3_318), __s0_318, __p1_318); \ |
| 48960 | 48834 | __ret_318; \ |
| 48961 | 48835 | }) |
| 48836 | #else |
| 48837 | #define vcopy_lane_mf8(__p0_319, __p1_319, __p2_319, __p3_319) __extension__ ({ \ |
| 48838 | mfloat8x8_t __ret_319; \ |
| 48839 | mfloat8x8_t __s0_319 = __p0_319; \ |
| 48840 | mfloat8x8_t __s2_319 = __p2_319; \ |
| 48841 | mfloat8x8_t __rev0_319; __rev0_319 = __builtin_shufflevector(__s0_319, __s0_319, __lane_reverse_64_8); \ |
| 48842 | mfloat8x8_t __rev2_319; __rev2_319 = __builtin_shufflevector(__s2_319, __s2_319, __lane_reverse_64_8); \ |
| 48843 | __ret_319 = __noswap_vset_lane_mf8(__noswap_vget_lane_mf8(__rev2_319, __p3_319), __rev0_319, __p1_319); \ |
| 48844 | __ret_319 = __builtin_shufflevector(__ret_319, __ret_319, __lane_reverse_64_8); \ |
| 48845 | __ret_319; \ |
| 48846 | }) |
| 48962 | 48847 | #endif |
| 48963 | 48848 | |
| 48964 | 48849 | #ifdef __LITTLE_ENDIAN__ |
| 48965 | | #define vcopy_lane_f32(__p0_319, __p1_319, __p2_319, __p3_319) __extension__ ({ \ |
| 48966 | | float32x2_t __ret_319; \ |
| 48967 | | float32x2_t __s0_319 = __p0_319; \ |
| 48968 | | float32x2_t __s2_319 = __p2_319; \ |
| 48969 | | __ret_319 = vset_lane_f32(vget_lane_f32(__s2_319, __p3_319), __s0_319, __p1_319); \ |
| 48970 | | __ret_319; \ |
| 48850 | #define vcopy_lane_s16(__p0_320, __p1_320, __p2_320, __p3_320) __extension__ ({ \ |
| 48851 | int16x4_t __ret_320; \ |
| 48852 | int16x4_t __s0_320 = __p0_320; \ |
| 48853 | int16x4_t __s2_320 = __p2_320; \ |
| 48854 | __ret_320 = vset_lane_s16(vget_lane_s16(__s2_320, __p3_320), __s0_320, __p1_320); \ |
| 48855 | __ret_320; \ |
| 48971 | 48856 | }) |
| 48972 | 48857 | #else |
| 48973 | | #define vcopy_lane_f32(__p0_320, __p1_320, __p2_320, __p3_320) __extension__ ({ \ |
| 48974 | | float32x2_t __ret_320; \ |
| 48975 | | float32x2_t __s0_320 = __p0_320; \ |
| 48976 | | float32x2_t __s2_320 = __p2_320; \ |
| 48977 | | float32x2_t __rev0_320; __rev0_320 = __builtin_shufflevector(__s0_320, __s0_320, __lane_reverse_64_32); \ |
| 48978 | | float32x2_t __rev2_320; __rev2_320 = __builtin_shufflevector(__s2_320, __s2_320, __lane_reverse_64_32); \ |
| 48979 | | __ret_320 = __noswap_vset_lane_f32(__noswap_vget_lane_f32(__rev2_320, __p3_320), __rev0_320, __p1_320); \ |
| 48980 | | __ret_320 = __builtin_shufflevector(__ret_320, __ret_320, __lane_reverse_64_32); \ |
| 48981 | | __ret_320; \ |
| 48858 | #define vcopy_lane_s16(__p0_321, __p1_321, __p2_321, __p3_321) __extension__ ({ \ |
| 48859 | int16x4_t __ret_321; \ |
| 48860 | int16x4_t __s0_321 = __p0_321; \ |
| 48861 | int16x4_t __s2_321 = __p2_321; \ |
| 48862 | int16x4_t __rev0_321; __rev0_321 = __builtin_shufflevector(__s0_321, __s0_321, __lane_reverse_64_16); \ |
| 48863 | int16x4_t __rev2_321; __rev2_321 = __builtin_shufflevector(__s2_321, __s2_321, __lane_reverse_64_16); \ |
| 48864 | __ret_321 = __noswap_vset_lane_s16(__noswap_vget_lane_s16(__rev2_321, __p3_321), __rev0_321, __p1_321); \ |
| 48865 | __ret_321 = __builtin_shufflevector(__ret_321, __ret_321, __lane_reverse_64_16); \ |
| 48866 | __ret_321; \ |
| 48982 | 48867 | }) |
| 48983 | 48868 | #endif |
| 48984 | 48869 | |
| 48985 | 48870 | #ifdef __LITTLE_ENDIAN__ |
| 48986 | | #define vcopy_lane_s32(__p0_321, __p1_321, __p2_321, __p3_321) __extension__ ({ \ |
| 48987 | | int32x2_t __ret_321; \ |
| 48988 | | int32x2_t __s0_321 = __p0_321; \ |
| 48989 | | int32x2_t __s2_321 = __p2_321; \ |
| 48990 | | __ret_321 = vset_lane_s32(vget_lane_s32(__s2_321, __p3_321), __s0_321, __p1_321); \ |
| 48991 | | __ret_321; \ |
| 48871 | #define vcopy_lane_bf16(__p0_322, __p1_322, __p2_322, __p3_322) __extension__ ({ \ |
| 48872 | bfloat16x4_t __ret_322; \ |
| 48873 | bfloat16x4_t __s0_322 = __p0_322; \ |
| 48874 | bfloat16x4_t __s2_322 = __p2_322; \ |
| 48875 | __ret_322 = vset_lane_bf16(vget_lane_bf16(__s2_322, __p3_322), __s0_322, __p1_322); \ |
| 48876 | __ret_322; \ |
| 48992 | 48877 | }) |
| 48993 | 48878 | #else |
| 48994 | | #define vcopy_lane_s32(__p0_322, __p1_322, __p2_322, __p3_322) __extension__ ({ \ |
| 48995 | | int32x2_t __ret_322; \ |
| 48996 | | int32x2_t __s0_322 = __p0_322; \ |
| 48997 | | int32x2_t __s2_322 = __p2_322; \ |
| 48998 | | int32x2_t __rev0_322; __rev0_322 = __builtin_shufflevector(__s0_322, __s0_322, __lane_reverse_64_32); \ |
| 48999 | | int32x2_t __rev2_322; __rev2_322 = __builtin_shufflevector(__s2_322, __s2_322, __lane_reverse_64_32); \ |
| 49000 | | __ret_322 = __noswap_vset_lane_s32(__noswap_vget_lane_s32(__rev2_322, __p3_322), __rev0_322, __p1_322); \ |
| 49001 | | __ret_322 = __builtin_shufflevector(__ret_322, __ret_322, __lane_reverse_64_32); \ |
| 49002 | | __ret_322; \ |
| 48879 | #define vcopy_lane_bf16(__p0_323, __p1_323, __p2_323, __p3_323) __extension__ ({ \ |
| 48880 | bfloat16x4_t __ret_323; \ |
| 48881 | bfloat16x4_t __s0_323 = __p0_323; \ |
| 48882 | bfloat16x4_t __s2_323 = __p2_323; \ |
| 48883 | bfloat16x4_t __rev0_323; __rev0_323 = __builtin_shufflevector(__s0_323, __s0_323, __lane_reverse_64_16); \ |
| 48884 | bfloat16x4_t __rev2_323; __rev2_323 = __builtin_shufflevector(__s2_323, __s2_323, __lane_reverse_64_16); \ |
| 48885 | __ret_323 = __noswap_vset_lane_bf16(__noswap_vget_lane_bf16(__rev2_323, __p3_323), __rev0_323, __p1_323); \ |
| 48886 | __ret_323 = __builtin_shufflevector(__ret_323, __ret_323, __lane_reverse_64_16); \ |
| 48887 | __ret_323; \ |
| 49003 | 48888 | }) |
| 49004 | 48889 | #endif |
| 49005 | 48890 | |
| 49006 | | #define vcopy_lane_s64(__p0_323, __p1_323, __p2_323, __p3_323) __extension__ ({ \ |
| 49007 | | int64x1_t __ret_323; \ |
| 49008 | | int64x1_t __s0_323 = __p0_323; \ |
| 49009 | | int64x1_t __s2_323 = __p2_323; \ |
| 49010 | | __ret_323 = vset_lane_s64(vget_lane_s64(__s2_323, __p3_323), __s0_323, __p1_323); \ |
| 49011 | | __ret_323; \ |
| 49012 | | }) |
| 49013 | 48891 | #ifdef __LITTLE_ENDIAN__ |
| 49014 | | #define vcopy_lane_mf8(__p0_324, __p1_324, __p2_324, __p3_324) __extension__ ({ \ |
| 49015 | | mfloat8x8_t __ret_324; \ |
| 49016 | | mfloat8x8_t __s0_324 = __p0_324; \ |
| 49017 | | mfloat8x8_t __s2_324 = __p2_324; \ |
| 49018 | | __ret_324 = vset_lane_mf8(vget_lane_mf8(__s2_324, __p3_324), __s0_324, __p1_324); \ |
| 48892 | #define vcopyq_laneq_p8(__p0_324, __p1_324, __p2_324, __p3_324) __extension__ ({ \ |
| 48893 | poly8x16_t __ret_324; \ |
| 48894 | poly8x16_t __s0_324 = __p0_324; \ |
| 48895 | poly8x16_t __s2_324 = __p2_324; \ |
| 48896 | __ret_324 = vsetq_lane_p8(vgetq_lane_p8(__s2_324, __p3_324), __s0_324, __p1_324); \ |
| 49019 | 48897 | __ret_324; \ |
| 49020 | 48898 | }) |
| 49021 | 48899 | #else |
| 49022 | | #define vcopy_lane_mf8(__p0_325, __p1_325, __p2_325, __p3_325) __extension__ ({ \ |
| 49023 | | mfloat8x8_t __ret_325; \ |
| 49024 | | mfloat8x8_t __s0_325 = __p0_325; \ |
| 49025 | | mfloat8x8_t __s2_325 = __p2_325; \ |
| 49026 | | mfloat8x8_t __rev0_325; __rev0_325 = __builtin_shufflevector(__s0_325, __s0_325, __lane_reverse_64_8); \ |
| 49027 | | mfloat8x8_t __rev2_325; __rev2_325 = __builtin_shufflevector(__s2_325, __s2_325, __lane_reverse_64_8); \ |
| 49028 | | __ret_325 = __noswap_vset_lane_mf8(__noswap_vget_lane_mf8(__rev2_325, __p3_325), __rev0_325, __p1_325); \ |
| 49029 | | __ret_325 = __builtin_shufflevector(__ret_325, __ret_325, __lane_reverse_64_8); \ |
| 48900 | #define vcopyq_laneq_p8(__p0_325, __p1_325, __p2_325, __p3_325) __extension__ ({ \ |
| 48901 | poly8x16_t __ret_325; \ |
| 48902 | poly8x16_t __s0_325 = __p0_325; \ |
| 48903 | poly8x16_t __s2_325 = __p2_325; \ |
| 48904 | poly8x16_t __rev0_325; __rev0_325 = __builtin_shufflevector(__s0_325, __s0_325, __lane_reverse_128_8); \ |
| 48905 | poly8x16_t __rev2_325; __rev2_325 = __builtin_shufflevector(__s2_325, __s2_325, __lane_reverse_128_8); \ |
| 48906 | __ret_325 = __noswap_vsetq_lane_p8(__noswap_vgetq_lane_p8(__rev2_325, __p3_325), __rev0_325, __p1_325); \ |
| 48907 | __ret_325 = __builtin_shufflevector(__ret_325, __ret_325, __lane_reverse_128_8); \ |
| 49030 | 48908 | __ret_325; \ |
| 49031 | 48909 | }) |
| 49032 | 48910 | #endif |
| 49033 | 48911 | |
| 49034 | 48912 | #ifdef __LITTLE_ENDIAN__ |
| 49035 | | #define vcopy_lane_s16(__p0_326, __p1_326, __p2_326, __p3_326) __extension__ ({ \ |
| 49036 | | int16x4_t __ret_326; \ |
| 49037 | | int16x4_t __s0_326 = __p0_326; \ |
| 49038 | | int16x4_t __s2_326 = __p2_326; \ |
| 49039 | | __ret_326 = vset_lane_s16(vget_lane_s16(__s2_326, __p3_326), __s0_326, __p1_326); \ |
| 48913 | #define vcopyq_laneq_p16(__p0_326, __p1_326, __p2_326, __p3_326) __extension__ ({ \ |
| 48914 | poly16x8_t __ret_326; \ |
| 48915 | poly16x8_t __s0_326 = __p0_326; \ |
| 48916 | poly16x8_t __s2_326 = __p2_326; \ |
| 48917 | __ret_326 = vsetq_lane_p16(vgetq_lane_p16(__s2_326, __p3_326), __s0_326, __p1_326); \ |
| 49040 | 48918 | __ret_326; \ |
| 49041 | 48919 | }) |
| 49042 | 48920 | #else |
| 49043 | | #define vcopy_lane_s16(__p0_327, __p1_327, __p2_327, __p3_327) __extension__ ({ \ |
| 49044 | | int16x4_t __ret_327; \ |
| 49045 | | int16x4_t __s0_327 = __p0_327; \ |
| 49046 | | int16x4_t __s2_327 = __p2_327; \ |
| 49047 | | int16x4_t __rev0_327; __rev0_327 = __builtin_shufflevector(__s0_327, __s0_327, __lane_reverse_64_16); \ |
| 49048 | | int16x4_t __rev2_327; __rev2_327 = __builtin_shufflevector(__s2_327, __s2_327, __lane_reverse_64_16); \ |
| 49049 | | __ret_327 = __noswap_vset_lane_s16(__noswap_vget_lane_s16(__rev2_327, __p3_327), __rev0_327, __p1_327); \ |
| 49050 | | __ret_327 = __builtin_shufflevector(__ret_327, __ret_327, __lane_reverse_64_16); \ |
| 48921 | #define vcopyq_laneq_p16(__p0_327, __p1_327, __p2_327, __p3_327) __extension__ ({ \ |
| 48922 | poly16x8_t __ret_327; \ |
| 48923 | poly16x8_t __s0_327 = __p0_327; \ |
| 48924 | poly16x8_t __s2_327 = __p2_327; \ |
| 48925 | poly16x8_t __rev0_327; __rev0_327 = __builtin_shufflevector(__s0_327, __s0_327, __lane_reverse_128_16); \ |
| 48926 | poly16x8_t __rev2_327; __rev2_327 = __builtin_shufflevector(__s2_327, __s2_327, __lane_reverse_128_16); \ |
| 48927 | __ret_327 = __noswap_vsetq_lane_p16(__noswap_vgetq_lane_p16(__rev2_327, __p3_327), __rev0_327, __p1_327); \ |
| 48928 | __ret_327 = __builtin_shufflevector(__ret_327, __ret_327, __lane_reverse_128_16); \ |
| 49051 | 48929 | __ret_327; \ |
| 49052 | 48930 | }) |
| 49053 | 48931 | #endif |
| 49054 | 48932 | |
| 49055 | 48933 | #ifdef __LITTLE_ENDIAN__ |
| 49056 | | #define vcopyq_laneq_p8(__p0_328, __p1_328, __p2_328, __p3_328) __extension__ ({ \ |
| 49057 | | poly8x16_t __ret_328; \ |
| 49058 | | poly8x16_t __s0_328 = __p0_328; \ |
| 49059 | | poly8x16_t __s2_328 = __p2_328; \ |
| 49060 | | __ret_328 = vsetq_lane_p8(vgetq_lane_p8(__s2_328, __p3_328), __s0_328, __p1_328); \ |
| 48934 | #define vcopyq_laneq_u8(__p0_328, __p1_328, __p2_328, __p3_328) __extension__ ({ \ |
| 48935 | uint8x16_t __ret_328; \ |
| 48936 | uint8x16_t __s0_328 = __p0_328; \ |
| 48937 | uint8x16_t __s2_328 = __p2_328; \ |
| 48938 | __ret_328 = vsetq_lane_u8(vgetq_lane_u8(__s2_328, __p3_328), __s0_328, __p1_328); \ |
| 49061 | 48939 | __ret_328; \ |
| 49062 | 48940 | }) |
| 49063 | 48941 | #else |
| 49064 | | #define vcopyq_laneq_p8(__p0_329, __p1_329, __p2_329, __p3_329) __extension__ ({ \ |
| 49065 | | poly8x16_t __ret_329; \ |
| 49066 | | poly8x16_t __s0_329 = __p0_329; \ |
| 49067 | | poly8x16_t __s2_329 = __p2_329; \ |
| 49068 | | poly8x16_t __rev0_329; __rev0_329 = __builtin_shufflevector(__s0_329, __s0_329, __lane_reverse_128_8); \ |
| 49069 | | poly8x16_t __rev2_329; __rev2_329 = __builtin_shufflevector(__s2_329, __s2_329, __lane_reverse_128_8); \ |
| 49070 | | __ret_329 = __noswap_vsetq_lane_p8(__noswap_vgetq_lane_p8(__rev2_329, __p3_329), __rev0_329, __p1_329); \ |
| 48942 | #define vcopyq_laneq_u8(__p0_329, __p1_329, __p2_329, __p3_329) __extension__ ({ \ |
| 48943 | uint8x16_t __ret_329; \ |
| 48944 | uint8x16_t __s0_329 = __p0_329; \ |
| 48945 | uint8x16_t __s2_329 = __p2_329; \ |
| 48946 | uint8x16_t __rev0_329; __rev0_329 = __builtin_shufflevector(__s0_329, __s0_329, __lane_reverse_128_8); \ |
| 48947 | uint8x16_t __rev2_329; __rev2_329 = __builtin_shufflevector(__s2_329, __s2_329, __lane_reverse_128_8); \ |
| 48948 | __ret_329 = __noswap_vsetq_lane_u8(__noswap_vgetq_lane_u8(__rev2_329, __p3_329), __rev0_329, __p1_329); \ |
| 49071 | 48949 | __ret_329 = __builtin_shufflevector(__ret_329, __ret_329, __lane_reverse_128_8); \ |
| 49072 | 48950 | __ret_329; \ |
| 49073 | 48951 | }) |
| 49074 | 48952 | #endif |
| 49075 | 48953 | |
| 49076 | 48954 | #ifdef __LITTLE_ENDIAN__ |
| 49077 | | #define vcopyq_laneq_p16(__p0_330, __p1_330, __p2_330, __p3_330) __extension__ ({ \ |
| 49078 | | poly16x8_t __ret_330; \ |
| 49079 | | poly16x8_t __s0_330 = __p0_330; \ |
| 49080 | | poly16x8_t __s2_330 = __p2_330; \ |
| 49081 | | __ret_330 = vsetq_lane_p16(vgetq_lane_p16(__s2_330, __p3_330), __s0_330, __p1_330); \ |
| 48955 | #define vcopyq_laneq_u32(__p0_330, __p1_330, __p2_330, __p3_330) __extension__ ({ \ |
| 48956 | uint32x4_t __ret_330; \ |
| 48957 | uint32x4_t __s0_330 = __p0_330; \ |
| 48958 | uint32x4_t __s2_330 = __p2_330; \ |
| 48959 | __ret_330 = vsetq_lane_u32(vgetq_lane_u32(__s2_330, __p3_330), __s0_330, __p1_330); \ |
| 49082 | 48960 | __ret_330; \ |
| 49083 | 48961 | }) |
| 49084 | 48962 | #else |
| 49085 | | #define vcopyq_laneq_p16(__p0_331, __p1_331, __p2_331, __p3_331) __extension__ ({ \ |
| 49086 | | poly16x8_t __ret_331; \ |
| 49087 | | poly16x8_t __s0_331 = __p0_331; \ |
| 49088 | | poly16x8_t __s2_331 = __p2_331; \ |
| 49089 | | poly16x8_t __rev0_331; __rev0_331 = __builtin_shufflevector(__s0_331, __s0_331, __lane_reverse_128_16); \ |
| 49090 | | poly16x8_t __rev2_331; __rev2_331 = __builtin_shufflevector(__s2_331, __s2_331, __lane_reverse_128_16); \ |
| 49091 | | __ret_331 = __noswap_vsetq_lane_p16(__noswap_vgetq_lane_p16(__rev2_331, __p3_331), __rev0_331, __p1_331); \ |
| 49092 | | __ret_331 = __builtin_shufflevector(__ret_331, __ret_331, __lane_reverse_128_16); \ |
| 48963 | #define vcopyq_laneq_u32(__p0_331, __p1_331, __p2_331, __p3_331) __extension__ ({ \ |
| 48964 | uint32x4_t __ret_331; \ |
| 48965 | uint32x4_t __s0_331 = __p0_331; \ |
| 48966 | uint32x4_t __s2_331 = __p2_331; \ |
| 48967 | uint32x4_t __rev0_331; __rev0_331 = __builtin_shufflevector(__s0_331, __s0_331, __lane_reverse_128_32); \ |
| 48968 | uint32x4_t __rev2_331; __rev2_331 = __builtin_shufflevector(__s2_331, __s2_331, __lane_reverse_128_32); \ |
| 48969 | __ret_331 = __noswap_vsetq_lane_u32(__noswap_vgetq_lane_u32(__rev2_331, __p3_331), __rev0_331, __p1_331); \ |
| 48970 | __ret_331 = __builtin_shufflevector(__ret_331, __ret_331, __lane_reverse_128_32); \ |
| 49093 | 48971 | __ret_331; \ |
| 49094 | 48972 | }) |
| 49095 | 48973 | #endif |
| 49096 | 48974 | |
| 49097 | 48975 | #ifdef __LITTLE_ENDIAN__ |
| 49098 | | #define vcopyq_laneq_u8(__p0_332, __p1_332, __p2_332, __p3_332) __extension__ ({ \ |
| 49099 | | uint8x16_t __ret_332; \ |
| 49100 | | uint8x16_t __s0_332 = __p0_332; \ |
| 49101 | | uint8x16_t __s2_332 = __p2_332; \ |
| 49102 | | __ret_332 = vsetq_lane_u8(vgetq_lane_u8(__s2_332, __p3_332), __s0_332, __p1_332); \ |
| 48976 | #define vcopyq_laneq_u64(__p0_332, __p1_332, __p2_332, __p3_332) __extension__ ({ \ |
| 48977 | uint64x2_t __ret_332; \ |
| 48978 | uint64x2_t __s0_332 = __p0_332; \ |
| 48979 | uint64x2_t __s2_332 = __p2_332; \ |
| 48980 | __ret_332 = vsetq_lane_u64(vgetq_lane_u64(__s2_332, __p3_332), __s0_332, __p1_332); \ |
| 49103 | 48981 | __ret_332; \ |
| 49104 | 48982 | }) |
| 49105 | 48983 | #else |
| 49106 | | #define vcopyq_laneq_u8(__p0_333, __p1_333, __p2_333, __p3_333) __extension__ ({ \ |
| 49107 | | uint8x16_t __ret_333; \ |
| 49108 | | uint8x16_t __s0_333 = __p0_333; \ |
| 49109 | | uint8x16_t __s2_333 = __p2_333; \ |
| 49110 | | uint8x16_t __rev0_333; __rev0_333 = __builtin_shufflevector(__s0_333, __s0_333, __lane_reverse_128_8); \ |
| 49111 | | uint8x16_t __rev2_333; __rev2_333 = __builtin_shufflevector(__s2_333, __s2_333, __lane_reverse_128_8); \ |
| 49112 | | __ret_333 = __noswap_vsetq_lane_u8(__noswap_vgetq_lane_u8(__rev2_333, __p3_333), __rev0_333, __p1_333); \ |
| 49113 | | __ret_333 = __builtin_shufflevector(__ret_333, __ret_333, __lane_reverse_128_8); \ |
| 48984 | #define vcopyq_laneq_u64(__p0_333, __p1_333, __p2_333, __p3_333) __extension__ ({ \ |
| 48985 | uint64x2_t __ret_333; \ |
| 48986 | uint64x2_t __s0_333 = __p0_333; \ |
| 48987 | uint64x2_t __s2_333 = __p2_333; \ |
| 48988 | uint64x2_t __rev0_333; __rev0_333 = __builtin_shufflevector(__s0_333, __s0_333, __lane_reverse_128_64); \ |
| 48989 | uint64x2_t __rev2_333; __rev2_333 = __builtin_shufflevector(__s2_333, __s2_333, __lane_reverse_128_64); \ |
| 48990 | __ret_333 = __noswap_vsetq_lane_u64(__noswap_vgetq_lane_u64(__rev2_333, __p3_333), __rev0_333, __p1_333); \ |
| 48991 | __ret_333 = __builtin_shufflevector(__ret_333, __ret_333, __lane_reverse_128_64); \ |
| 49114 | 48992 | __ret_333; \ |
| 49115 | 48993 | }) |
| 49116 | 48994 | #endif |
| 49117 | 48995 | |
| 49118 | 48996 | #ifdef __LITTLE_ENDIAN__ |
| 49119 | | #define vcopyq_laneq_u32(__p0_334, __p1_334, __p2_334, __p3_334) __extension__ ({ \ |
| 49120 | | uint32x4_t __ret_334; \ |
| 49121 | | uint32x4_t __s0_334 = __p0_334; \ |
| 49122 | | uint32x4_t __s2_334 = __p2_334; \ |
| 49123 | | __ret_334 = vsetq_lane_u32(vgetq_lane_u32(__s2_334, __p3_334), __s0_334, __p1_334); \ |
| 48997 | #define vcopyq_laneq_u16(__p0_334, __p1_334, __p2_334, __p3_334) __extension__ ({ \ |
| 48998 | uint16x8_t __ret_334; \ |
| 48999 | uint16x8_t __s0_334 = __p0_334; \ |
| 49000 | uint16x8_t __s2_334 = __p2_334; \ |
| 49001 | __ret_334 = vsetq_lane_u16(vgetq_lane_u16(__s2_334, __p3_334), __s0_334, __p1_334); \ |
| 49124 | 49002 | __ret_334; \ |
| 49125 | 49003 | }) |
| 49126 | 49004 | #else |
| 49127 | | #define vcopyq_laneq_u32(__p0_335, __p1_335, __p2_335, __p3_335) __extension__ ({ \ |
| 49128 | | uint32x4_t __ret_335; \ |
| 49129 | | uint32x4_t __s0_335 = __p0_335; \ |
| 49130 | | uint32x4_t __s2_335 = __p2_335; \ |
| 49131 | | uint32x4_t __rev0_335; __rev0_335 = __builtin_shufflevector(__s0_335, __s0_335, __lane_reverse_128_32); \ |
| 49132 | | uint32x4_t __rev2_335; __rev2_335 = __builtin_shufflevector(__s2_335, __s2_335, __lane_reverse_128_32); \ |
| 49133 | | __ret_335 = __noswap_vsetq_lane_u32(__noswap_vgetq_lane_u32(__rev2_335, __p3_335), __rev0_335, __p1_335); \ |
| 49134 | | __ret_335 = __builtin_shufflevector(__ret_335, __ret_335, __lane_reverse_128_32); \ |
| 49005 | #define vcopyq_laneq_u16(__p0_335, __p1_335, __p2_335, __p3_335) __extension__ ({ \ |
| 49006 | uint16x8_t __ret_335; \ |
| 49007 | uint16x8_t __s0_335 = __p0_335; \ |
| 49008 | uint16x8_t __s2_335 = __p2_335; \ |
| 49009 | uint16x8_t __rev0_335; __rev0_335 = __builtin_shufflevector(__s0_335, __s0_335, __lane_reverse_128_16); \ |
| 49010 | uint16x8_t __rev2_335; __rev2_335 = __builtin_shufflevector(__s2_335, __s2_335, __lane_reverse_128_16); \ |
| 49011 | __ret_335 = __noswap_vsetq_lane_u16(__noswap_vgetq_lane_u16(__rev2_335, __p3_335), __rev0_335, __p1_335); \ |
| 49012 | __ret_335 = __builtin_shufflevector(__ret_335, __ret_335, __lane_reverse_128_16); \ |
| 49135 | 49013 | __ret_335; \ |
| 49136 | 49014 | }) |
| 49137 | 49015 | #endif |
| 49138 | 49016 | |
| 49139 | 49017 | #ifdef __LITTLE_ENDIAN__ |
| 49140 | | #define vcopyq_laneq_u64(__p0_336, __p1_336, __p2_336, __p3_336) __extension__ ({ \ |
| 49141 | | uint64x2_t __ret_336; \ |
| 49142 | | uint64x2_t __s0_336 = __p0_336; \ |
| 49143 | | uint64x2_t __s2_336 = __p2_336; \ |
| 49144 | | __ret_336 = vsetq_lane_u64(vgetq_lane_u64(__s2_336, __p3_336), __s0_336, __p1_336); \ |
| 49018 | #define vcopyq_laneq_s8(__p0_336, __p1_336, __p2_336, __p3_336) __extension__ ({ \ |
| 49019 | int8x16_t __ret_336; \ |
| 49020 | int8x16_t __s0_336 = __p0_336; \ |
| 49021 | int8x16_t __s2_336 = __p2_336; \ |
| 49022 | __ret_336 = vsetq_lane_s8(vgetq_lane_s8(__s2_336, __p3_336), __s0_336, __p1_336); \ |
| 49145 | 49023 | __ret_336; \ |
| 49146 | 49024 | }) |
| 49147 | 49025 | #else |
| 49148 | | #define vcopyq_laneq_u64(__p0_337, __p1_337, __p2_337, __p3_337) __extension__ ({ \ |
| 49149 | | uint64x2_t __ret_337; \ |
| 49150 | | uint64x2_t __s0_337 = __p0_337; \ |
| 49151 | | uint64x2_t __s2_337 = __p2_337; \ |
| 49152 | | uint64x2_t __rev0_337; __rev0_337 = __builtin_shufflevector(__s0_337, __s0_337, __lane_reverse_128_64); \ |
| 49153 | | uint64x2_t __rev2_337; __rev2_337 = __builtin_shufflevector(__s2_337, __s2_337, __lane_reverse_128_64); \ |
| 49154 | | __ret_337 = __noswap_vsetq_lane_u64(__noswap_vgetq_lane_u64(__rev2_337, __p3_337), __rev0_337, __p1_337); \ |
| 49155 | | __ret_337 = __builtin_shufflevector(__ret_337, __ret_337, __lane_reverse_128_64); \ |
| 49026 | #define vcopyq_laneq_s8(__p0_337, __p1_337, __p2_337, __p3_337) __extension__ ({ \ |
| 49027 | int8x16_t __ret_337; \ |
| 49028 | int8x16_t __s0_337 = __p0_337; \ |
| 49029 | int8x16_t __s2_337 = __p2_337; \ |
| 49030 | int8x16_t __rev0_337; __rev0_337 = __builtin_shufflevector(__s0_337, __s0_337, __lane_reverse_128_8); \ |
| 49031 | int8x16_t __rev2_337; __rev2_337 = __builtin_shufflevector(__s2_337, __s2_337, __lane_reverse_128_8); \ |
| 49032 | __ret_337 = __noswap_vsetq_lane_s8(__noswap_vgetq_lane_s8(__rev2_337, __p3_337), __rev0_337, __p1_337); \ |
| 49033 | __ret_337 = __builtin_shufflevector(__ret_337, __ret_337, __lane_reverse_128_8); \ |
| 49156 | 49034 | __ret_337; \ |
| 49157 | 49035 | }) |
| 49158 | 49036 | #endif |
| 49159 | 49037 | |
| 49160 | 49038 | #ifdef __LITTLE_ENDIAN__ |
| 49161 | | #define vcopyq_laneq_u16(__p0_338, __p1_338, __p2_338, __p3_338) __extension__ ({ \ |
| 49162 | | uint16x8_t __ret_338; \ |
| 49163 | | uint16x8_t __s0_338 = __p0_338; \ |
| 49164 | | uint16x8_t __s2_338 = __p2_338; \ |
| 49165 | | __ret_338 = vsetq_lane_u16(vgetq_lane_u16(__s2_338, __p3_338), __s0_338, __p1_338); \ |
| 49039 | #define vcopyq_laneq_f32(__p0_338, __p1_338, __p2_338, __p3_338) __extension__ ({ \ |
| 49040 | float32x4_t __ret_338; \ |
| 49041 | float32x4_t __s0_338 = __p0_338; \ |
| 49042 | float32x4_t __s2_338 = __p2_338; \ |
| 49043 | __ret_338 = vsetq_lane_f32(vgetq_lane_f32(__s2_338, __p3_338), __s0_338, __p1_338); \ |
| 49166 | 49044 | __ret_338; \ |
| 49167 | 49045 | }) |
| 49168 | 49046 | #else |
| 49169 | | #define vcopyq_laneq_u16(__p0_339, __p1_339, __p2_339, __p3_339) __extension__ ({ \ |
| 49170 | | uint16x8_t __ret_339; \ |
| 49171 | | uint16x8_t __s0_339 = __p0_339; \ |
| 49172 | | uint16x8_t __s2_339 = __p2_339; \ |
| 49173 | | uint16x8_t __rev0_339; __rev0_339 = __builtin_shufflevector(__s0_339, __s0_339, __lane_reverse_128_16); \ |
| 49174 | | uint16x8_t __rev2_339; __rev2_339 = __builtin_shufflevector(__s2_339, __s2_339, __lane_reverse_128_16); \ |
| 49175 | | __ret_339 = __noswap_vsetq_lane_u16(__noswap_vgetq_lane_u16(__rev2_339, __p3_339), __rev0_339, __p1_339); \ |
| 49176 | | __ret_339 = __builtin_shufflevector(__ret_339, __ret_339, __lane_reverse_128_16); \ |
| 49047 | #define vcopyq_laneq_f32(__p0_339, __p1_339, __p2_339, __p3_339) __extension__ ({ \ |
| 49048 | float32x4_t __ret_339; \ |
| 49049 | float32x4_t __s0_339 = __p0_339; \ |
| 49050 | float32x4_t __s2_339 = __p2_339; \ |
| 49051 | float32x4_t __rev0_339; __rev0_339 = __builtin_shufflevector(__s0_339, __s0_339, __lane_reverse_128_32); \ |
| 49052 | float32x4_t __rev2_339; __rev2_339 = __builtin_shufflevector(__s2_339, __s2_339, __lane_reverse_128_32); \ |
| 49053 | __ret_339 = __noswap_vsetq_lane_f32(__noswap_vgetq_lane_f32(__rev2_339, __p3_339), __rev0_339, __p1_339); \ |
| 49054 | __ret_339 = __builtin_shufflevector(__ret_339, __ret_339, __lane_reverse_128_32); \ |
| 49177 | 49055 | __ret_339; \ |
| 49178 | 49056 | }) |
| 49179 | 49057 | #endif |
| 49180 | 49058 | |
| 49181 | 49059 | #ifdef __LITTLE_ENDIAN__ |
| 49182 | | #define vcopyq_laneq_s8(__p0_340, __p1_340, __p2_340, __p3_340) __extension__ ({ \ |
| 49183 | | int8x16_t __ret_340; \ |
| 49184 | | int8x16_t __s0_340 = __p0_340; \ |
| 49185 | | int8x16_t __s2_340 = __p2_340; \ |
| 49186 | | __ret_340 = vsetq_lane_s8(vgetq_lane_s8(__s2_340, __p3_340), __s0_340, __p1_340); \ |
| 49060 | #define vcopyq_laneq_s32(__p0_340, __p1_340, __p2_340, __p3_340) __extension__ ({ \ |
| 49061 | int32x4_t __ret_340; \ |
| 49062 | int32x4_t __s0_340 = __p0_340; \ |
| 49063 | int32x4_t __s2_340 = __p2_340; \ |
| 49064 | __ret_340 = vsetq_lane_s32(vgetq_lane_s32(__s2_340, __p3_340), __s0_340, __p1_340); \ |
| 49187 | 49065 | __ret_340; \ |
| 49188 | 49066 | }) |
| 49189 | 49067 | #else |
| 49190 | | #define vcopyq_laneq_s8(__p0_341, __p1_341, __p2_341, __p3_341) __extension__ ({ \ |
| 49191 | | int8x16_t __ret_341; \ |
| 49192 | | int8x16_t __s0_341 = __p0_341; \ |
| 49193 | | int8x16_t __s2_341 = __p2_341; \ |
| 49194 | | int8x16_t __rev0_341; __rev0_341 = __builtin_shufflevector(__s0_341, __s0_341, __lane_reverse_128_8); \ |
| 49195 | | int8x16_t __rev2_341; __rev2_341 = __builtin_shufflevector(__s2_341, __s2_341, __lane_reverse_128_8); \ |
| 49196 | | __ret_341 = __noswap_vsetq_lane_s8(__noswap_vgetq_lane_s8(__rev2_341, __p3_341), __rev0_341, __p1_341); \ |
| 49197 | | __ret_341 = __builtin_shufflevector(__ret_341, __ret_341, __lane_reverse_128_8); \ |
| 49068 | #define vcopyq_laneq_s32(__p0_341, __p1_341, __p2_341, __p3_341) __extension__ ({ \ |
| 49069 | int32x4_t __ret_341; \ |
| 49070 | int32x4_t __s0_341 = __p0_341; \ |
| 49071 | int32x4_t __s2_341 = __p2_341; \ |
| 49072 | int32x4_t __rev0_341; __rev0_341 = __builtin_shufflevector(__s0_341, __s0_341, __lane_reverse_128_32); \ |
| 49073 | int32x4_t __rev2_341; __rev2_341 = __builtin_shufflevector(__s2_341, __s2_341, __lane_reverse_128_32); \ |
| 49074 | __ret_341 = __noswap_vsetq_lane_s32(__noswap_vgetq_lane_s32(__rev2_341, __p3_341), __rev0_341, __p1_341); \ |
| 49075 | __ret_341 = __builtin_shufflevector(__ret_341, __ret_341, __lane_reverse_128_32); \ |
| 49198 | 49076 | __ret_341; \ |
| 49199 | 49077 | }) |
| 49200 | 49078 | #endif |
| 49201 | 49079 | |
| 49202 | 49080 | #ifdef __LITTLE_ENDIAN__ |
| 49203 | | #define vcopyq_laneq_f32(__p0_342, __p1_342, __p2_342, __p3_342) __extension__ ({ \ |
| 49204 | | float32x4_t __ret_342; \ |
| 49205 | | float32x4_t __s0_342 = __p0_342; \ |
| 49206 | | float32x4_t __s2_342 = __p2_342; \ |
| 49207 | | __ret_342 = vsetq_lane_f32(vgetq_lane_f32(__s2_342, __p3_342), __s0_342, __p1_342); \ |
| 49081 | #define vcopyq_laneq_s64(__p0_342, __p1_342, __p2_342, __p3_342) __extension__ ({ \ |
| 49082 | int64x2_t __ret_342; \ |
| 49083 | int64x2_t __s0_342 = __p0_342; \ |
| 49084 | int64x2_t __s2_342 = __p2_342; \ |
| 49085 | __ret_342 = vsetq_lane_s64(vgetq_lane_s64(__s2_342, __p3_342), __s0_342, __p1_342); \ |
| 49208 | 49086 | __ret_342; \ |
| 49209 | 49087 | }) |
| 49210 | 49088 | #else |
| 49211 | | #define vcopyq_laneq_f32(__p0_343, __p1_343, __p2_343, __p3_343) __extension__ ({ \ |
| 49212 | | float32x4_t __ret_343; \ |
| 49213 | | float32x4_t __s0_343 = __p0_343; \ |
| 49214 | | float32x4_t __s2_343 = __p2_343; \ |
| 49215 | | float32x4_t __rev0_343; __rev0_343 = __builtin_shufflevector(__s0_343, __s0_343, __lane_reverse_128_32); \ |
| 49216 | | float32x4_t __rev2_343; __rev2_343 = __builtin_shufflevector(__s2_343, __s2_343, __lane_reverse_128_32); \ |
| 49217 | | __ret_343 = __noswap_vsetq_lane_f32(__noswap_vgetq_lane_f32(__rev2_343, __p3_343), __rev0_343, __p1_343); \ |
| 49218 | | __ret_343 = __builtin_shufflevector(__ret_343, __ret_343, __lane_reverse_128_32); \ |
| 49089 | #define vcopyq_laneq_s64(__p0_343, __p1_343, __p2_343, __p3_343) __extension__ ({ \ |
| 49090 | int64x2_t __ret_343; \ |
| 49091 | int64x2_t __s0_343 = __p0_343; \ |
| 49092 | int64x2_t __s2_343 = __p2_343; \ |
| 49093 | int64x2_t __rev0_343; __rev0_343 = __builtin_shufflevector(__s0_343, __s0_343, __lane_reverse_128_64); \ |
| 49094 | int64x2_t __rev2_343; __rev2_343 = __builtin_shufflevector(__s2_343, __s2_343, __lane_reverse_128_64); \ |
| 49095 | __ret_343 = __noswap_vsetq_lane_s64(__noswap_vgetq_lane_s64(__rev2_343, __p3_343), __rev0_343, __p1_343); \ |
| 49096 | __ret_343 = __builtin_shufflevector(__ret_343, __ret_343, __lane_reverse_128_64); \ |
| 49219 | 49097 | __ret_343; \ |
| 49220 | 49098 | }) |
| 49221 | 49099 | #endif |
| 49222 | 49100 | |
| 49223 | 49101 | #ifdef __LITTLE_ENDIAN__ |
| 49224 | | #define vcopyq_laneq_s32(__p0_344, __p1_344, __p2_344, __p3_344) __extension__ ({ \ |
| 49225 | | int32x4_t __ret_344; \ |
| 49226 | | int32x4_t __s0_344 = __p0_344; \ |
| 49227 | | int32x4_t __s2_344 = __p2_344; \ |
| 49228 | | __ret_344 = vsetq_lane_s32(vgetq_lane_s32(__s2_344, __p3_344), __s0_344, __p1_344); \ |
| 49102 | #define vcopyq_laneq_mf8(__p0_344, __p1_344, __p2_344, __p3_344) __extension__ ({ \ |
| 49103 | mfloat8x16_t __ret_344; \ |
| 49104 | mfloat8x16_t __s0_344 = __p0_344; \ |
| 49105 | mfloat8x16_t __s2_344 = __p2_344; \ |
| 49106 | __ret_344 = vsetq_lane_mf8(vgetq_lane_mf8(__s2_344, __p3_344), __s0_344, __p1_344); \ |
| 49229 | 49107 | __ret_344; \ |
| 49230 | 49108 | }) |
| 49231 | 49109 | #else |
| 49232 | | #define vcopyq_laneq_s32(__p0_345, __p1_345, __p2_345, __p3_345) __extension__ ({ \ |
| 49233 | | int32x4_t __ret_345; \ |
| 49234 | | int32x4_t __s0_345 = __p0_345; \ |
| 49235 | | int32x4_t __s2_345 = __p2_345; \ |
| 49236 | | int32x4_t __rev0_345; __rev0_345 = __builtin_shufflevector(__s0_345, __s0_345, __lane_reverse_128_32); \ |
| 49237 | | int32x4_t __rev2_345; __rev2_345 = __builtin_shufflevector(__s2_345, __s2_345, __lane_reverse_128_32); \ |
| 49238 | | __ret_345 = __noswap_vsetq_lane_s32(__noswap_vgetq_lane_s32(__rev2_345, __p3_345), __rev0_345, __p1_345); \ |
| 49239 | | __ret_345 = __builtin_shufflevector(__ret_345, __ret_345, __lane_reverse_128_32); \ |
| 49110 | #define vcopyq_laneq_mf8(__p0_345, __p1_345, __p2_345, __p3_345) __extension__ ({ \ |
| 49111 | mfloat8x16_t __ret_345; \ |
| 49112 | mfloat8x16_t __s0_345 = __p0_345; \ |
| 49113 | mfloat8x16_t __s2_345 = __p2_345; \ |
| 49114 | mfloat8x16_t __rev0_345; __rev0_345 = __builtin_shufflevector(__s0_345, __s0_345, __lane_reverse_128_8); \ |
| 49115 | mfloat8x16_t __rev2_345; __rev2_345 = __builtin_shufflevector(__s2_345, __s2_345, __lane_reverse_128_8); \ |
| 49116 | __ret_345 = __noswap_vsetq_lane_mf8(__noswap_vgetq_lane_mf8(__rev2_345, __p3_345), __rev0_345, __p1_345); \ |
| 49117 | __ret_345 = __builtin_shufflevector(__ret_345, __ret_345, __lane_reverse_128_8); \ |
| 49240 | 49118 | __ret_345; \ |
| 49241 | 49119 | }) |
| 49242 | 49120 | #endif |
| 49243 | 49121 | |
| 49244 | 49122 | #ifdef __LITTLE_ENDIAN__ |
| 49245 | | #define vcopyq_laneq_s64(__p0_346, __p1_346, __p2_346, __p3_346) __extension__ ({ \ |
| 49246 | | int64x2_t __ret_346; \ |
| 49247 | | int64x2_t __s0_346 = __p0_346; \ |
| 49248 | | int64x2_t __s2_346 = __p2_346; \ |
| 49249 | | __ret_346 = vsetq_lane_s64(vgetq_lane_s64(__s2_346, __p3_346), __s0_346, __p1_346); \ |
| 49123 | #define vcopyq_laneq_s16(__p0_346, __p1_346, __p2_346, __p3_346) __extension__ ({ \ |
| 49124 | int16x8_t __ret_346; \ |
| 49125 | int16x8_t __s0_346 = __p0_346; \ |
| 49126 | int16x8_t __s2_346 = __p2_346; \ |
| 49127 | __ret_346 = vsetq_lane_s16(vgetq_lane_s16(__s2_346, __p3_346), __s0_346, __p1_346); \ |
| 49250 | 49128 | __ret_346; \ |
| 49251 | 49129 | }) |
| 49252 | 49130 | #else |
| 49253 | | #define vcopyq_laneq_s64(__p0_347, __p1_347, __p2_347, __p3_347) __extension__ ({ \ |
| 49254 | | int64x2_t __ret_347; \ |
| 49255 | | int64x2_t __s0_347 = __p0_347; \ |
| 49256 | | int64x2_t __s2_347 = __p2_347; \ |
| 49257 | | int64x2_t __rev0_347; __rev0_347 = __builtin_shufflevector(__s0_347, __s0_347, __lane_reverse_128_64); \ |
| 49258 | | int64x2_t __rev2_347; __rev2_347 = __builtin_shufflevector(__s2_347, __s2_347, __lane_reverse_128_64); \ |
| 49259 | | __ret_347 = __noswap_vsetq_lane_s64(__noswap_vgetq_lane_s64(__rev2_347, __p3_347), __rev0_347, __p1_347); \ |
| 49260 | | __ret_347 = __builtin_shufflevector(__ret_347, __ret_347, __lane_reverse_128_64); \ |
| 49131 | #define vcopyq_laneq_s16(__p0_347, __p1_347, __p2_347, __p3_347) __extension__ ({ \ |
| 49132 | int16x8_t __ret_347; \ |
| 49133 | int16x8_t __s0_347 = __p0_347; \ |
| 49134 | int16x8_t __s2_347 = __p2_347; \ |
| 49135 | int16x8_t __rev0_347; __rev0_347 = __builtin_shufflevector(__s0_347, __s0_347, __lane_reverse_128_16); \ |
| 49136 | int16x8_t __rev2_347; __rev2_347 = __builtin_shufflevector(__s2_347, __s2_347, __lane_reverse_128_16); \ |
| 49137 | __ret_347 = __noswap_vsetq_lane_s16(__noswap_vgetq_lane_s16(__rev2_347, __p3_347), __rev0_347, __p1_347); \ |
| 49138 | __ret_347 = __builtin_shufflevector(__ret_347, __ret_347, __lane_reverse_128_16); \ |
| 49261 | 49139 | __ret_347; \ |
| 49262 | 49140 | }) |
| 49263 | 49141 | #endif |
| 49264 | 49142 | |
| 49265 | 49143 | #ifdef __LITTLE_ENDIAN__ |
| 49266 | | #define vcopyq_laneq_mf8(__p0_348, __p1_348, __p2_348, __p3_348) __extension__ ({ \ |
| 49267 | | mfloat8x16_t __ret_348; \ |
| 49268 | | mfloat8x16_t __s0_348 = __p0_348; \ |
| 49269 | | mfloat8x16_t __s2_348 = __p2_348; \ |
| 49270 | | __ret_348 = vsetq_lane_mf8(vgetq_lane_mf8(__s2_348, __p3_348), __s0_348, __p1_348); \ |
| 49144 | #define vcopyq_laneq_bf16(__p0_348, __p1_348, __p2_348, __p3_348) __extension__ ({ \ |
| 49145 | bfloat16x8_t __ret_348; \ |
| 49146 | bfloat16x8_t __s0_348 = __p0_348; \ |
| 49147 | bfloat16x8_t __s2_348 = __p2_348; \ |
| 49148 | __ret_348 = vsetq_lane_bf16(vgetq_lane_bf16(__s2_348, __p3_348), __s0_348, __p1_348); \ |
| 49271 | 49149 | __ret_348; \ |
| 49272 | 49150 | }) |
| 49273 | 49151 | #else |
| 49274 | | #define vcopyq_laneq_mf8(__p0_349, __p1_349, __p2_349, __p3_349) __extension__ ({ \ |
| 49275 | | mfloat8x16_t __ret_349; \ |
| 49276 | | mfloat8x16_t __s0_349 = __p0_349; \ |
| 49277 | | mfloat8x16_t __s2_349 = __p2_349; \ |
| 49278 | | mfloat8x16_t __rev0_349; __rev0_349 = __builtin_shufflevector(__s0_349, __s0_349, __lane_reverse_128_8); \ |
| 49279 | | mfloat8x16_t __rev2_349; __rev2_349 = __builtin_shufflevector(__s2_349, __s2_349, __lane_reverse_128_8); \ |
| 49280 | | __ret_349 = __noswap_vsetq_lane_mf8(__noswap_vgetq_lane_mf8(__rev2_349, __p3_349), __rev0_349, __p1_349); \ |
| 49281 | | __ret_349 = __builtin_shufflevector(__ret_349, __ret_349, __lane_reverse_128_8); \ |
| 49152 | #define vcopyq_laneq_bf16(__p0_349, __p1_349, __p2_349, __p3_349) __extension__ ({ \ |
| 49153 | bfloat16x8_t __ret_349; \ |
| 49154 | bfloat16x8_t __s0_349 = __p0_349; \ |
| 49155 | bfloat16x8_t __s2_349 = __p2_349; \ |
| 49156 | bfloat16x8_t __rev0_349; __rev0_349 = __builtin_shufflevector(__s0_349, __s0_349, __lane_reverse_128_16); \ |
| 49157 | bfloat16x8_t __rev2_349; __rev2_349 = __builtin_shufflevector(__s2_349, __s2_349, __lane_reverse_128_16); \ |
| 49158 | __ret_349 = __noswap_vsetq_lane_bf16(__noswap_vgetq_lane_bf16(__rev2_349, __p3_349), __rev0_349, __p1_349); \ |
| 49159 | __ret_349 = __builtin_shufflevector(__ret_349, __ret_349, __lane_reverse_128_16); \ |
| 49282 | 49160 | __ret_349; \ |
| 49283 | 49161 | }) |
| 49284 | 49162 | #endif |
| 49285 | 49163 | |
| 49286 | 49164 | #ifdef __LITTLE_ENDIAN__ |
| 49287 | | #define vcopyq_laneq_s16(__p0_350, __p1_350, __p2_350, __p3_350) __extension__ ({ \ |
| 49288 | | int16x8_t __ret_350; \ |
| 49289 | | int16x8_t __s0_350 = __p0_350; \ |
| 49290 | | int16x8_t __s2_350 = __p2_350; \ |
| 49291 | | __ret_350 = vsetq_lane_s16(vgetq_lane_s16(__s2_350, __p3_350), __s0_350, __p1_350); \ |
| 49165 | #define vcopy_laneq_p8(__p0_350, __p1_350, __p2_350, __p3_350) __extension__ ({ \ |
| 49166 | poly8x8_t __ret_350; \ |
| 49167 | poly8x8_t __s0_350 = __p0_350; \ |
| 49168 | poly8x16_t __s2_350 = __p2_350; \ |
| 49169 | __ret_350 = vset_lane_p8(vgetq_lane_p8(__s2_350, __p3_350), __s0_350, __p1_350); \ |
| 49292 | 49170 | __ret_350; \ |
| 49293 | 49171 | }) |
| 49294 | 49172 | #else |
| 49295 | | #define vcopyq_laneq_s16(__p0_351, __p1_351, __p2_351, __p3_351) __extension__ ({ \ |
| 49296 | | int16x8_t __ret_351; \ |
| 49297 | | int16x8_t __s0_351 = __p0_351; \ |
| 49298 | | int16x8_t __s2_351 = __p2_351; \ |
| 49299 | | int16x8_t __rev0_351; __rev0_351 = __builtin_shufflevector(__s0_351, __s0_351, __lane_reverse_128_16); \ |
| 49300 | | int16x8_t __rev2_351; __rev2_351 = __builtin_shufflevector(__s2_351, __s2_351, __lane_reverse_128_16); \ |
| 49301 | | __ret_351 = __noswap_vsetq_lane_s16(__noswap_vgetq_lane_s16(__rev2_351, __p3_351), __rev0_351, __p1_351); \ |
| 49302 | | __ret_351 = __builtin_shufflevector(__ret_351, __ret_351, __lane_reverse_128_16); \ |
| 49173 | #define vcopy_laneq_p8(__p0_351, __p1_351, __p2_351, __p3_351) __extension__ ({ \ |
| 49174 | poly8x8_t __ret_351; \ |
| 49175 | poly8x8_t __s0_351 = __p0_351; \ |
| 49176 | poly8x16_t __s2_351 = __p2_351; \ |
| 49177 | poly8x8_t __rev0_351; __rev0_351 = __builtin_shufflevector(__s0_351, __s0_351, __lane_reverse_64_8); \ |
| 49178 | poly8x16_t __rev2_351; __rev2_351 = __builtin_shufflevector(__s2_351, __s2_351, __lane_reverse_128_8); \ |
| 49179 | __ret_351 = __noswap_vset_lane_p8(__noswap_vgetq_lane_p8(__rev2_351, __p3_351), __rev0_351, __p1_351); \ |
| 49180 | __ret_351 = __builtin_shufflevector(__ret_351, __ret_351, __lane_reverse_64_8); \ |
| 49303 | 49181 | __ret_351; \ |
| 49304 | 49182 | }) |
| 49305 | 49183 | #endif |
| 49306 | 49184 | |
| 49307 | 49185 | #ifdef __LITTLE_ENDIAN__ |
| 49308 | | #define vcopy_laneq_p8(__p0_352, __p1_352, __p2_352, __p3_352) __extension__ ({ \ |
| 49309 | | poly8x8_t __ret_352; \ |
| 49310 | | poly8x8_t __s0_352 = __p0_352; \ |
| 49311 | | poly8x16_t __s2_352 = __p2_352; \ |
| 49312 | | __ret_352 = vset_lane_p8(vgetq_lane_p8(__s2_352, __p3_352), __s0_352, __p1_352); \ |
| 49186 | #define vcopy_laneq_p16(__p0_352, __p1_352, __p2_352, __p3_352) __extension__ ({ \ |
| 49187 | poly16x4_t __ret_352; \ |
| 49188 | poly16x4_t __s0_352 = __p0_352; \ |
| 49189 | poly16x8_t __s2_352 = __p2_352; \ |
| 49190 | __ret_352 = vset_lane_p16(vgetq_lane_p16(__s2_352, __p3_352), __s0_352, __p1_352); \ |
| 49313 | 49191 | __ret_352; \ |
| 49314 | 49192 | }) |
| 49315 | 49193 | #else |
| 49316 | | #define vcopy_laneq_p8(__p0_353, __p1_353, __p2_353, __p3_353) __extension__ ({ \ |
| 49317 | | poly8x8_t __ret_353; \ |
| 49318 | | poly8x8_t __s0_353 = __p0_353; \ |
| 49319 | | poly8x16_t __s2_353 = __p2_353; \ |
| 49320 | | poly8x8_t __rev0_353; __rev0_353 = __builtin_shufflevector(__s0_353, __s0_353, __lane_reverse_64_8); \ |
| 49321 | | poly8x16_t __rev2_353; __rev2_353 = __builtin_shufflevector(__s2_353, __s2_353, __lane_reverse_128_8); \ |
| 49322 | | __ret_353 = __noswap_vset_lane_p8(__noswap_vgetq_lane_p8(__rev2_353, __p3_353), __rev0_353, __p1_353); \ |
| 49323 | | __ret_353 = __builtin_shufflevector(__ret_353, __ret_353, __lane_reverse_64_8); \ |
| 49194 | #define vcopy_laneq_p16(__p0_353, __p1_353, __p2_353, __p3_353) __extension__ ({ \ |
| 49195 | poly16x4_t __ret_353; \ |
| 49196 | poly16x4_t __s0_353 = __p0_353; \ |
| 49197 | poly16x8_t __s2_353 = __p2_353; \ |
| 49198 | poly16x4_t __rev0_353; __rev0_353 = __builtin_shufflevector(__s0_353, __s0_353, __lane_reverse_64_16); \ |
| 49199 | poly16x8_t __rev2_353; __rev2_353 = __builtin_shufflevector(__s2_353, __s2_353, __lane_reverse_128_16); \ |
| 49200 | __ret_353 = __noswap_vset_lane_p16(__noswap_vgetq_lane_p16(__rev2_353, __p3_353), __rev0_353, __p1_353); \ |
| 49201 | __ret_353 = __builtin_shufflevector(__ret_353, __ret_353, __lane_reverse_64_16); \ |
| 49324 | 49202 | __ret_353; \ |
| 49325 | 49203 | }) |
| 49326 | 49204 | #endif |
| 49327 | 49205 | |
| 49328 | 49206 | #ifdef __LITTLE_ENDIAN__ |
| 49329 | | #define vcopy_laneq_p16(__p0_354, __p1_354, __p2_354, __p3_354) __extension__ ({ \ |
| 49330 | | poly16x4_t __ret_354; \ |
| 49331 | | poly16x4_t __s0_354 = __p0_354; \ |
| 49332 | | poly16x8_t __s2_354 = __p2_354; \ |
| 49333 | | __ret_354 = vset_lane_p16(vgetq_lane_p16(__s2_354, __p3_354), __s0_354, __p1_354); \ |
| 49207 | #define vcopy_laneq_u8(__p0_354, __p1_354, __p2_354, __p3_354) __extension__ ({ \ |
| 49208 | uint8x8_t __ret_354; \ |
| 49209 | uint8x8_t __s0_354 = __p0_354; \ |
| 49210 | uint8x16_t __s2_354 = __p2_354; \ |
| 49211 | __ret_354 = vset_lane_u8(vgetq_lane_u8(__s2_354, __p3_354), __s0_354, __p1_354); \ |
| 49334 | 49212 | __ret_354; \ |
| 49335 | 49213 | }) |
| 49336 | 49214 | #else |
| 49337 | | #define vcopy_laneq_p16(__p0_355, __p1_355, __p2_355, __p3_355) __extension__ ({ \ |
| 49338 | | poly16x4_t __ret_355; \ |
| 49339 | | poly16x4_t __s0_355 = __p0_355; \ |
| 49340 | | poly16x8_t __s2_355 = __p2_355; \ |
| 49341 | | poly16x4_t __rev0_355; __rev0_355 = __builtin_shufflevector(__s0_355, __s0_355, __lane_reverse_64_16); \ |
| 49342 | | poly16x8_t __rev2_355; __rev2_355 = __builtin_shufflevector(__s2_355, __s2_355, __lane_reverse_128_16); \ |
| 49343 | | __ret_355 = __noswap_vset_lane_p16(__noswap_vgetq_lane_p16(__rev2_355, __p3_355), __rev0_355, __p1_355); \ |
| 49344 | | __ret_355 = __builtin_shufflevector(__ret_355, __ret_355, __lane_reverse_64_16); \ |
| 49215 | #define vcopy_laneq_u8(__p0_355, __p1_355, __p2_355, __p3_355) __extension__ ({ \ |
| 49216 | uint8x8_t __ret_355; \ |
| 49217 | uint8x8_t __s0_355 = __p0_355; \ |
| 49218 | uint8x16_t __s2_355 = __p2_355; \ |
| 49219 | uint8x8_t __rev0_355; __rev0_355 = __builtin_shufflevector(__s0_355, __s0_355, __lane_reverse_64_8); \ |
| 49220 | uint8x16_t __rev2_355; __rev2_355 = __builtin_shufflevector(__s2_355, __s2_355, __lane_reverse_128_8); \ |
| 49221 | __ret_355 = __noswap_vset_lane_u8(__noswap_vgetq_lane_u8(__rev2_355, __p3_355), __rev0_355, __p1_355); \ |
| 49222 | __ret_355 = __builtin_shufflevector(__ret_355, __ret_355, __lane_reverse_64_8); \ |
| 49345 | 49223 | __ret_355; \ |
| 49346 | 49224 | }) |
| 49347 | 49225 | #endif |
| 49348 | 49226 | |
| 49349 | 49227 | #ifdef __LITTLE_ENDIAN__ |
| 49350 | | #define vcopy_laneq_u8(__p0_356, __p1_356, __p2_356, __p3_356) __extension__ ({ \ |
| 49351 | | uint8x8_t __ret_356; \ |
| 49352 | | uint8x8_t __s0_356 = __p0_356; \ |
| 49353 | | uint8x16_t __s2_356 = __p2_356; \ |
| 49354 | | __ret_356 = vset_lane_u8(vgetq_lane_u8(__s2_356, __p3_356), __s0_356, __p1_356); \ |
| 49228 | #define vcopy_laneq_u32(__p0_356, __p1_356, __p2_356, __p3_356) __extension__ ({ \ |
| 49229 | uint32x2_t __ret_356; \ |
| 49230 | uint32x2_t __s0_356 = __p0_356; \ |
| 49231 | uint32x4_t __s2_356 = __p2_356; \ |
| 49232 | __ret_356 = vset_lane_u32(vgetq_lane_u32(__s2_356, __p3_356), __s0_356, __p1_356); \ |
| 49355 | 49233 | __ret_356; \ |
| 49356 | 49234 | }) |
| 49357 | 49235 | #else |
| 49358 | | #define vcopy_laneq_u8(__p0_357, __p1_357, __p2_357, __p3_357) __extension__ ({ \ |
| 49359 | | uint8x8_t __ret_357; \ |
| 49360 | | uint8x8_t __s0_357 = __p0_357; \ |
| 49361 | | uint8x16_t __s2_357 = __p2_357; \ |
| 49362 | | uint8x8_t __rev0_357; __rev0_357 = __builtin_shufflevector(__s0_357, __s0_357, __lane_reverse_64_8); \ |
| 49363 | | uint8x16_t __rev2_357; __rev2_357 = __builtin_shufflevector(__s2_357, __s2_357, __lane_reverse_128_8); \ |
| 49364 | | __ret_357 = __noswap_vset_lane_u8(__noswap_vgetq_lane_u8(__rev2_357, __p3_357), __rev0_357, __p1_357); \ |
| 49365 | | __ret_357 = __builtin_shufflevector(__ret_357, __ret_357, __lane_reverse_64_8); \ |
| 49236 | #define vcopy_laneq_u32(__p0_357, __p1_357, __p2_357, __p3_357) __extension__ ({ \ |
| 49237 | uint32x2_t __ret_357; \ |
| 49238 | uint32x2_t __s0_357 = __p0_357; \ |
| 49239 | uint32x4_t __s2_357 = __p2_357; \ |
| 49240 | uint32x2_t __rev0_357; __rev0_357 = __builtin_shufflevector(__s0_357, __s0_357, __lane_reverse_64_32); \ |
| 49241 | uint32x4_t __rev2_357; __rev2_357 = __builtin_shufflevector(__s2_357, __s2_357, __lane_reverse_128_32); \ |
| 49242 | __ret_357 = __noswap_vset_lane_u32(__noswap_vgetq_lane_u32(__rev2_357, __p3_357), __rev0_357, __p1_357); \ |
| 49243 | __ret_357 = __builtin_shufflevector(__ret_357, __ret_357, __lane_reverse_64_32); \ |
| 49366 | 49244 | __ret_357; \ |
| 49367 | 49245 | }) |
| 49368 | 49246 | #endif |
| 49369 | 49247 | |
| 49370 | 49248 | #ifdef __LITTLE_ENDIAN__ |
| 49371 | | #define vcopy_laneq_u32(__p0_358, __p1_358, __p2_358, __p3_358) __extension__ ({ \ |
| 49372 | | uint32x2_t __ret_358; \ |
| 49373 | | uint32x2_t __s0_358 = __p0_358; \ |
| 49374 | | uint32x4_t __s2_358 = __p2_358; \ |
| 49375 | | __ret_358 = vset_lane_u32(vgetq_lane_u32(__s2_358, __p3_358), __s0_358, __p1_358); \ |
| 49249 | #define vcopy_laneq_u64(__p0_358, __p1_358, __p2_358, __p3_358) __extension__ ({ \ |
| 49250 | uint64x1_t __ret_358; \ |
| 49251 | uint64x1_t __s0_358 = __p0_358; \ |
| 49252 | uint64x2_t __s2_358 = __p2_358; \ |
| 49253 | __ret_358 = vset_lane_u64(vgetq_lane_u64(__s2_358, __p3_358), __s0_358, __p1_358); \ |
| 49376 | 49254 | __ret_358; \ |
| 49377 | 49255 | }) |
| 49378 | 49256 | #else |
| 49379 | | #define vcopy_laneq_u32(__p0_359, __p1_359, __p2_359, __p3_359) __extension__ ({ \ |
| 49380 | | uint32x2_t __ret_359; \ |
| 49381 | | uint32x2_t __s0_359 = __p0_359; \ |
| 49382 | | uint32x4_t __s2_359 = __p2_359; \ |
| 49383 | | uint32x2_t __rev0_359; __rev0_359 = __builtin_shufflevector(__s0_359, __s0_359, __lane_reverse_64_32); \ |
| 49384 | | uint32x4_t __rev2_359; __rev2_359 = __builtin_shufflevector(__s2_359, __s2_359, __lane_reverse_128_32); \ |
| 49385 | | __ret_359 = __noswap_vset_lane_u32(__noswap_vgetq_lane_u32(__rev2_359, __p3_359), __rev0_359, __p1_359); \ |
| 49386 | | __ret_359 = __builtin_shufflevector(__ret_359, __ret_359, __lane_reverse_64_32); \ |
| 49257 | #define vcopy_laneq_u64(__p0_359, __p1_359, __p2_359, __p3_359) __extension__ ({ \ |
| 49258 | uint64x1_t __ret_359; \ |
| 49259 | uint64x1_t __s0_359 = __p0_359; \ |
| 49260 | uint64x2_t __s2_359 = __p2_359; \ |
| 49261 | uint64x2_t __rev2_359; __rev2_359 = __builtin_shufflevector(__s2_359, __s2_359, __lane_reverse_128_64); \ |
| 49262 | __ret_359 = vset_lane_u64(__noswap_vgetq_lane_u64(__rev2_359, __p3_359), __s0_359, __p1_359); \ |
| 49387 | 49263 | __ret_359; \ |
| 49388 | 49264 | }) |
| 49389 | 49265 | #endif |
| 49390 | 49266 | |
| 49391 | 49267 | #ifdef __LITTLE_ENDIAN__ |
| 49392 | | #define vcopy_laneq_u64(__p0_360, __p1_360, __p2_360, __p3_360) __extension__ ({ \ |
| 49393 | | uint64x1_t __ret_360; \ |
| 49394 | | uint64x1_t __s0_360 = __p0_360; \ |
| 49395 | | uint64x2_t __s2_360 = __p2_360; \ |
| 49396 | | __ret_360 = vset_lane_u64(vgetq_lane_u64(__s2_360, __p3_360), __s0_360, __p1_360); \ |
| 49268 | #define vcopy_laneq_u16(__p0_360, __p1_360, __p2_360, __p3_360) __extension__ ({ \ |
| 49269 | uint16x4_t __ret_360; \ |
| 49270 | uint16x4_t __s0_360 = __p0_360; \ |
| 49271 | uint16x8_t __s2_360 = __p2_360; \ |
| 49272 | __ret_360 = vset_lane_u16(vgetq_lane_u16(__s2_360, __p3_360), __s0_360, __p1_360); \ |
| 49397 | 49273 | __ret_360; \ |
| 49398 | 49274 | }) |
| 49399 | 49275 | #else |
| 49400 | | #define vcopy_laneq_u64(__p0_361, __p1_361, __p2_361, __p3_361) __extension__ ({ \ |
| 49401 | | uint64x1_t __ret_361; \ |
| 49402 | | uint64x1_t __s0_361 = __p0_361; \ |
| 49403 | | uint64x2_t __s2_361 = __p2_361; \ |
| 49404 | | uint64x2_t __rev2_361; __rev2_361 = __builtin_shufflevector(__s2_361, __s2_361, __lane_reverse_128_64); \ |
| 49405 | | __ret_361 = vset_lane_u64(__noswap_vgetq_lane_u64(__rev2_361, __p3_361), __s0_361, __p1_361); \ |
| 49276 | #define vcopy_laneq_u16(__p0_361, __p1_361, __p2_361, __p3_361) __extension__ ({ \ |
| 49277 | uint16x4_t __ret_361; \ |
| 49278 | uint16x4_t __s0_361 = __p0_361; \ |
| 49279 | uint16x8_t __s2_361 = __p2_361; \ |
| 49280 | uint16x4_t __rev0_361; __rev0_361 = __builtin_shufflevector(__s0_361, __s0_361, __lane_reverse_64_16); \ |
| 49281 | uint16x8_t __rev2_361; __rev2_361 = __builtin_shufflevector(__s2_361, __s2_361, __lane_reverse_128_16); \ |
| 49282 | __ret_361 = __noswap_vset_lane_u16(__noswap_vgetq_lane_u16(__rev2_361, __p3_361), __rev0_361, __p1_361); \ |
| 49283 | __ret_361 = __builtin_shufflevector(__ret_361, __ret_361, __lane_reverse_64_16); \ |
| 49406 | 49284 | __ret_361; \ |
| 49407 | 49285 | }) |
| 49408 | 49286 | #endif |
| 49409 | 49287 | |
| 49410 | 49288 | #ifdef __LITTLE_ENDIAN__ |
| 49411 | | #define vcopy_laneq_u16(__p0_362, __p1_362, __p2_362, __p3_362) __extension__ ({ \ |
| 49412 | | uint16x4_t __ret_362; \ |
| 49413 | | uint16x4_t __s0_362 = __p0_362; \ |
| 49414 | | uint16x8_t __s2_362 = __p2_362; \ |
| 49415 | | __ret_362 = vset_lane_u16(vgetq_lane_u16(__s2_362, __p3_362), __s0_362, __p1_362); \ |
| 49289 | #define vcopy_laneq_s8(__p0_362, __p1_362, __p2_362, __p3_362) __extension__ ({ \ |
| 49290 | int8x8_t __ret_362; \ |
| 49291 | int8x8_t __s0_362 = __p0_362; \ |
| 49292 | int8x16_t __s2_362 = __p2_362; \ |
| 49293 | __ret_362 = vset_lane_s8(vgetq_lane_s8(__s2_362, __p3_362), __s0_362, __p1_362); \ |
| 49416 | 49294 | __ret_362; \ |
| 49417 | 49295 | }) |
| 49418 | 49296 | #else |
| 49419 | | #define vcopy_laneq_u16(__p0_363, __p1_363, __p2_363, __p3_363) __extension__ ({ \ |
| 49420 | | uint16x4_t __ret_363; \ |
| 49421 | | uint16x4_t __s0_363 = __p0_363; \ |
| 49422 | | uint16x8_t __s2_363 = __p2_363; \ |
| 49423 | | uint16x4_t __rev0_363; __rev0_363 = __builtin_shufflevector(__s0_363, __s0_363, __lane_reverse_64_16); \ |
| 49424 | | uint16x8_t __rev2_363; __rev2_363 = __builtin_shufflevector(__s2_363, __s2_363, __lane_reverse_128_16); \ |
| 49425 | | __ret_363 = __noswap_vset_lane_u16(__noswap_vgetq_lane_u16(__rev2_363, __p3_363), __rev0_363, __p1_363); \ |
| 49426 | | __ret_363 = __builtin_shufflevector(__ret_363, __ret_363, __lane_reverse_64_16); \ |
| 49297 | #define vcopy_laneq_s8(__p0_363, __p1_363, __p2_363, __p3_363) __extension__ ({ \ |
| 49298 | int8x8_t __ret_363; \ |
| 49299 | int8x8_t __s0_363 = __p0_363; \ |
| 49300 | int8x16_t __s2_363 = __p2_363; \ |
| 49301 | int8x8_t __rev0_363; __rev0_363 = __builtin_shufflevector(__s0_363, __s0_363, __lane_reverse_64_8); \ |
| 49302 | int8x16_t __rev2_363; __rev2_363 = __builtin_shufflevector(__s2_363, __s2_363, __lane_reverse_128_8); \ |
| 49303 | __ret_363 = __noswap_vset_lane_s8(__noswap_vgetq_lane_s8(__rev2_363, __p3_363), __rev0_363, __p1_363); \ |
| 49304 | __ret_363 = __builtin_shufflevector(__ret_363, __ret_363, __lane_reverse_64_8); \ |
| 49427 | 49305 | __ret_363; \ |
| 49428 | 49306 | }) |
| 49429 | 49307 | #endif |
| 49430 | 49308 | |
| 49431 | 49309 | #ifdef __LITTLE_ENDIAN__ |
| 49432 | | #define vcopy_laneq_s8(__p0_364, __p1_364, __p2_364, __p3_364) __extension__ ({ \ |
| 49433 | | int8x8_t __ret_364; \ |
| 49434 | | int8x8_t __s0_364 = __p0_364; \ |
| 49435 | | int8x16_t __s2_364 = __p2_364; \ |
| 49436 | | __ret_364 = vset_lane_s8(vgetq_lane_s8(__s2_364, __p3_364), __s0_364, __p1_364); \ |
| 49310 | #define vcopy_laneq_f32(__p0_364, __p1_364, __p2_364, __p3_364) __extension__ ({ \ |
| 49311 | float32x2_t __ret_364; \ |
| 49312 | float32x2_t __s0_364 = __p0_364; \ |
| 49313 | float32x4_t __s2_364 = __p2_364; \ |
| 49314 | __ret_364 = vset_lane_f32(vgetq_lane_f32(__s2_364, __p3_364), __s0_364, __p1_364); \ |
| 49437 | 49315 | __ret_364; \ |
| 49438 | 49316 | }) |
| 49439 | 49317 | #else |
| 49440 | | #define vcopy_laneq_s8(__p0_365, __p1_365, __p2_365, __p3_365) __extension__ ({ \ |
| 49441 | | int8x8_t __ret_365; \ |
| 49442 | | int8x8_t __s0_365 = __p0_365; \ |
| 49443 | | int8x16_t __s2_365 = __p2_365; \ |
| 49444 | | int8x8_t __rev0_365; __rev0_365 = __builtin_shufflevector(__s0_365, __s0_365, __lane_reverse_64_8); \ |
| 49445 | | int8x16_t __rev2_365; __rev2_365 = __builtin_shufflevector(__s2_365, __s2_365, __lane_reverse_128_8); \ |
| 49446 | | __ret_365 = __noswap_vset_lane_s8(__noswap_vgetq_lane_s8(__rev2_365, __p3_365), __rev0_365, __p1_365); \ |
| 49447 | | __ret_365 = __builtin_shufflevector(__ret_365, __ret_365, __lane_reverse_64_8); \ |
| 49318 | #define vcopy_laneq_f32(__p0_365, __p1_365, __p2_365, __p3_365) __extension__ ({ \ |
| 49319 | float32x2_t __ret_365; \ |
| 49320 | float32x2_t __s0_365 = __p0_365; \ |
| 49321 | float32x4_t __s2_365 = __p2_365; \ |
| 49322 | float32x2_t __rev0_365; __rev0_365 = __builtin_shufflevector(__s0_365, __s0_365, __lane_reverse_64_32); \ |
| 49323 | float32x4_t __rev2_365; __rev2_365 = __builtin_shufflevector(__s2_365, __s2_365, __lane_reverse_128_32); \ |
| 49324 | __ret_365 = __noswap_vset_lane_f32(__noswap_vgetq_lane_f32(__rev2_365, __p3_365), __rev0_365, __p1_365); \ |
| 49325 | __ret_365 = __builtin_shufflevector(__ret_365, __ret_365, __lane_reverse_64_32); \ |
| 49448 | 49326 | __ret_365; \ |
| 49449 | 49327 | }) |
| 49450 | 49328 | #endif |
| 49451 | 49329 | |
| 49452 | 49330 | #ifdef __LITTLE_ENDIAN__ |
| 49453 | | #define vcopy_laneq_f32(__p0_366, __p1_366, __p2_366, __p3_366) __extension__ ({ \ |
| 49454 | | float32x2_t __ret_366; \ |
| 49455 | | float32x2_t __s0_366 = __p0_366; \ |
| 49456 | | float32x4_t __s2_366 = __p2_366; \ |
| 49457 | | __ret_366 = vset_lane_f32(vgetq_lane_f32(__s2_366, __p3_366), __s0_366, __p1_366); \ |
| 49331 | #define vcopy_laneq_s32(__p0_366, __p1_366, __p2_366, __p3_366) __extension__ ({ \ |
| 49332 | int32x2_t __ret_366; \ |
| 49333 | int32x2_t __s0_366 = __p0_366; \ |
| 49334 | int32x4_t __s2_366 = __p2_366; \ |
| 49335 | __ret_366 = vset_lane_s32(vgetq_lane_s32(__s2_366, __p3_366), __s0_366, __p1_366); \ |
| 49458 | 49336 | __ret_366; \ |
| 49459 | 49337 | }) |
| 49460 | 49338 | #else |
| 49461 | | #define vcopy_laneq_f32(__p0_367, __p1_367, __p2_367, __p3_367) __extension__ ({ \ |
| 49462 | | float32x2_t __ret_367; \ |
| 49463 | | float32x2_t __s0_367 = __p0_367; \ |
| 49464 | | float32x4_t __s2_367 = __p2_367; \ |
| 49465 | | float32x2_t __rev0_367; __rev0_367 = __builtin_shufflevector(__s0_367, __s0_367, __lane_reverse_64_32); \ |
| 49466 | | float32x4_t __rev2_367; __rev2_367 = __builtin_shufflevector(__s2_367, __s2_367, __lane_reverse_128_32); \ |
| 49467 | | __ret_367 = __noswap_vset_lane_f32(__noswap_vgetq_lane_f32(__rev2_367, __p3_367), __rev0_367, __p1_367); \ |
| 49339 | #define vcopy_laneq_s32(__p0_367, __p1_367, __p2_367, __p3_367) __extension__ ({ \ |
| 49340 | int32x2_t __ret_367; \ |
| 49341 | int32x2_t __s0_367 = __p0_367; \ |
| 49342 | int32x4_t __s2_367 = __p2_367; \ |
| 49343 | int32x2_t __rev0_367; __rev0_367 = __builtin_shufflevector(__s0_367, __s0_367, __lane_reverse_64_32); \ |
| 49344 | int32x4_t __rev2_367; __rev2_367 = __builtin_shufflevector(__s2_367, __s2_367, __lane_reverse_128_32); \ |
| 49345 | __ret_367 = __noswap_vset_lane_s32(__noswap_vgetq_lane_s32(__rev2_367, __p3_367), __rev0_367, __p1_367); \ |
| 49468 | 49346 | __ret_367 = __builtin_shufflevector(__ret_367, __ret_367, __lane_reverse_64_32); \ |
| 49469 | 49347 | __ret_367; \ |
| 49470 | 49348 | }) |
| 49471 | 49349 | #endif |
| 49472 | 49350 | |
| 49473 | 49351 | #ifdef __LITTLE_ENDIAN__ |
| 49474 | | #define vcopy_laneq_s32(__p0_368, __p1_368, __p2_368, __p3_368) __extension__ ({ \ |
| 49475 | | int32x2_t __ret_368; \ |
| 49476 | | int32x2_t __s0_368 = __p0_368; \ |
| 49477 | | int32x4_t __s2_368 = __p2_368; \ |
| 49478 | | __ret_368 = vset_lane_s32(vgetq_lane_s32(__s2_368, __p3_368), __s0_368, __p1_368); \ |
| 49352 | #define vcopy_laneq_s64(__p0_368, __p1_368, __p2_368, __p3_368) __extension__ ({ \ |
| 49353 | int64x1_t __ret_368; \ |
| 49354 | int64x1_t __s0_368 = __p0_368; \ |
| 49355 | int64x2_t __s2_368 = __p2_368; \ |
| 49356 | __ret_368 = vset_lane_s64(vgetq_lane_s64(__s2_368, __p3_368), __s0_368, __p1_368); \ |
| 49479 | 49357 | __ret_368; \ |
| 49480 | 49358 | }) |
| 49481 | 49359 | #else |
| 49482 | | #define vcopy_laneq_s32(__p0_369, __p1_369, __p2_369, __p3_369) __extension__ ({ \ |
| 49483 | | int32x2_t __ret_369; \ |
| 49484 | | int32x2_t __s0_369 = __p0_369; \ |
| 49485 | | int32x4_t __s2_369 = __p2_369; \ |
| 49486 | | int32x2_t __rev0_369; __rev0_369 = __builtin_shufflevector(__s0_369, __s0_369, __lane_reverse_64_32); \ |
| 49487 | | int32x4_t __rev2_369; __rev2_369 = __builtin_shufflevector(__s2_369, __s2_369, __lane_reverse_128_32); \ |
| 49488 | | __ret_369 = __noswap_vset_lane_s32(__noswap_vgetq_lane_s32(__rev2_369, __p3_369), __rev0_369, __p1_369); \ |
| 49489 | | __ret_369 = __builtin_shufflevector(__ret_369, __ret_369, __lane_reverse_64_32); \ |
| 49360 | #define vcopy_laneq_s64(__p0_369, __p1_369, __p2_369, __p3_369) __extension__ ({ \ |
| 49361 | int64x1_t __ret_369; \ |
| 49362 | int64x1_t __s0_369 = __p0_369; \ |
| 49363 | int64x2_t __s2_369 = __p2_369; \ |
| 49364 | int64x2_t __rev2_369; __rev2_369 = __builtin_shufflevector(__s2_369, __s2_369, __lane_reverse_128_64); \ |
| 49365 | __ret_369 = vset_lane_s64(__noswap_vgetq_lane_s64(__rev2_369, __p3_369), __s0_369, __p1_369); \ |
| 49490 | 49366 | __ret_369; \ |
| 49491 | 49367 | }) |
| 49492 | 49368 | #endif |
| 49493 | 49369 | |
| 49494 | 49370 | #ifdef __LITTLE_ENDIAN__ |
| 49495 | | #define vcopy_laneq_s64(__p0_370, __p1_370, __p2_370, __p3_370) __extension__ ({ \ |
| 49496 | | int64x1_t __ret_370; \ |
| 49497 | | int64x1_t __s0_370 = __p0_370; \ |
| 49498 | | int64x2_t __s2_370 = __p2_370; \ |
| 49499 | | __ret_370 = vset_lane_s64(vgetq_lane_s64(__s2_370, __p3_370), __s0_370, __p1_370); \ |
| 49371 | #define vcopy_laneq_mf8(__p0_370, __p1_370, __p2_370, __p3_370) __extension__ ({ \ |
| 49372 | mfloat8x8_t __ret_370; \ |
| 49373 | mfloat8x8_t __s0_370 = __p0_370; \ |
| 49374 | mfloat8x16_t __s2_370 = __p2_370; \ |
| 49375 | __ret_370 = vset_lane_mf8(vgetq_lane_mf8(__s2_370, __p3_370), __s0_370, __p1_370); \ |
| 49500 | 49376 | __ret_370; \ |
| 49501 | 49377 | }) |
| 49502 | 49378 | #else |
| 49503 | | #define vcopy_laneq_s64(__p0_371, __p1_371, __p2_371, __p3_371) __extension__ ({ \ |
| 49504 | | int64x1_t __ret_371; \ |
| 49505 | | int64x1_t __s0_371 = __p0_371; \ |
| 49506 | | int64x2_t __s2_371 = __p2_371; \ |
| 49507 | | int64x2_t __rev2_371; __rev2_371 = __builtin_shufflevector(__s2_371, __s2_371, __lane_reverse_128_64); \ |
| 49508 | | __ret_371 = vset_lane_s64(__noswap_vgetq_lane_s64(__rev2_371, __p3_371), __s0_371, __p1_371); \ |
| 49379 | #define vcopy_laneq_mf8(__p0_371, __p1_371, __p2_371, __p3_371) __extension__ ({ \ |
| 49380 | mfloat8x8_t __ret_371; \ |
| 49381 | mfloat8x8_t __s0_371 = __p0_371; \ |
| 49382 | mfloat8x16_t __s2_371 = __p2_371; \ |
| 49383 | mfloat8x8_t __rev0_371; __rev0_371 = __builtin_shufflevector(__s0_371, __s0_371, __lane_reverse_64_8); \ |
| 49384 | mfloat8x16_t __rev2_371; __rev2_371 = __builtin_shufflevector(__s2_371, __s2_371, __lane_reverse_128_8); \ |
| 49385 | __ret_371 = __noswap_vset_lane_mf8(__noswap_vgetq_lane_mf8(__rev2_371, __p3_371), __rev0_371, __p1_371); \ |
| 49386 | __ret_371 = __builtin_shufflevector(__ret_371, __ret_371, __lane_reverse_64_8); \ |
| 49509 | 49387 | __ret_371; \ |
| 49510 | 49388 | }) |
| 49511 | 49389 | #endif |
| 49512 | 49390 | |
| 49513 | 49391 | #ifdef __LITTLE_ENDIAN__ |
| 49514 | | #define vcopy_laneq_mf8(__p0_372, __p1_372, __p2_372, __p3_372) __extension__ ({ \ |
| 49515 | | mfloat8x8_t __ret_372; \ |
| 49516 | | mfloat8x8_t __s0_372 = __p0_372; \ |
| 49517 | | mfloat8x16_t __s2_372 = __p2_372; \ |
| 49518 | | __ret_372 = vset_lane_mf8(vgetq_lane_mf8(__s2_372, __p3_372), __s0_372, __p1_372); \ |
| 49392 | #define vcopy_laneq_s16(__p0_372, __p1_372, __p2_372, __p3_372) __extension__ ({ \ |
| 49393 | int16x4_t __ret_372; \ |
| 49394 | int16x4_t __s0_372 = __p0_372; \ |
| 49395 | int16x8_t __s2_372 = __p2_372; \ |
| 49396 | __ret_372 = vset_lane_s16(vgetq_lane_s16(__s2_372, __p3_372), __s0_372, __p1_372); \ |
| 49519 | 49397 | __ret_372; \ |
| 49520 | 49398 | }) |
| 49521 | 49399 | #else |
| 49522 | | #define vcopy_laneq_mf8(__p0_373, __p1_373, __p2_373, __p3_373) __extension__ ({ \ |
| 49523 | | mfloat8x8_t __ret_373; \ |
| 49524 | | mfloat8x8_t __s0_373 = __p0_373; \ |
| 49525 | | mfloat8x16_t __s2_373 = __p2_373; \ |
| 49526 | | mfloat8x8_t __rev0_373; __rev0_373 = __builtin_shufflevector(__s0_373, __s0_373, __lane_reverse_64_8); \ |
| 49527 | | mfloat8x16_t __rev2_373; __rev2_373 = __builtin_shufflevector(__s2_373, __s2_373, __lane_reverse_128_8); \ |
| 49528 | | __ret_373 = __noswap_vset_lane_mf8(__noswap_vgetq_lane_mf8(__rev2_373, __p3_373), __rev0_373, __p1_373); \ |
| 49529 | | __ret_373 = __builtin_shufflevector(__ret_373, __ret_373, __lane_reverse_64_8); \ |
| 49400 | #define vcopy_laneq_s16(__p0_373, __p1_373, __p2_373, __p3_373) __extension__ ({ \ |
| 49401 | int16x4_t __ret_373; \ |
| 49402 | int16x4_t __s0_373 = __p0_373; \ |
| 49403 | int16x8_t __s2_373 = __p2_373; \ |
| 49404 | int16x4_t __rev0_373; __rev0_373 = __builtin_shufflevector(__s0_373, __s0_373, __lane_reverse_64_16); \ |
| 49405 | int16x8_t __rev2_373; __rev2_373 = __builtin_shufflevector(__s2_373, __s2_373, __lane_reverse_128_16); \ |
| 49406 | __ret_373 = __noswap_vset_lane_s16(__noswap_vgetq_lane_s16(__rev2_373, __p3_373), __rev0_373, __p1_373); \ |
| 49407 | __ret_373 = __builtin_shufflevector(__ret_373, __ret_373, __lane_reverse_64_16); \ |
| 49530 | 49408 | __ret_373; \ |
| 49531 | 49409 | }) |
| 49532 | 49410 | #endif |
| 49533 | 49411 | |
| 49534 | 49412 | #ifdef __LITTLE_ENDIAN__ |
| 49535 | | #define vcopy_laneq_s16(__p0_374, __p1_374, __p2_374, __p3_374) __extension__ ({ \ |
| 49536 | | int16x4_t __ret_374; \ |
| 49537 | | int16x4_t __s0_374 = __p0_374; \ |
| 49538 | | int16x8_t __s2_374 = __p2_374; \ |
| 49539 | | __ret_374 = vset_lane_s16(vgetq_lane_s16(__s2_374, __p3_374), __s0_374, __p1_374); \ |
| 49413 | #define vcopy_laneq_bf16(__p0_374, __p1_374, __p2_374, __p3_374) __extension__ ({ \ |
| 49414 | bfloat16x4_t __ret_374; \ |
| 49415 | bfloat16x4_t __s0_374 = __p0_374; \ |
| 49416 | bfloat16x8_t __s2_374 = __p2_374; \ |
| 49417 | __ret_374 = vset_lane_bf16(vgetq_lane_bf16(__s2_374, __p3_374), __s0_374, __p1_374); \ |
| 49540 | 49418 | __ret_374; \ |
| 49541 | 49419 | }) |
| 49542 | 49420 | #else |
| 49543 | | #define vcopy_laneq_s16(__p0_375, __p1_375, __p2_375, __p3_375) __extension__ ({ \ |
| 49544 | | int16x4_t __ret_375; \ |
| 49545 | | int16x4_t __s0_375 = __p0_375; \ |
| 49546 | | int16x8_t __s2_375 = __p2_375; \ |
| 49547 | | int16x4_t __rev0_375; __rev0_375 = __builtin_shufflevector(__s0_375, __s0_375, __lane_reverse_64_16); \ |
| 49548 | | int16x8_t __rev2_375; __rev2_375 = __builtin_shufflevector(__s2_375, __s2_375, __lane_reverse_128_16); \ |
| 49549 | | __ret_375 = __noswap_vset_lane_s16(__noswap_vgetq_lane_s16(__rev2_375, __p3_375), __rev0_375, __p1_375); \ |
| 49421 | #define vcopy_laneq_bf16(__p0_375, __p1_375, __p2_375, __p3_375) __extension__ ({ \ |
| 49422 | bfloat16x4_t __ret_375; \ |
| 49423 | bfloat16x4_t __s0_375 = __p0_375; \ |
| 49424 | bfloat16x8_t __s2_375 = __p2_375; \ |
| 49425 | bfloat16x4_t __rev0_375; __rev0_375 = __builtin_shufflevector(__s0_375, __s0_375, __lane_reverse_64_16); \ |
| 49426 | bfloat16x8_t __rev2_375; __rev2_375 = __builtin_shufflevector(__s2_375, __s2_375, __lane_reverse_128_16); \ |
| 49427 | __ret_375 = __noswap_vset_lane_bf16(__noswap_vgetq_lane_bf16(__rev2_375, __p3_375), __rev0_375, __p1_375); \ |
| 49550 | 49428 | __ret_375 = __builtin_shufflevector(__ret_375, __ret_375, __lane_reverse_64_16); \ |
| 49551 | 49429 | __ret_375; \ |
| 49552 | 49430 | }) |
| ... | ... | @@ -64144,6 +64022,296 @@ __ai __attribute__((target("neon"))) int16x4_t vreinterpret_s16_mf8(mfloat8x8_t |
| 64144 | 64022 | __ret = __builtin_bit_cast(int16x4_t, __p0); |
| 64145 | 64023 | return __ret; |
| 64146 | 64024 | } |
| 64025 | __ai __attribute__((target("neon"))) poly8x8_t vreinterpret_p8_bf16(bfloat16x4_t __p0) { |
| 64026 | poly8x8_t __ret; |
| 64027 | __ret = __builtin_bit_cast(poly8x8_t, __p0); |
| 64028 | return __ret; |
| 64029 | } |
| 64030 | __ai __attribute__((target("neon"))) poly64x1_t vreinterpret_p64_bf16(bfloat16x4_t __p0) { |
| 64031 | poly64x1_t __ret; |
| 64032 | __ret = __builtin_bit_cast(poly64x1_t, __p0); |
| 64033 | return __ret; |
| 64034 | } |
| 64035 | __ai __attribute__((target("neon"))) poly16x4_t vreinterpret_p16_bf16(bfloat16x4_t __p0) { |
| 64036 | poly16x4_t __ret; |
| 64037 | __ret = __builtin_bit_cast(poly16x4_t, __p0); |
| 64038 | return __ret; |
| 64039 | } |
| 64040 | __ai __attribute__((target("neon"))) poly8x16_t vreinterpretq_p8_bf16(bfloat16x8_t __p0) { |
| 64041 | poly8x16_t __ret; |
| 64042 | __ret = __builtin_bit_cast(poly8x16_t, __p0); |
| 64043 | return __ret; |
| 64044 | } |
| 64045 | __ai __attribute__((target("neon"))) poly128_t vreinterpretq_p128_bf16(bfloat16x8_t __p0) { |
| 64046 | poly128_t __ret; |
| 64047 | __ret = __builtin_bit_cast(poly128_t, __p0); |
| 64048 | return __ret; |
| 64049 | } |
| 64050 | __ai __attribute__((target("neon"))) poly64x2_t vreinterpretq_p64_bf16(bfloat16x8_t __p0) { |
| 64051 | poly64x2_t __ret; |
| 64052 | __ret = __builtin_bit_cast(poly64x2_t, __p0); |
| 64053 | return __ret; |
| 64054 | } |
| 64055 | __ai __attribute__((target("neon"))) poly16x8_t vreinterpretq_p16_bf16(bfloat16x8_t __p0) { |
| 64056 | poly16x8_t __ret; |
| 64057 | __ret = __builtin_bit_cast(poly16x8_t, __p0); |
| 64058 | return __ret; |
| 64059 | } |
| 64060 | __ai __attribute__((target("neon"))) uint8x16_t vreinterpretq_u8_bf16(bfloat16x8_t __p0) { |
| 64061 | uint8x16_t __ret; |
| 64062 | __ret = __builtin_bit_cast(uint8x16_t, __p0); |
| 64063 | return __ret; |
| 64064 | } |
| 64065 | __ai __attribute__((target("neon"))) uint32x4_t vreinterpretq_u32_bf16(bfloat16x8_t __p0) { |
| 64066 | uint32x4_t __ret; |
| 64067 | __ret = __builtin_bit_cast(uint32x4_t, __p0); |
| 64068 | return __ret; |
| 64069 | } |
| 64070 | __ai __attribute__((target("neon"))) uint64x2_t vreinterpretq_u64_bf16(bfloat16x8_t __p0) { |
| 64071 | uint64x2_t __ret; |
| 64072 | __ret = __builtin_bit_cast(uint64x2_t, __p0); |
| 64073 | return __ret; |
| 64074 | } |
| 64075 | __ai __attribute__((target("neon"))) uint16x8_t vreinterpretq_u16_bf16(bfloat16x8_t __p0) { |
| 64076 | uint16x8_t __ret; |
| 64077 | __ret = __builtin_bit_cast(uint16x8_t, __p0); |
| 64078 | return __ret; |
| 64079 | } |
| 64080 | __ai __attribute__((target("neon"))) int8x16_t vreinterpretq_s8_bf16(bfloat16x8_t __p0) { |
| 64081 | int8x16_t __ret; |
| 64082 | __ret = __builtin_bit_cast(int8x16_t, __p0); |
| 64083 | return __ret; |
| 64084 | } |
| 64085 | __ai __attribute__((target("neon"))) float64x2_t vreinterpretq_f64_bf16(bfloat16x8_t __p0) { |
| 64086 | float64x2_t __ret; |
| 64087 | __ret = __builtin_bit_cast(float64x2_t, __p0); |
| 64088 | return __ret; |
| 64089 | } |
| 64090 | __ai __attribute__((target("neon"))) float32x4_t vreinterpretq_f32_bf16(bfloat16x8_t __p0) { |
| 64091 | float32x4_t __ret; |
| 64092 | __ret = __builtin_bit_cast(float32x4_t, __p0); |
| 64093 | return __ret; |
| 64094 | } |
| 64095 | __ai __attribute__((target("neon"))) float16x8_t vreinterpretq_f16_bf16(bfloat16x8_t __p0) { |
| 64096 | float16x8_t __ret; |
| 64097 | __ret = __builtin_bit_cast(float16x8_t, __p0); |
| 64098 | return __ret; |
| 64099 | } |
| 64100 | __ai __attribute__((target("neon"))) int32x4_t vreinterpretq_s32_bf16(bfloat16x8_t __p0) { |
| 64101 | int32x4_t __ret; |
| 64102 | __ret = __builtin_bit_cast(int32x4_t, __p0); |
| 64103 | return __ret; |
| 64104 | } |
| 64105 | __ai __attribute__((target("neon"))) int64x2_t vreinterpretq_s64_bf16(bfloat16x8_t __p0) { |
| 64106 | int64x2_t __ret; |
| 64107 | __ret = __builtin_bit_cast(int64x2_t, __p0); |
| 64108 | return __ret; |
| 64109 | } |
| 64110 | __ai __attribute__((target("neon"))) int16x8_t vreinterpretq_s16_bf16(bfloat16x8_t __p0) { |
| 64111 | int16x8_t __ret; |
| 64112 | __ret = __builtin_bit_cast(int16x8_t, __p0); |
| 64113 | return __ret; |
| 64114 | } |
| 64115 | __ai __attribute__((target("neon"))) uint8x8_t vreinterpret_u8_bf16(bfloat16x4_t __p0) { |
| 64116 | uint8x8_t __ret; |
| 64117 | __ret = __builtin_bit_cast(uint8x8_t, __p0); |
| 64118 | return __ret; |
| 64119 | } |
| 64120 | __ai __attribute__((target("neon"))) uint32x2_t vreinterpret_u32_bf16(bfloat16x4_t __p0) { |
| 64121 | uint32x2_t __ret; |
| 64122 | __ret = __builtin_bit_cast(uint32x2_t, __p0); |
| 64123 | return __ret; |
| 64124 | } |
| 64125 | __ai __attribute__((target("neon"))) uint64x1_t vreinterpret_u64_bf16(bfloat16x4_t __p0) { |
| 64126 | uint64x1_t __ret; |
| 64127 | __ret = __builtin_bit_cast(uint64x1_t, __p0); |
| 64128 | return __ret; |
| 64129 | } |
| 64130 | __ai __attribute__((target("neon"))) uint16x4_t vreinterpret_u16_bf16(bfloat16x4_t __p0) { |
| 64131 | uint16x4_t __ret; |
| 64132 | __ret = __builtin_bit_cast(uint16x4_t, __p0); |
| 64133 | return __ret; |
| 64134 | } |
| 64135 | __ai __attribute__((target("neon"))) int8x8_t vreinterpret_s8_bf16(bfloat16x4_t __p0) { |
| 64136 | int8x8_t __ret; |
| 64137 | __ret = __builtin_bit_cast(int8x8_t, __p0); |
| 64138 | return __ret; |
| 64139 | } |
| 64140 | __ai __attribute__((target("neon"))) float64x1_t vreinterpret_f64_bf16(bfloat16x4_t __p0) { |
| 64141 | float64x1_t __ret; |
| 64142 | __ret = __builtin_bit_cast(float64x1_t, __p0); |
| 64143 | return __ret; |
| 64144 | } |
| 64145 | __ai __attribute__((target("neon"))) float32x2_t vreinterpret_f32_bf16(bfloat16x4_t __p0) { |
| 64146 | float32x2_t __ret; |
| 64147 | __ret = __builtin_bit_cast(float32x2_t, __p0); |
| 64148 | return __ret; |
| 64149 | } |
| 64150 | __ai __attribute__((target("neon"))) float16x4_t vreinterpret_f16_bf16(bfloat16x4_t __p0) { |
| 64151 | float16x4_t __ret; |
| 64152 | __ret = __builtin_bit_cast(float16x4_t, __p0); |
| 64153 | return __ret; |
| 64154 | } |
| 64155 | __ai __attribute__((target("neon"))) int32x2_t vreinterpret_s32_bf16(bfloat16x4_t __p0) { |
| 64156 | int32x2_t __ret; |
| 64157 | __ret = __builtin_bit_cast(int32x2_t, __p0); |
| 64158 | return __ret; |
| 64159 | } |
| 64160 | __ai __attribute__((target("neon"))) int64x1_t vreinterpret_s64_bf16(bfloat16x4_t __p0) { |
| 64161 | int64x1_t __ret; |
| 64162 | __ret = __builtin_bit_cast(int64x1_t, __p0); |
| 64163 | return __ret; |
| 64164 | } |
| 64165 | __ai __attribute__((target("neon"))) int16x4_t vreinterpret_s16_bf16(bfloat16x4_t __p0) { |
| 64166 | int16x4_t __ret; |
| 64167 | __ret = __builtin_bit_cast(int16x4_t, __p0); |
| 64168 | return __ret; |
| 64169 | } |
| 64170 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p8(poly8x16_t __p0) { |
| 64171 | bfloat16x8_t __ret; |
| 64172 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64173 | return __ret; |
| 64174 | } |
| 64175 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p128(poly128_t __p0) { |
| 64176 | bfloat16x8_t __ret; |
| 64177 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64178 | return __ret; |
| 64179 | } |
| 64180 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p64(poly64x2_t __p0) { |
| 64181 | bfloat16x8_t __ret; |
| 64182 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64183 | return __ret; |
| 64184 | } |
| 64185 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_p16(poly16x8_t __p0) { |
| 64186 | bfloat16x8_t __ret; |
| 64187 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64188 | return __ret; |
| 64189 | } |
| 64190 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u8(uint8x16_t __p0) { |
| 64191 | bfloat16x8_t __ret; |
| 64192 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64193 | return __ret; |
| 64194 | } |
| 64195 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u32(uint32x4_t __p0) { |
| 64196 | bfloat16x8_t __ret; |
| 64197 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64198 | return __ret; |
| 64199 | } |
| 64200 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u64(uint64x2_t __p0) { |
| 64201 | bfloat16x8_t __ret; |
| 64202 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64203 | return __ret; |
| 64204 | } |
| 64205 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_u16(uint16x8_t __p0) { |
| 64206 | bfloat16x8_t __ret; |
| 64207 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64208 | return __ret; |
| 64209 | } |
| 64210 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s8(int8x16_t __p0) { |
| 64211 | bfloat16x8_t __ret; |
| 64212 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64213 | return __ret; |
| 64214 | } |
| 64215 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_f64(float64x2_t __p0) { |
| 64216 | bfloat16x8_t __ret; |
| 64217 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64218 | return __ret; |
| 64219 | } |
| 64220 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_f32(float32x4_t __p0) { |
| 64221 | bfloat16x8_t __ret; |
| 64222 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64223 | return __ret; |
| 64224 | } |
| 64225 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_f16(float16x8_t __p0) { |
| 64226 | bfloat16x8_t __ret; |
| 64227 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64228 | return __ret; |
| 64229 | } |
| 64230 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s32(int32x4_t __p0) { |
| 64231 | bfloat16x8_t __ret; |
| 64232 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64233 | return __ret; |
| 64234 | } |
| 64235 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s64(int64x2_t __p0) { |
| 64236 | bfloat16x8_t __ret; |
| 64237 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64238 | return __ret; |
| 64239 | } |
| 64240 | __ai __attribute__((target("neon"))) bfloat16x8_t vreinterpretq_bf16_s16(int16x8_t __p0) { |
| 64241 | bfloat16x8_t __ret; |
| 64242 | __ret = __builtin_bit_cast(bfloat16x8_t, __p0); |
| 64243 | return __ret; |
| 64244 | } |
| 64245 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_p8(poly8x8_t __p0) { |
| 64246 | bfloat16x4_t __ret; |
| 64247 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64248 | return __ret; |
| 64249 | } |
| 64250 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_p64(poly64x1_t __p0) { |
| 64251 | bfloat16x4_t __ret; |
| 64252 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64253 | return __ret; |
| 64254 | } |
| 64255 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_p16(poly16x4_t __p0) { |
| 64256 | bfloat16x4_t __ret; |
| 64257 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64258 | return __ret; |
| 64259 | } |
| 64260 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u8(uint8x8_t __p0) { |
| 64261 | bfloat16x4_t __ret; |
| 64262 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64263 | return __ret; |
| 64264 | } |
| 64265 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u32(uint32x2_t __p0) { |
| 64266 | bfloat16x4_t __ret; |
| 64267 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64268 | return __ret; |
| 64269 | } |
| 64270 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u64(uint64x1_t __p0) { |
| 64271 | bfloat16x4_t __ret; |
| 64272 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64273 | return __ret; |
| 64274 | } |
| 64275 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_u16(uint16x4_t __p0) { |
| 64276 | bfloat16x4_t __ret; |
| 64277 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64278 | return __ret; |
| 64279 | } |
| 64280 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s8(int8x8_t __p0) { |
| 64281 | bfloat16x4_t __ret; |
| 64282 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64283 | return __ret; |
| 64284 | } |
| 64285 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_f64(float64x1_t __p0) { |
| 64286 | bfloat16x4_t __ret; |
| 64287 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64288 | return __ret; |
| 64289 | } |
| 64290 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_f32(float32x2_t __p0) { |
| 64291 | bfloat16x4_t __ret; |
| 64292 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64293 | return __ret; |
| 64294 | } |
| 64295 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_f16(float16x4_t __p0) { |
| 64296 | bfloat16x4_t __ret; |
| 64297 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64298 | return __ret; |
| 64299 | } |
| 64300 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s32(int32x2_t __p0) { |
| 64301 | bfloat16x4_t __ret; |
| 64302 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64303 | return __ret; |
| 64304 | } |
| 64305 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s64(int64x1_t __p0) { |
| 64306 | bfloat16x4_t __ret; |
| 64307 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64308 | return __ret; |
| 64309 | } |
| 64310 | __ai __attribute__((target("neon"))) bfloat16x4_t vreinterpret_bf16_s16(int16x4_t __p0) { |
| 64311 | bfloat16x4_t __ret; |
| 64312 | __ret = __builtin_bit_cast(bfloat16x4_t, __p0); |
| 64313 | return __ret; |
| 64314 | } |
| 64147 | 64315 | __ai __attribute__((target("neon"))) uint64_t vrshld_u64(uint64_t __p0, int64_t __p1) { |
| 64148 | 64316 | uint64_t __ret; |
| 64149 | 64317 | __ret = __builtin_bit_cast(uint64_t, __builtin_neon_vrshld_u64(__p0, __p1)); |