aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-phiopt.cc
diff options
context:
space:
mode:
authorRobin Dapp <rdapp@ventanamicro.com>2023-12-01 10:07:23 +0100
committerRobin Dapp <rdapp@ventanamicro.com>2023-12-08 17:31:50 +0100
commitd468718c9a097aeb8794fb1a2df6db2c1064d7f7 (patch)
treeb5871a49392cdb5a113ca074b928b272777d1f5f /gcc/tree-ssa-phiopt.cc
parent2664964b2f695e947faea4c29dbddd3615cc4b0b (diff)
downloadgcc-d468718c9a097aeb8794fb1a2df6db2c1064d7f7.zip
gcc-d468718c9a097aeb8794fb1a2df6db2c1064d7f7.tar.gz
gcc-d468718c9a097aeb8794fb1a2df6db2c1064d7f7.tar.bz2
RISC-V: Add vectorized strcmp and strncmp.
This patch adds vectorized strcmp and strncmp implementations and tests. Similar to strlen, expansion is still guarded by -minline-str(n)cmp. gcc/ChangeLog: PR target/112109 * config/riscv/riscv-protos.h (expand_strcmp): Declare. * config/riscv/riscv-string.cc (riscv_expand_strcmp): Add strategy handling and delegation to scalar and vector expanders. (expand_strcmp): Vectorized implementation. * config/riscv/riscv.md: Add TARGET_VECTOR to strcmp and strncmp expander. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/builtin/strcmp-run.c: New test. * gcc.target/riscv/rvv/autovec/builtin/strcmp.c: New test. * gcc.target/riscv/rvv/autovec/builtin/strncmp-run.c: New test. * gcc.target/riscv/rvv/autovec/builtin/strncmp.c: New test.
Diffstat (limited to 'gcc/tree-ssa-phiopt.cc')
0 files changed, 0 insertions, 0 deletions