freebsd-nq/lib/libc/stdlib
Konstantin Belousov 6609261660 libc qsort(3): stop aliasing.
Qsort swap code aliases the sorted array elements to ints and longs in
order to do swap by machine words.  Unfortunately this breaks with the
full code optimization, e.g. LTO.

See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83201 which seems to
reference code directly copied from libc/stdlib/qsort.c.

PR:	228780
Reported by:	mliska@suse.cz
Reviewed by:	brooks
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D15714
2018-06-10 17:54:44 +00:00
..
jemalloc Update jemalloc to version 5.1.0. 2018-05-11 00:32:31 +00:00
_Exit.c
a64l.3
a64l.c
abort.3 Bump the date on man pages in r334306 2018-05-29 02:41:32 +00:00
abort.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
abs.3
abs.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
alloca.3
at_quick_exit.3
atexit.3
atexit.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atexit.h General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atof.3
atof.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atoi.3
atoi.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atol.3
atol.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atoll.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
bsearch_b.c
bsearch.3
bsearch.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
cxa_thread_atexit_impl.c Export __cxa_thread_atexit_impl as an alias for __cxa_thread_atexit. 2017-01-07 16:05:19 +00:00
cxa_thread_atexit.c Export __cxa_thread_atexit_impl as an alias for __cxa_thread_atexit. 2017-01-07 16:05:19 +00:00
div.3
div.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
exit.3 Bump the date on man pages in r334306 2018-05-29 02:41:32 +00:00
exit.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
getenv.3
getenv.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
getopt_long.3
getopt_long.c
getopt.3
getopt.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
getsubopt.3
getsubopt.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
hcreate_r.c Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
hcreate.3 hcreate(3): fix the ERRORS section and bump .Dd 2017-02-07 02:32:49 +00:00
hcreate.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
hdestroy_r.c Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
heapsort_b.c
heapsort.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
hsearch_r.c Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
hsearch.h Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
imaxabs.3
imaxabs.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
imaxdiv.3
imaxdiv.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
insque.3
insque.c
l64a.c Let l64a() properly null terminate its result. 2016-05-26 20:55:15 +00:00
labs.3
labs.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
ldiv.3
ldiv.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
llabs.3
llabs.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
lldiv.3
lldiv.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
lsearch.3 Fix markup on "\n" in printf so it renders correctly. 2016-04-17 18:25:34 +00:00
lsearch.c
Makefile.inc Move strtold wrapper from strtol.c to its own strtold.c. This code 2018-01-31 03:05:14 +00:00
memory.3
merge.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
mergesort_b.c
ptsname.3
ptsname.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
qsort_r.c
qsort.3 Don't put multiple names on a single .Nm line. This fixes apropos(1) 2018-04-17 09:05:46 +00:00
qsort.c libc qsort(3): stop aliasing. 2018-06-10 17:54:44 +00:00
quick_exit.3 C++17 requires quick_exit(3) to be async-signal safe. 2017-11-04 10:52:58 +00:00
quick_exit.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
radixsort.3
radixsort.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
rand.3
rand.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
random.3 Fix typing of srandom() and initstate(). 2016-07-26 20:11:29 +00:00
random.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
reallocarray.3
reallocarray.c
reallocf.3
reallocf.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
realpath.3
realpath.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
remque.c
set_constraint_handler_s.c Improve standard compliance for memset_s() and abort_handler_s(). 2017-08-12 15:18:17 +00:00
strfmon.3
strfmon.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
strtod.3
strtoimax.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtol.3
strtol.c Move strtold wrapper from strtol.c to its own strtold.c. This code 2018-01-31 03:05:14 +00:00
strtold.c Use standard 2-clause license where copyright is held by the FreeBSD Foundation 2018-02-02 16:47:32 +00:00
strtoll.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtonum.3
strtonum.c
strtoq.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtoul.3
strtoul.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtoull.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtoumax.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtouq.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
Symbol.map Implement the memset_s(3) function as specified by the C11 ISO/IEC 2017-03-30 04:57:26 +00:00
system.3
system.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
tdelete.c Improve typing of POSIX search tree functions. 2016-10-13 18:25:40 +00:00
tfind.c Improve typing of POSIX search tree functions. 2016-10-13 18:25:40 +00:00
tsearch_path.h
tsearch.3 Follow up to r320992, properly escape the backslash so it renders properly. 2017-07-14 17:27:15 +00:00
tsearch.c Improve typing of POSIX search tree functions. 2016-10-13 18:25:40 +00:00
twalk.c Improve typing of POSIX search tree functions. 2016-10-13 18:25:40 +00:00