diff options
author | Matteo Croce <mcroce@microsoft.com> | 2022-03-30 15:07:14 +0300 |
---|---|---|
committer | Guo Ren <guoren@linux.alibaba.com> | 2022-04-18 16:23:55 +0300 |
commit | e4df2d5e852a7d24df3672ae9951eb79e179be08 (patch) | |
tree | 304debe8a13e6d07a56b7f97ac9eb92d8ddd95d7 /arch/csky/abiv2/strksyms.c | |
parent | cfb24463a53edeb388f3563e166ad7f9591dad3d (diff) | |
download | linux-e4df2d5e852a7d24df3672ae9951eb79e179be08.tar.xz |
csky: Add C based string functions
Try to access RAM with the largest bit width possible, but without
doing unaligned accesses.
A further improvement could be to use multiple read and writes as the
assembly version was trying to do.
Tested on a BeagleV Starlight with a SiFive U74 core, where the
improvement is noticeable.
Signed-off-by: Matteo Croce <mcroce@microsoft.com>
Co-developed-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Diffstat (limited to 'arch/csky/abiv2/strksyms.c')
-rw-r--r-- | arch/csky/abiv2/strksyms.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/csky/abiv2/strksyms.c b/arch/csky/abiv2/strksyms.c index 06da723d8202..8d1fd28c6cf9 100644 --- a/arch/csky/abiv2/strksyms.c +++ b/arch/csky/abiv2/strksyms.c @@ -3,10 +3,12 @@ #include <linux/module.h> +#ifdef CONFIG_HAVE_EFFICIENT_UNALIGNED_STRING_OPS EXPORT_SYMBOL(memcpy); EXPORT_SYMBOL(memset); -EXPORT_SYMBOL(memcmp); EXPORT_SYMBOL(memmove); +#endif +EXPORT_SYMBOL(memcmp); EXPORT_SYMBOL(strcmp); EXPORT_SYMBOL(strcpy); EXPORT_SYMBOL(strlen); |