freebsd-skq/lib/libc/amd64
mjg 09cca5134d amd64: reimplement libc memcmp and bcmp with kernel memcmp
Both are significantly slower than hand-coded loops. See r338963 for
kernel commit.

bcmp differs from memcmp by always returning 1 when a difference is
found, as opposed to going for a value bigger or lower than 0
depending on what it is. This means it can do less work. For now the
code is duplicated and modified. This will get deduplicated after
another round of optimization when memcmp will get a longer-term form.

Both tested with the glibc suite. While the suite does not have a test
for bcmp, I created a wrapper routine which verified that values match
(0 vs 0, 1 vs non-zero).

Reviewed by:	kib
Approved by:	re (gjb)
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D17336
2018-09-27 17:08:29 +00:00
..
gen Remove support for SYS_sys_exit in favor of SYS_exit. 2018-06-01 22:09:27 +00:00
stdlib
string amd64: reimplement libc memcmp and bcmp with kernel memcmp 2018-09-27 17:08:29 +00:00
sys Reimplement brk() and sbrk() to avoid the use of _end. 2018-06-04 19:35:15 +00:00
_fpmath.h libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
arith.h
gd_qnan.h
Makefile.inc Correct an misunderstanding of MDSRCS. 2017-03-02 17:07:28 +00:00
Symbol.map Reimplement brk() and sbrk() to avoid the use of _end. 2018-06-04 19:35:15 +00:00
SYS.h General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00