glibc/sysdeps/i386/i686
Noah Goldstein 44829b3ddb String: Add support for __memcmpeq() ABI on all targets
No bug.

This commit adds support for __memcmpeq() as a new ABI for all
targets. In this commit __memcmpeq() is implemented only as an alias
to the corresponding targets memcmp() implementation. __memcmpeq() is
added as a new symbol starting with GLIBC_2.35 and defined in string.h
with comments explaining its behavior. Basic tests that it is callable
and works where added in string/tester.c

As discussed in the proposal "Add new ABI '__memcmpeq()' to libc"
__memcmpeq() is essentially a reserved namespace for bcmp(). The means
is shares the same specifications as memcmp() except the return value
for non-equal byte sequences is any non-zero value. This is less
strict than memcmp()'s return value specification and can be better
optimized when a boolean return is all that is needed.

__memcmpeq() is meant to only be called by compilers if they can prove
that the return value of a memcmp() call is only used for its boolean
value.

All tests in string/tester.c passed. As well build succeeds on
x86_64-linux-gnu target.
2021-10-26 16:51:29 -05:00
..
fpu Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
multiarch String: Add support for __memcmpeq() ABI on all targets 2021-10-26 16:51:29 -05:00
nptl Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
add_n.S Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bcopy.S Optimize 32bit memset/memcpy with SSE2/SSSE3. 2010-01-12 11:22:03 -08:00
bzero.S Replace BZERO_P/PIC with USE_AS_BZERO/SHARED 2015-08-26 08:01:03 -07:00
dl-hash.h Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
ffs.c Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
isa.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Makefile Remove remnants of .og patterns 2016-09-20 12:18:13 +02:00
memcmp.S String: Add support for __memcmpeq() ABI on all targets 2021-10-26 16:51:29 -05:00
memcpy.S Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
memmove.S Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
mempcpy.S Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
memset.S Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
memusage.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
pthread_spin_trylock.S Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30
strcmp.S Remove "Contributed by" lines 2021-09-03 22:06:44 +05:30