Loongarch: Add ifunc support and add different versions of strlen
authordengjianbo <dengjianbo@loongson.cn>
Tue, 8 Aug 2023 06:15:44 +0000 (14:15 +0800)
committercaiyinyu <caiyinyu@loongson.cn>
Mon, 14 Aug 2023 01:47:09 +0000 (09:47 +0800)
commit135407f43175899db98e9881daffed856a38042c
tree8ed190bfc2f4ed608731bd4ea4cbfec2b9df70b6
parentcb7954c4c2f46e5da5374c75576612c9b02b2592
Loongarch: Add ifunc support and add different versions of strlen

strlen-lasx is implemeted by LASX simd instructions(256bit)
strlen-lsx is implemeted by LSX simd instructions(128bit)
strlen-align is implemented by LA basic instructions and never use unaligned memory acess
sysdeps/loongarch/lp64/multiarch/Makefile [new file with mode: 0644]
sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c [new file with mode: 0644]
sysdeps/loongarch/lp64/multiarch/ifunc-strlen.h [new file with mode: 0644]
sysdeps/loongarch/lp64/multiarch/strlen-aligned.S [new file with mode: 0644]
sysdeps/loongarch/lp64/multiarch/strlen-lasx.S [new file with mode: 0644]
sysdeps/loongarch/lp64/multiarch/strlen-lsx.S [new file with mode: 0644]
sysdeps/loongarch/lp64/multiarch/strlen.c [new file with mode: 0644]
sysdeps/loongarch/sys/regdef.h
sysdeps/unix/sysv/linux/loongarch/cpu-features.h