Skip to content
This repository was archived by the owner on May 7, 2024. It is now read-only.

Commit 83e60d0

Browse files
committed
[fix] Fix wrong type in builtin & add missing intrinsic
1 parent ecd8198 commit 83e60d0

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

gcc/config/riscv/riscv-builtins-rvp.def

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ RVP_DIRECT_BUILTIN (cmpeqv2hi, cmpeq16, RISCV_UIXLEN_FTYPE_UIXLEN_UIXLEN, zpn32)
8181
RVP_DIRECT_BUILTIN (cmpeqv4hi, cmpeq16, RISCV_UIXLEN_FTYPE_UIXLEN_UIXLEN, zpn64),
8282
RVP_DIRECT_BUILTIN (cmpeqv2hi, v_scmpeq16, RISCV_UV2HI_FTYPE_V2HI_V2HI, zpn32),
8383
RVP_DIRECT_BUILTIN (cmpeqv2hi, v_ucmpeq16, RISCV_UV2HI_FTYPE_UV2HI_UV2HI, zpn32),
84-
RVP_DIRECT_BUILTIN (cmpeqv4hi, v64_scmpeq16, RISCV_UIXLEN_FTYPE_V4HI_V4HI, zpn64),
85-
RVP_DIRECT_BUILTIN (cmpeqv4hi, v64_ucmpeq16, RISCV_UIXLEN_FTYPE_UV4HI_UV4HI, zpn64),
84+
RVP_DIRECT_BUILTIN (cmpeqv4hi, v64_scmpeq16, RISCV_UV4HI_FTYPE_V4HI_V4HI, zpn64),
85+
RVP_DIRECT_BUILTIN (cmpeqv4hi, v64_ucmpeq16, RISCV_UV4HI_FTYPE_UV4HI_UV4HI, zpn64),
8686
RVP_DIRECT_BUILTIN (crasv2hi, cras16, RISCV_UIXLEN_FTYPE_UIXLEN_UIXLEN, zpn32),
8787
RVP_DIRECT_BUILTIN (crasv2hi, v_ucras16, RISCV_UV2HI_FTYPE_UV2HI_UV2HI, zpn32),
8888
RVP_DIRECT_BUILTIN (crasv2hi, v_scras16, RISCV_V2HI_FTYPE_V2HI_V2HI, zpn32),
@@ -889,7 +889,7 @@ RVP_DIRECT_BUILTIN (ursubv2si3, v64_ursub32, RISCV_UV2SI_FTYPE_UV2SI_UV2SI, zprv
889889
RVP_DIRECT_BUILTIN (smal, v_smal, RISCV_LLONG_FTYPE_LLONG_V2HI, zpsf32),
890890
RVP_DIRECT_BUILTIN (smal_64, v64_smal, RISCV_LLONG_FTYPE_LLONG_V4HI, zpsf64),
891891
RVP_DIRECT_BUILTIN (smal, smal, RISCV_LLONG_FTYPE_LLONG_UIXLEN, zpsf32),
892-
RVP_DIRECT_BUILTIN (smal_64, smal, RISCV_LLONG_FTYPE_LLONG_V2HI, zpsf64),
892+
RVP_DIRECT_BUILTIN (smal_64, smal, RISCV_LLONG_FTYPE_LLONG_V4HI, zpsf64),
893893
RVP_DIRECT_BUILTIN (dsp_adddi3, sadd64, RISCV_LLONG_FTYPE_LLONG_LLONG, zpsf32),
894894
RVP_DIRECT_BUILTIN (dsp_adddi3, uadd64, RISCV_ULLONG_FTYPE_ULLONG_ULLONG, zpsf32),
895895
RVP_DIRECT_BUILTIN (adddi3, sadd64, RISCV_LLONG_FTYPE_LLONG_LLONG, zpsf64),
@@ -961,7 +961,7 @@ RVP_DIRECT_BUILTIN (smalds64, v64_smalds, RISCV_LLONG_FTYPE_LLONG_V4HI_V4HI, zps
961961
RVP_DIRECT_BUILTIN (smaldrs64, v64_smaldrs, RISCV_LLONG_FTYPE_LLONG_V4HI_V4HI, zpsf64),
962962
RVP_DIRECT_BUILTIN (smalxds64, v64_smalxds, RISCV_LLONG_FTYPE_LLONG_V4HI_V4HI, zpsf64),
963963
RVP_DIRECT_BUILTIN (smslxda1, smslxda, RISCV_LLONG_FTYPE_LLONG_UIXLEN_UIXLEN, zpsf32),
964-
RVP_DIRECT_BUILTIN (smslxda64, smslxda, RISCV_LLONG_FTYPE_LLONG_V4HI_V4HI, zpsf64),
964+
RVP_DIRECT_BUILTIN (smslxda64, smslxda, RISCV_LLONG_FTYPE_LLONG_UIXLEN_UIXLEN, zpsf64),
965965
RVP_DIRECT_BUILTIN (smslxda1, v_smslxda, RISCV_LLONG_FTYPE_LLONG_V2HI_V2HI, zpsf32),
966966
RVP_DIRECT_BUILTIN (smslxda64, v64_smslxda, RISCV_LLONG_FTYPE_LLONG_V4HI_V4HI, zpsf64),
967967
RVP_DIRECT_BUILTIN (umulsidi3, mulr64, RISCV_UDI_FTYPE_USI_USI, zpsf),

gcc/config/riscv/rvp_intrinsic.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1602,6 +1602,7 @@ typedef unsigned int uint32x4_t __attribute__((vector_size(16)));
16021602
#endif
16031603

16041604
// ZPN subext intrinsics for both RV32 & RV64
1605+
#define __rv__swap16 __riscv__swap16
16051606
#define __rv__add16 __riscv__add16
16061607
#define __rv__radd16 __riscv__radd16
16071608
#define __rv__uradd16 __riscv__uradd16
@@ -1960,6 +1961,7 @@ typedef unsigned int uint32x4_t __attribute__((vector_size(16)));
19601961
#define __rv__v_smmwb_u __riscv__v_smmwb_u
19611962
#define __rv__v_smmwt __riscv__v_smmwt
19621963
#define __rv__v_smmwt_u __riscv__v_smmwt_u
1964+
#define __rv__v_swap16 __riscv__v_swap16
19631965
#if __riscv_xlen == 64
19641966
// RV64 Only ZPN vector intrinsic
19651967
#define __rv__v_smmul __riscv__v_smmul

0 commit comments

Comments
 (0)