aboutsummaryrefslogtreecommitdiff
path: root/libcody
diff options
context:
space:
mode:
authorSergei Lewis <slewis@rivosinc.com>2024-06-25 15:26:14 -0600
committerJeff Law <jlaw@ventanamicro.com>2024-06-25 15:26:14 -0600
commitb1e828dd9694294de1ec71e319d32a6b30b087d8 (patch)
tree9566b022e7b94b16e07f89eecd47f5125e6faaa4 /libcody
parentd16355c72c7f7b54ecf06371d14d7ad309ea4c34 (diff)
[PATCH v2 3/3] RISC-V: cmpmem for RISCV with V extension
So this is the cmpmem patch from Sergei, updated for the trunk. Updates included adjusting the existing cmpmemsi expander to conditionally try expansion via vector. And a minor testsuite adjustment to turn off vector expansion in one test that is primarily focused on vset optimization and ensuring we don't have extras. I've spun this in my tester successfully and just want to see a clean run through precommit CI before moving forward. Jeff gcc/ChangeLog: * config/riscv/riscv-protos.h (riscv_vector::expand_vec_cmpmem): New function declaration. * config/riscv/riscv-string.cc (riscv_vector::expand_vec_cmpmem): New function. * config/riscv/riscv.md (cmpmemsi): Try riscv_vector::expand_vec_cmpmem for constant lengths. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/base/cmpmem-1.c: New codegen tests * gcc.target/riscv/rvv/base/cmpmem-2.c: New execution tests * gcc.target/riscv/rvv/base/cmpmem-3.c: New codegen tests * gcc.target/riscv/rvv/base/cmpmem-4.c: New codegen tests * gcc.target/riscv/rvv/autovec/vls/misalign-1.c: Turn off vector mem* and str* handling.
Diffstat (limited to 'libcody')
0 files changed, 0 insertions, 0 deletions