about summary refs log tree commit diff
path: root/sysdeps/x86_64/multiarch/strnlen-evex512.S
diff options
context:
space:
mode:
authorSunil K Pandey <skpgkp2@gmail.com>2022-02-27 16:39:47 -0800
committerSunil K Pandey <skpgkp2@gmail.com>2022-05-26 13:11:36 -0700
commit9c66efb86fe384f77435f7e326333fb2e4e10676 (patch)
tree0a0e01591491d2dbfc45ee1c8f3417acc436f104 /sysdeps/x86_64/multiarch/strnlen-evex512.S
parent8d6c44ee7d74ceafcce7cd1d694a1f86cd61dc0a (diff)
downloadglibc-9c66efb86fe384f77435f7e326333fb2e4e10676.tar.gz
glibc-9c66efb86fe384f77435f7e326333fb2e4e10676.tar.xz
glibc-9c66efb86fe384f77435f7e326333fb2e4e10676.zip
x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen
This patch implements following evex512 version of string functions.
Perf gain for evex512 version is up to 50% as compared to evex,
depending on length and alignment.

Placeholder function, not used by any processor at the moment.

- String length function using 512 bit vectors.
- String N length using 512 bit vectors.
- Wide string length using 512 bit vectors.
- Wide string N length using 512 bit vectors.

Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
Diffstat (limited to 'sysdeps/x86_64/multiarch/strnlen-evex512.S')
-rw-r--r--sysdeps/x86_64/multiarch/strnlen-evex512.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/x86_64/multiarch/strnlen-evex512.S b/sysdeps/x86_64/multiarch/strnlen-evex512.S
new file mode 100644
index 0000000000..0b7f220214
--- /dev/null
+++ b/sysdeps/x86_64/multiarch/strnlen-evex512.S
@@ -0,0 +1,4 @@
+#define STRLEN __strnlen_evex512
+#define USE_AS_STRNLEN 1
+
+#include "strlen-evex512.S"