Re: [PATCH v2 00/11] newlib: RISC-V: Optimize memory and string functions for code size
Kito Cheng <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <CA+yXCZCoxfi1xJURr7_cY1SNXNUoXt9LXf51S5ce5x3hRyBEMA@mail.gmail.com> |
Hi M Fally: V2 is LGTM, thanks! On Thu, Apr 10, 2025 at 7:27 PM m fally <[email protected]> wrote: > > This is version two of the patch series that optimizes the size-optimized > versions of memset(), memcpy(), memmove(), and strcmp() for the RISC-V port. > The majority of instructions in each function will now be compressed when > compiled with the C and (optionally) Zcb extensions. > > The changes to the speed-optimized path of strcmp() introduced in the first > version of this series have been dropped, and only a small syntactic change > to this function (replacing add instructions with addi where applicable) has > been kept. Otherwhise, the patches in this series are identical to version one. > > This is the second patch series that is part of a three-month mentorship > to optimize the RISC-V port for speed and size. > > Eric Salem (1): > RISC-V: memset() size optimized version: Use compressed registers > > Mahmoud Abumandour (2): > RISC-V: memcpy() size optimized version: Replace lb with lbu > RISC-V: memcpy() size optimized version: Use compressed registers > > m fally (8): > RISC-V: memmove() size optimized version: Use compressed register > RISC-V: memmove() size optimized version: Use compressed registers > only > RISC-V: memmove() size optimized version: Rename local labels > RISC-V: memmove() size optimized version: Add comments > RISC-V: memmove() size optimized version: Replace lb with lbu > RISC-V: memmove() size optimized version: Relax RAW dependency > RISC-V: memset() size optimized version: Rename local labels > RISC-V: Size optimized versions: Replace add with addi > > newlib/libc/machine/riscv/memcpy-asm.S | 12 +++++------ > newlib/libc/machine/riscv/memmove.S | 28 +++++++++++++------------- > newlib/libc/machine/riscv/memset.S | 16 +++++++-------- > newlib/libc/machine/riscv/strcmp.S | 4 ++-- > 4 files changed, 30 insertions(+), 30 deletions(-) > > -- > 2.49.0 >