diff options
author | xuli <xuli1@eswincomputing.com> | 2024-12-26 09:39:08 +0000 |
---|---|---|
committer | xuli <xuli1@eswincomputing.com> | 2025-05-27 02:36:03 +0000 |
commit | a91679a3d9f7cbc079880f201fd8292c1d54baa7 (patch) | |
tree | 7cc79f7484a4ed084cbb26b14d7645b7e8144ba8 /libgcc | |
parent | 70fdc02b60935bf8de886795dda13924b0c08cad (diff) | |
download | gcc-a91679a3d9f7cbc079880f201fd8292c1d54baa7.zip gcc-a91679a3d9f7cbc079880f201fd8292c1d54baa7.tar.gz gcc-a91679a3d9f7cbc079880f201fd8292c1d54baa7.tar.bz2 |
RISC-V: Add testcases for signed vector SAT_ADD IMM form 1
This patch adds testcase for form1, as shown below:
void __attribute__((noinline)) \
vec_sat_s_add_imm_##T##_fmt_1##_##INDEX (T *out, T *op_1, unsigned limit) \
{ \
unsigned i; \
for (i = 0; i < limit; i++) \
{ \
T x = op_1[i]; \
T sum = (UT)x + (UT)IMM; \
out[i] = (x ^ IMM) < 0 \
? sum \
: (sum ^ x) >= 0 \
? sum \
: x < 0 ? MIN : MAX; \
} \
}
Passed the rv64gcv regression test.
Signed-off-by: Li Xu <xuli1@eswincomputing.com>
gcc/testsuite/ChangeLog:
* gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: add signed vec SAT_ADD IMM form1.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: add sat_s_add_imm data.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i16.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i32.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i64.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i8.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i16.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i32.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i64.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i8.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i16.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i32.c: New test.
* gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i8.c: New test.
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions