Thread (23 messages) 23 messages, 6 authors, 2021-06-30

Re: [PATCH v3 0/3] riscv: optimized mem* functions

From: Guo Ren <guoren@kernel.org>
Date: 2021-06-22 02:40:05
Also in: linux-riscv, lkml

On Tue, Jun 22, 2021 at 9:09 AM Nick Kossifidis [off-list ref] wrote:
Hello Matteo,

Στις 2021-06-17 18:27, Matteo Croce έγραψε:
quoted
From: Matteo Croce <redacted>

Replace the assembly mem{cpy,move,set} with C equivalent.

Try to access RAM with the largest bit width possible, but without
doing unaligned accesses.

Tested on a BeagleV Starlight with a SiFive U74 core, where the
improvement is noticeable.
There are already generic C implementations for memcpy/memmove/memset at
https://elixir.bootlin.com/linux/v5.13-rc7/source/lib/string.c#L871 but
are doing one byte at a time, I suggest you update them to do
word-by-word copy instead of introducing yet another memcpy/memmove C
implementation on arch/riscv/.
Yes, I've tried to copy the Glibc version into arch/csky/abiv1, and
Arnd suggested putting them into generic.
ref: https://lore.kernel.org/linux-arch/20190629053641.3iBfk9-I_D29cDp9yJnIdIg7oMtHNZlDmhLQPTumhEc@z/#t


--
Best Regards
 Guo Ren

ML: https://lore.kernel.org/linux-csky/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help