| author | |
| committer | |
| log | a4d7b7edc1f44385e33b251bb78dbd589232aa64 |
| tree | 6b2816f574e8e1cf2653ec62789d2e3b3622ca95 |
| parent | 5c4bbd0657d52b1b579036b9ee32418e8d706966 |
4 files changed, 80 insertions(+), 80 deletions(-)
lib/include/arm_sve.h+28-28| ... | ... | @@ -6958,14 +6958,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_s64))) |
| 6958 | 6958 | svint64_t svrev_s64(svint64_t); |
| 6959 | 6959 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_s16))) |
| 6960 | 6960 | svint16_t svrev_s16(svint16_t); |
| 6961 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_b8))) | |
| 6962 | svbool_t svrev_b8(svbool_t); | |
| 6961 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_b16))) | |
| 6962 | svbool_t svrev_b16(svbool_t); | |
| 6963 | 6963 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_b32))) |
| 6964 | 6964 | svbool_t svrev_b32(svbool_t); |
| 6965 | 6965 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_b64))) |
| 6966 | 6966 | svbool_t svrev_b64(svbool_t); |
| 6967 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_b16))) | |
| 6968 | svbool_t svrev_b16(svbool_t); | |
| 6967 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrev_b8))) | |
| 6968 | svbool_t svrev_b8(svbool_t); | |
| 6969 | 6969 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrevb_u32_m))) |
| 6970 | 6970 | svuint32_t svrevb_u32_m(svuint32_t, svbool_t, svuint32_t); |
| 6971 | 6971 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svrevb_u64_m))) |
| ... | ... | @@ -8126,14 +8126,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_s64))) |
| 8126 | 8126 | svint64_t svtrn1_s64(svint64_t, svint64_t); |
| 8127 | 8127 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_s16))) |
| 8128 | 8128 | svint16_t svtrn1_s16(svint16_t, svint16_t); |
| 8129 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_b8))) | |
| 8130 | svbool_t svtrn1_b8(svbool_t, svbool_t); | |
| 8129 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_b16))) | |
| 8130 | svbool_t svtrn1_b16(svbool_t, svbool_t); | |
| 8131 | 8131 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_b32))) |
| 8132 | 8132 | svbool_t svtrn1_b32(svbool_t, svbool_t); |
| 8133 | 8133 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_b64))) |
| 8134 | 8134 | svbool_t svtrn1_b64(svbool_t, svbool_t); |
| 8135 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_b16))) | |
| 8136 | svbool_t svtrn1_b16(svbool_t, svbool_t); | |
| 8135 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn1_b8))) | |
| 8136 | svbool_t svtrn1_b8(svbool_t, svbool_t); | |
| 8137 | 8137 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_u8))) |
| 8138 | 8138 | svuint8_t svtrn2_u8(svuint8_t, svuint8_t); |
| 8139 | 8139 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_u32))) |
| ... | ... | @@ -8156,14 +8156,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_s64))) |
| 8156 | 8156 | svint64_t svtrn2_s64(svint64_t, svint64_t); |
| 8157 | 8157 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_s16))) |
| 8158 | 8158 | svint16_t svtrn2_s16(svint16_t, svint16_t); |
| 8159 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_b8))) | |
| 8160 | svbool_t svtrn2_b8(svbool_t, svbool_t); | |
| 8159 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_b16))) | |
| 8160 | svbool_t svtrn2_b16(svbool_t, svbool_t); | |
| 8161 | 8161 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_b32))) |
| 8162 | 8162 | svbool_t svtrn2_b32(svbool_t, svbool_t); |
| 8163 | 8163 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_b64))) |
| 8164 | 8164 | svbool_t svtrn2_b64(svbool_t, svbool_t); |
| 8165 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_b16))) | |
| 8166 | svbool_t svtrn2_b16(svbool_t, svbool_t); | |
| 8165 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtrn2_b8))) | |
| 8166 | svbool_t svtrn2_b8(svbool_t, svbool_t); | |
| 8167 | 8167 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtsmul_f64))) |
| 8168 | 8168 | svfloat64_t svtsmul_f64(svfloat64_t, svuint64_t); |
| 8169 | 8169 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svtsmul_f32))) |
| ... | ... | @@ -8314,14 +8314,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_s64))) |
| 8314 | 8314 | svint64_t svuzp1_s64(svint64_t, svint64_t); |
| 8315 | 8315 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_s16))) |
| 8316 | 8316 | svint16_t svuzp1_s16(svint16_t, svint16_t); |
| 8317 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_b8))) | |
| 8318 | svbool_t svuzp1_b8(svbool_t, svbool_t); | |
| 8317 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_b16))) | |
| 8318 | svbool_t svuzp1_b16(svbool_t, svbool_t); | |
| 8319 | 8319 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_b32))) |
| 8320 | 8320 | svbool_t svuzp1_b32(svbool_t, svbool_t); |
| 8321 | 8321 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_b64))) |
| 8322 | 8322 | svbool_t svuzp1_b64(svbool_t, svbool_t); |
| 8323 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_b16))) | |
| 8324 | svbool_t svuzp1_b16(svbool_t, svbool_t); | |
| 8323 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp1_b8))) | |
| 8324 | svbool_t svuzp1_b8(svbool_t, svbool_t); | |
| 8325 | 8325 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_u8))) |
| 8326 | 8326 | svuint8_t svuzp2_u8(svuint8_t, svuint8_t); |
| 8327 | 8327 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_u32))) |
| ... | ... | @@ -8344,14 +8344,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_s64))) |
| 8344 | 8344 | svint64_t svuzp2_s64(svint64_t, svint64_t); |
| 8345 | 8345 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_s16))) |
| 8346 | 8346 | svint16_t svuzp2_s16(svint16_t, svint16_t); |
| 8347 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_b8))) | |
| 8348 | svbool_t svuzp2_b8(svbool_t, svbool_t); | |
| 8347 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_b16))) | |
| 8348 | svbool_t svuzp2_b16(svbool_t, svbool_t); | |
| 8349 | 8349 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_b32))) |
| 8350 | 8350 | svbool_t svuzp2_b32(svbool_t, svbool_t); |
| 8351 | 8351 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_b64))) |
| 8352 | 8352 | svbool_t svuzp2_b64(svbool_t, svbool_t); |
| 8353 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_b16))) | |
| 8354 | svbool_t svuzp2_b16(svbool_t, svbool_t); | |
| 8353 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svuzp2_b8))) | |
| 8354 | svbool_t svuzp2_b8(svbool_t, svbool_t); | |
| 8355 | 8355 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svwhilele_b8_s32))) |
| 8356 | 8356 | svbool_t svwhilele_b8_s32(int32_t, int32_t); |
| 8357 | 8357 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svwhilele_b32_s32))) |
| ... | ... | @@ -8440,14 +8440,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_s64))) |
| 8440 | 8440 | svint64_t svzip1_s64(svint64_t, svint64_t); |
| 8441 | 8441 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_s16))) |
| 8442 | 8442 | svint16_t svzip1_s16(svint16_t, svint16_t); |
| 8443 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_b8))) | |
| 8444 | svbool_t svzip1_b8(svbool_t, svbool_t); | |
| 8443 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_b16))) | |
| 8444 | svbool_t svzip1_b16(svbool_t, svbool_t); | |
| 8445 | 8445 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_b32))) |
| 8446 | 8446 | svbool_t svzip1_b32(svbool_t, svbool_t); |
| 8447 | 8447 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_b64))) |
| 8448 | 8448 | svbool_t svzip1_b64(svbool_t, svbool_t); |
| 8449 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_b16))) | |
| 8450 | svbool_t svzip1_b16(svbool_t, svbool_t); | |
| 8449 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip1_b8))) | |
| 8450 | svbool_t svzip1_b8(svbool_t, svbool_t); | |
| 8451 | 8451 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_u8))) |
| 8452 | 8452 | svuint8_t svzip2_u8(svuint8_t, svuint8_t); |
| 8453 | 8453 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_u32))) |
| ... | ... | @@ -8470,14 +8470,14 @@ __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_s64))) |
| 8470 | 8470 | svint64_t svzip2_s64(svint64_t, svint64_t); |
| 8471 | 8471 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_s16))) |
| 8472 | 8472 | svint16_t svzip2_s16(svint16_t, svint16_t); |
| 8473 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_b8))) | |
| 8474 | svbool_t svzip2_b8(svbool_t, svbool_t); | |
| 8473 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_b16))) | |
| 8474 | svbool_t svzip2_b16(svbool_t, svbool_t); | |
| 8475 | 8475 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_b32))) |
| 8476 | 8476 | svbool_t svzip2_b32(svbool_t, svbool_t); |
| 8477 | 8477 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_b64))) |
| 8478 | 8478 | svbool_t svzip2_b64(svbool_t, svbool_t); |
| 8479 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_b16))) | |
| 8480 | svbool_t svzip2_b16(svbool_t, svbool_t); | |
| 8479 | __ai __attribute__((__clang_arm_builtin_alias(__builtin_sve_svzip2_b8))) | |
| 8480 | svbool_t svzip2_b8(svbool_t, svbool_t); | |
| 8481 | 8481 | __aio __attribute__((__clang_arm_builtin_alias(__builtin_sve_svabd_n_f64_m))) |
| 8482 | 8482 | svfloat64_t svabd_m(svbool_t, svfloat64_t, float64_t); |
| 8483 | 8483 | __aio __attribute__((__clang_arm_builtin_alias(__builtin_sve_svabd_n_f32_m))) |
lib/include/immintrin.h+2-2| ... | ... | @@ -524,7 +524,7 @@ _storebe_i64(void * __P, long long __D) { |
| 524 | 524 | #include <invpcidintrin.h> |
| 525 | 525 | #endif |
| 526 | 526 | #if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ |
| 527 | defined(__AMXFP16__) | |
| 527 | defined(__AMX_FP16__) | |
| 528 | 528 | #include <amxfp16intrin.h> |
| 529 | 529 | #endif |
| 530 | 530 | |
| ... | ... | @@ -534,7 +534,7 @@ _storebe_i64(void * __P, long long __D) { |
| 534 | 534 | #endif |
| 535 | 535 | |
| 536 | 536 | #if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ |
| 537 | defined(__AMXTILE__) || defined(__AMXINT8__) || defined(__AMXBF16__) | |
| 537 | defined(__AMX_TILE__) || defined(__AMX_INT8__) || defined(__AMX_BF16__) | |
| 538 | 538 | #include <amxintrin.h> |
| 539 | 539 | #endif |
| 540 | 540 |
lib/include/riscv_vector.h+49-49| ... | ... | @@ -25,7 +25,7 @@ extern "C" { |
| 25 | 25 | #pragma clang riscv intrinsic vector |
| 26 | 26 | |
| 27 | 27 | |
| 28 | #define vlenb() __builtin_rvv_vlenb() | |
| 28 | #define __riscv_vlenb() __builtin_rvv_vlenb() | |
| 29 | 29 | |
| 30 | 30 | enum RVV_CSR { |
| 31 | 31 | RVV_VSTART = 0, |
| ... | ... | @@ -35,7 +35,7 @@ enum RVV_CSR { |
| 35 | 35 | }; |
| 36 | 36 | |
| 37 | 37 | static __inline__ __attribute__((__always_inline__, __nodebug__)) |
| 38 | unsigned long vread_csr(enum RVV_CSR __csr) { | |
| 38 | unsigned long __riscv_vread_csr(enum RVV_CSR __csr) { | |
| 39 | 39 | unsigned long __rv = 0; |
| 40 | 40 | switch (__csr) { |
| 41 | 41 | case RVV_VSTART: |
| ... | ... | @@ -55,7 +55,7 @@ unsigned long vread_csr(enum RVV_CSR __csr) { |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | static __inline__ __attribute__((__always_inline__, __nodebug__)) |
| 58 | void vwrite_csr(enum RVV_CSR __csr, unsigned long __value) { | |
| 58 | void __riscv_vwrite_csr(enum RVV_CSR __csr, unsigned long __value) { | |
| 59 | 59 | switch (__csr) { |
| 60 | 60 | case RVV_VSTART: |
| 61 | 61 | __asm__ __volatile__ ("csrw\tvstart, %z0" : : "rJ"(__value) : "memory"); |
| ... | ... | @@ -72,62 +72,62 @@ void vwrite_csr(enum RVV_CSR __csr, unsigned long __value) { |
| 72 | 72 | } |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | #define vsetvl_e8mf4(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 6) | |
| 76 | #define vsetvl_e8mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 7) | |
| 77 | #define vsetvl_e8m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 0) | |
| 78 | #define vsetvl_e8m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 1) | |
| 79 | #define vsetvl_e8m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 2) | |
| 80 | #define vsetvl_e8m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 3) | |
| 75 | #define __riscv_vsetvl_e8mf4(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 6) | |
| 76 | #define __riscv_vsetvl_e8mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 7) | |
| 77 | #define __riscv_vsetvl_e8m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 0) | |
| 78 | #define __riscv_vsetvl_e8m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 1) | |
| 79 | #define __riscv_vsetvl_e8m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 2) | |
| 80 | #define __riscv_vsetvl_e8m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 3) | |
| 81 | 81 | |
| 82 | #define vsetvl_e16mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 7) | |
| 83 | #define vsetvl_e16m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 0) | |
| 84 | #define vsetvl_e16m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 1) | |
| 85 | #define vsetvl_e16m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 2) | |
| 86 | #define vsetvl_e16m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 3) | |
| 82 | #define __riscv_vsetvl_e16mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 7) | |
| 83 | #define __riscv_vsetvl_e16m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 0) | |
| 84 | #define __riscv_vsetvl_e16m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 1) | |
| 85 | #define __riscv_vsetvl_e16m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 2) | |
| 86 | #define __riscv_vsetvl_e16m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 3) | |
| 87 | 87 | |
| 88 | #define vsetvl_e32m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 0) | |
| 89 | #define vsetvl_e32m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 1) | |
| 90 | #define vsetvl_e32m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 2) | |
| 91 | #define vsetvl_e32m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 3) | |
| 88 | #define __riscv_vsetvl_e32m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 0) | |
| 89 | #define __riscv_vsetvl_e32m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 1) | |
| 90 | #define __riscv_vsetvl_e32m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 2) | |
| 91 | #define __riscv_vsetvl_e32m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 3) | |
| 92 | 92 | |
| 93 | 93 | #if __riscv_v_elen >= 64 |
| 94 | #define vsetvl_e8mf8(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 5) | |
| 95 | #define vsetvl_e16mf4(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 6) | |
| 96 | #define vsetvl_e32mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 7) | |
| 97 | ||
| 98 | #define vsetvl_e64m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 0) | |
| 99 | #define vsetvl_e64m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 1) | |
| 100 | #define vsetvl_e64m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 2) | |
| 101 | #define vsetvl_e64m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 3) | |
| 94 | #define __riscv_vsetvl_e8mf8(avl) __builtin_rvv_vsetvli((size_t)(avl), 0, 5) | |
| 95 | #define __riscv_vsetvl_e16mf4(avl) __builtin_rvv_vsetvli((size_t)(avl), 1, 6) | |
| 96 | #define __riscv_vsetvl_e32mf2(avl) __builtin_rvv_vsetvli((size_t)(avl), 2, 7) | |
| 97 | ||
| 98 | #define __riscv_vsetvl_e64m1(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 0) | |
| 99 | #define __riscv_vsetvl_e64m2(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 1) | |
| 100 | #define __riscv_vsetvl_e64m4(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 2) | |
| 101 | #define __riscv_vsetvl_e64m8(avl) __builtin_rvv_vsetvli((size_t)(avl), 3, 3) | |
| 102 | 102 | #endif |
| 103 | 103 | |
| 104 | #define vsetvlmax_e8mf4() __builtin_rvv_vsetvlimax(0, 6) | |
| 105 | #define vsetvlmax_e8mf2() __builtin_rvv_vsetvlimax(0, 7) | |
| 106 | #define vsetvlmax_e8m1() __builtin_rvv_vsetvlimax(0, 0) | |
| 107 | #define vsetvlmax_e8m2() __builtin_rvv_vsetvlimax(0, 1) | |
| 108 | #define vsetvlmax_e8m4() __builtin_rvv_vsetvlimax(0, 2) | |
| 109 | #define vsetvlmax_e8m8() __builtin_rvv_vsetvlimax(0, 3) | |
| 104 | #define __riscv_vsetvlmax_e8mf4() __builtin_rvv_vsetvlimax(0, 6) | |
| 105 | #define __riscv_vsetvlmax_e8mf2() __builtin_rvv_vsetvlimax(0, 7) | |
| 106 | #define __riscv_vsetvlmax_e8m1() __builtin_rvv_vsetvlimax(0, 0) | |
| 107 | #define __riscv_vsetvlmax_e8m2() __builtin_rvv_vsetvlimax(0, 1) | |
| 108 | #define __riscv_vsetvlmax_e8m4() __builtin_rvv_vsetvlimax(0, 2) | |
| 109 | #define __riscv_vsetvlmax_e8m8() __builtin_rvv_vsetvlimax(0, 3) | |
| 110 | 110 | |
| 111 | #define vsetvlmax_e16mf2() __builtin_rvv_vsetvlimax(1, 7) | |
| 112 | #define vsetvlmax_e16m1() __builtin_rvv_vsetvlimax(1, 0) | |
| 113 | #define vsetvlmax_e16m2() __builtin_rvv_vsetvlimax(1, 1) | |
| 114 | #define vsetvlmax_e16m4() __builtin_rvv_vsetvlimax(1, 2) | |
| 115 | #define vsetvlmax_e16m8() __builtin_rvv_vsetvlimax(1, 3) | |
| 111 | #define __riscv_vsetvlmax_e16mf2() __builtin_rvv_vsetvlimax(1, 7) | |
| 112 | #define __riscv_vsetvlmax_e16m1() __builtin_rvv_vsetvlimax(1, 0) | |
| 113 | #define __riscv_vsetvlmax_e16m2() __builtin_rvv_vsetvlimax(1, 1) | |
| 114 | #define __riscv_vsetvlmax_e16m4() __builtin_rvv_vsetvlimax(1, 2) | |
| 115 | #define __riscv_vsetvlmax_e16m8() __builtin_rvv_vsetvlimax(1, 3) | |
| 116 | 116 | |
| 117 | #define vsetvlmax_e32m1() __builtin_rvv_vsetvlimax(2, 0) | |
| 118 | #define vsetvlmax_e32m2() __builtin_rvv_vsetvlimax(2, 1) | |
| 119 | #define vsetvlmax_e32m4() __builtin_rvv_vsetvlimax(2, 2) | |
| 120 | #define vsetvlmax_e32m8() __builtin_rvv_vsetvlimax(2, 3) | |
| 117 | #define __riscv_vsetvlmax_e32m1() __builtin_rvv_vsetvlimax(2, 0) | |
| 118 | #define __riscv_vsetvlmax_e32m2() __builtin_rvv_vsetvlimax(2, 1) | |
| 119 | #define __riscv_vsetvlmax_e32m4() __builtin_rvv_vsetvlimax(2, 2) | |
| 120 | #define __riscv_vsetvlmax_e32m8() __builtin_rvv_vsetvlimax(2, 3) | |
| 121 | 121 | |
| 122 | 122 | #if __riscv_v_elen >= 64 |
| 123 | #define vsetvlmax_e8mf8() __builtin_rvv_vsetvlimax(0, 5) | |
| 124 | #define vsetvlmax_e16mf4() __builtin_rvv_vsetvlimax(1, 6) | |
| 125 | #define vsetvlmax_e32mf2() __builtin_rvv_vsetvlimax(2, 7) | |
| 126 | ||
| 127 | #define vsetvlmax_e64m1() __builtin_rvv_vsetvlimax(3, 0) | |
| 128 | #define vsetvlmax_e64m2() __builtin_rvv_vsetvlimax(3, 1) | |
| 129 | #define vsetvlmax_e64m4() __builtin_rvv_vsetvlimax(3, 2) | |
| 130 | #define vsetvlmax_e64m8() __builtin_rvv_vsetvlimax(3, 3) | |
| 123 | #define __riscv_vsetvlmax_e8mf8() __builtin_rvv_vsetvlimax(0, 5) | |
| 124 | #define __riscv_vsetvlmax_e16mf4() __builtin_rvv_vsetvlimax(1, 6) | |
| 125 | #define __riscv_vsetvlmax_e32mf2() __builtin_rvv_vsetvlimax(2, 7) | |
| 126 | ||
| 127 | #define __riscv_vsetvlmax_e64m1() __builtin_rvv_vsetvlimax(3, 0) | |
| 128 | #define __riscv_vsetvlmax_e64m2() __builtin_rvv_vsetvlimax(3, 1) | |
| 129 | #define __riscv_vsetvlmax_e64m4() __builtin_rvv_vsetvlimax(3, 2) | |
| 130 | #define __riscv_vsetvlmax_e64m8() __builtin_rvv_vsetvlimax(3, 3) | |
| 131 | 131 | #endif |
| 132 | 132 | |
| 133 | 133 | typedef __rvv_bool64_t vbool64_t; |
lib/include/smmintrin.h+1-1| ... | ... | @@ -1145,7 +1145,7 @@ static __inline__ int __DEFAULT_FN_ATTRS _mm_testnzc_si128(__m128i __M, |
| 1145 | 1145 | /// A 128-bit integer vector containing the bits to be tested. |
| 1146 | 1146 | /// \returns TRUE if the bits specified in the operand are all set to 1; FALSE |
| 1147 | 1147 | /// otherwise. |
| 1148 | #define _mm_test_all_ones(V) _mm_testc_si128((V), _mm_cmpeq_epi32((V), (V))) | |
| 1148 | #define _mm_test_all_ones(V) _mm_testc_si128((V), _mm_set1_epi32(-1)) | |
| 1149 | 1149 | |
| 1150 | 1150 | /// Tests whether the specified bits in a 128-bit integer vector are |
| 1151 | 1151 | /// neither all zeros nor all ones. |