mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-04 10:50:07 +00:00
a23bd00f9d
This started as a trivial change to Anton's rawmemchr. I got carried away. This is a hybrid between P8's asympotically faster 64B checks with extremely efficient small string checks e.g <64B (and sometimes a little bit more depending on alignment). The second trick is to align to 64B by running a 48B checking loop 16B at a time until we naturally align to 64B (i.e checking 48/96/144 bytes/iteration based on the alignment after the first 5 comparisons). This allieviates the need to check page boundaries. Finally, explicly use the P7 strlen with the runtime loader when building P9. We need to be cautious about vector/vsx extensions here on P9 only builds.
2 lines
53 B
ArmAsm
2 lines
53 B
ArmAsm
#include <sysdeps/powerpc/powerpc64/power7/strlen.S>
|