<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openbsd/src/lib/libc/stdlib/qsort.c, branch OPENBSD_7_9</title>
<subtitle>A mirror of https://github.com/libressl/openbsd.git
</subtitle>
<id>https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9</id>
<link rel='self' href='https://git.lua4.win/openbsd/atom?h=OPENBSD_7_9'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/'/>
<updated>2017-05-30T14:54:09+00:00</updated>
<entry>
<title>Don't fall back to heapsort() if we would otherwise switch to</title>
<updated>2017-05-30T14:54:09+00:00</updated>
<author>
<name>millert</name>
<email></email>
</author>
<published>2017-05-30T14:54:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=9bb08519777cb36d56fcc2f3de3f9004de1b7361'/>
<id>urn:sha1:9bb08519777cb36d56fcc2f3de3f9004de1b7361</id>
<content type='text'>
insertion sort (when the number of elements is &lt; 7).
</content>
</entry>
<entry>
<title>Support swapping 32-bit aligned elements on 64-bit platforms.</title>
<updated>2017-05-24T21:18:25+00:00</updated>
<author>
<name>millert</name>
<email></email>
</author>
<published>2017-05-24T21:18:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=582bf8c75ad625f174914c547cfe5b962ba1f539'/>
<id>urn:sha1:582bf8c75ad625f174914c547cfe5b962ba1f539</id>
<content type='text'>
Previously they would be swapped a byte at a time when sizeof(int)
!= sizeof(long).  Idea from FreeBSD.
</content>
</entry>
<entry>
<title>Use David Musser's introsort algorithm to fall back to heapsort(3)</title>
<updated>2017-05-20T12:48:56+00:00</updated>
<author>
<name>millert</name>
<email></email>
</author>
<published>2017-05-20T12:48:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=30956d9c9f96333df0339b2915356b533d25eac0'/>
<id>urn:sha1:30956d9c9f96333df0339b2915356b533d25eac0</id>
<content type='text'>
when the recursion depth reaches 2*lg(n + 1).  This avoids quicksort's
quadratic behavior for pathological input without appreciably
changing the average run time.
</content>
</entry>
<entry>
<title>The BSD qsort() performs tail recursion elimination on the second</title>
<updated>2017-05-17T16:58:20+00:00</updated>
<author>
<name>millert</name>
<email></email>
</author>
<published>2017-05-17T16:58:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=2b54a8bc04e76c465705df661ebf37030e912cf7'/>
<id>urn:sha1:2b54a8bc04e76c465705df661ebf37030e912cf7</id>
<content type='text'>
side of the array being partitioned to save on stack space.  Greater
savings can be gained by choosing recursion for the smaller side
of the partition and eliminating recursion for the larger side.
This also results in a small but measurable performance gain.
OK otto@ schwarze@
</content>
</entry>
<entry>
<title>Remove unnecessary casts of 'a' to char * since 'a' is already char *.</title>
<updated>2017-01-04T15:20:30+00:00</updated>
<author>
<name>millert</name>
<email></email>
</author>
<published>2017-01-04T15:20:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=da00babddfa64469738880736e1d616936cc2b95'/>
<id>urn:sha1:da00babddfa64469738880736e1d616936cc2b95</id>
<content type='text'>
This is a remnant from the original 4.4BSD code that had 'a' as
void * in the function args.  No binary change.  OK bluhm@
</content>
</entry>
<entry>
<title>Wrap &lt;stdlib.h&gt; so that calls go direct and the symbols not in the</title>
<updated>2015-09-13T08:31:48+00:00</updated>
<author>
<name>guenther</name>
<email></email>
</author>
<published>2015-09-13T08:31:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=e85bde5645a66155108c2a88d25fa62993a3f2bb'/>
<id>urn:sha1:e85bde5645a66155108c2a88d25fa62993a3f2bb</id>
<content type='text'>
C standard are all weak.
Apply __{BEGIN,END}_HIDDEN_DECLS to gdtoa{,imp}.h, hiding the
arch-specific __strtorx, __ULtox_D2A, __strtorQ, __ULtoQ_D2A symbols.
</content>
</entry>
<entry>
<title>Disable the "switch to insertion sort" optimization to avoid quadratic</title>
<updated>2014-06-12T14:54:25+00:00</updated>
<author>
<name>millert</name>
<email></email>
</author>
<published>2014-06-12T14:54:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=d38659785547b6c35ab79fdce9be9eaacbdb4c26'/>
<id>urn:sha1:d38659785547b6c35ab79fdce9be9eaacbdb4c26</id>
<content type='text'>
behavior for certain inputs.  From NetBSD.  OK tedu@
</content>
</entry>
<entry>
<title>Use size_t in appropriate places; fixes sorting of big arrays;</title>
<updated>2010-02-08T11:04:07+00:00</updated>
<author>
<name>otto</name>
<email></email>
</author>
<published>2010-02-08T11:04:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=f6129285462a0eff1c43458954cfc5ac8b927444'/>
<id>urn:sha1:f6129285462a0eff1c43458954cfc5ac8b927444</id>
<content type='text'>
after the diff was written, I made it similar to the freebsd fix of
the same code; pr6287 ok millert@ guenther@
</content>
</entry>
<entry>
<title>zap remaining rcsid.</title>
<updated>2005-08-08T08:05:37+00:00</updated>
<author>
<name>espie</name>
<email></email>
</author>
<published>2005-08-08T08:05:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=d7398a270c9cd1b7b4d545ed70ea24384781a86c'/>
<id>urn:sha1:d7398a270c9cd1b7b4d545ed70ea24384781a86c</id>
<content type='text'>
Kill old files that are no longer compiled.

okay theo
</content>
</entry>
<entry>
<title>ansi + de-register</title>
<updated>2005-03-30T18:51:49+00:00</updated>
<author>
<name>pat</name>
<email></email>
</author>
<published>2005-03-30T18:51:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/openbsd/commit/?id=894b6ab0099e7d9ca2ad9acb75246cd0a4542167'/>
<id>urn:sha1:894b6ab0099e7d9ca2ad9acb75246cd0a4542167</id>
<content type='text'>
ok otto deraadt
</content>
</entry>
</feed>
