opnsense-src/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 use .Mt to mark up email addresses consistently (part4) 2014-06-23 08:25:03 +00:00
a64l.c Correct decoding a string containing '/'. 2006-05-19 19:06:38 +00:00
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 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
abs.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
alloca.3 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
at_quick_exit.3 Update the 'C1x draft' reference to '.St -isoC-2011' mdoc macro. 2012-07-26 12:04:11 +00:00
atexit.3 Various mdoc fixes and a few EOL whitespace removals. 2014-12-21 12:36:36 +00:00
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 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
atof.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atoi.3 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
atoi.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
atol.3 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
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.3 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
bsearch.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
bsearch_b.c Add support for some block functions that come from OS X. These are 2014-04-02 16:07:48 +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
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
div.3 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
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 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
getenv.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
getopt.3 [mdoc] Fix previous change. 2014-07-08 12:19:34 +00:00
getopt.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
getopt_long.3 getopt_long.3: wording quibbles 2013-12-13 21:50:03 +00:00
getopt_long.c Merge intermediate OpenBSD v1.25 changes (almost identical to ours) 2014-06-22 21:54:57 +00:00
getsubopt.3 Renumber clauses to reduce diffs to other versions 2013-05-28 20:57:40 +00:00
getsubopt.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +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
hcreate_r.c Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
hdestroy_r.c Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
heapsort.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
heapsort_b.c Add support for some block functions that come from OS X. These are 2014-04-02 16:07:48 +00:00
hsearch.h Replace implementation of hsearch() by one that scales. 2015-12-27 07:50:11 +00:00
hsearch_r.c 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 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
labs.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
ldiv.3 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
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 Use the __DECONST macro rather than hand rolling the same thing. 2014-10-24 23:25:44 +00:00
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 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
merge.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
mergesort_b.c Add support for some block functions that come from OS X. These are 2014-04-02 16:07:48 +00:00
ptsname.3 According to a clarification at http://austingroupbugs.net/view.php?id=503 2012-09-12 17:54:09 +00:00
ptsname.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
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
qsort_r.c Silence a warning with GCC that was breaking the build with Juniper's GCC. 2014-04-05 08:17:48 +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 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
radixsort.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
rand.3 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
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 Fix major copy/paste and other style errors. 2015-05-05 10:44:17 +00:00
reallocarray.c Import reallocarray(3) from OpenBSD 2015-05-01 18:32:16 +00:00
reallocf.3 Import jemalloc 9ef7f5dc34ff02f50d401e41c8d9a4a928e7c2aa (dev branch, 2012-04-17 07:22:14 +00:00
reallocf.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
realpath.3 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
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 use .Mt to mark up email addresses consistently (part4) 2014-06-23 08:25:03 +00:00
strfmon.c libc: further adoption of SPDX licensing ID tags. 2017-11-25 17:12:48 +00:00
strtod.3 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
strtoimax.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtol.3 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
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 Make example more correct (errstr is a pointer, not boolean). 2013-08-18 10:33:46 +00:00
strtonum.c Minor style tweaks. 2014-08-13 03:44:30 +00:00
strtoq.c General further adoption of SPDX licensing ID tags. 2017-11-20 19:49:47 +00:00
strtoul.3 Renumber clauses to reduce diffs to other versions 2013-06-13 00:19:30 +00:00
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 Document the fact that system(3) can easily be misused due to shell meta 2015-07-25 00:21:29 +00:00
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.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
tsearch_path.h Let tsearch()/tdelete() use an AVL tree. 2015-12-22 18:12:11 +00:00
twalk.c Improve typing of POSIX search tree functions. 2016-10-13 18:25:40 +00:00