aboutsummaryrefslogtreecommitdiff
path: root/stdio-common/tst-printf-binary.c
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2023-01-10 18:00:58 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2023-02-06 16:19:35 -0300
commit30cf54bf3072be942847400c1669bcd63aab039e (patch)
tree3fb85ccfa434cd8bd8f4047dd4a12ff55bae3a65 /stdio-common/tst-printf-binary.c
parent506f7dbbabbad1f2d9f745636937b20c2670c29b (diff)
downloadglibc-30cf54bf3072be942847400c1669bcd63aab039e.zip
glibc-30cf54bf3072be942847400c1669bcd63aab039e.tar.gz
glibc-30cf54bf3072be942847400c1669bcd63aab039e.tar.bz2
string: Improve generic strcmp
It follows the strategy: - Align the first input to word boundary using byte operations. - If second input is also word aligned, read a word per time, check for null (using has_zero), and check final words using byte operation. - If second input is not word aligned, loop by aligning the source, and merging the result of two reads. Similar to aligned case, check for null with has_zero, and check final words using byte operation. Checked on x86_64-linux-gnu, i686-linux-gnu, powerpc64-linux-gnu, and powerpc-linux-gnu by removing the arch-specific assembly implementation and disabling multi-arch (it covers both LE and BE for 64 and 32 bits). Co-authored-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Noah Goldstein <goldstein.w.n@gmail.com>
Diffstat (limited to 'stdio-common/tst-printf-binary.c')
0 files changed, 0 insertions, 0 deletions