Loading...
stdlib/psort.3.patch Libc-763.13 Libc-583
--- Libc/Libc-763.13/stdlib/psort.3.patch
+++ Libc/Libc-583/stdlib/psort.3.patch
@@ -1,8 +1,8 @@
---- psort.3.orig	2010-10-07 21:34:52.000000000 -0700
-+++ psort.3	2010-10-07 21:45:11.000000000 -0700
-@@ -32,60 +32,20 @@
+--- psort.3.orig	2009-05-20 15:59:00.000000000 -0700
++++ psort.3	2009-05-20 16:08:34.000000000 -0700
+@@ -36,60 +36,20 @@
  .\"     @(#)qsort.3	8.1 (Berkeley) 6/4/93
- .\" $FreeBSD: src/lib/libc/stdlib/qsort.3,v 1.17 2007/01/09 00:28:10 imp Exp $
+ .\" $FreeBSD: src/lib/libc/stdlib/qsort.3,v 1.15 2004/07/02 23:52:12 ru Exp $
  .\"
 -.Dd September 30, 2003
 -.Dt QSORT 3
@@ -69,7 +69,7 @@
  .Fa "void *base"
  .Fa "size_t nel"
  .Fa "size_t width"
-@@ -93,7 +53,7 @@
+@@ -97,7 +57,7 @@
  .Fc
  #ifdef UNIFDEF_BLOCKS
  .Ft void
@@ -78,7 +78,7 @@
  .Fa "void *base"
  .Fa "size_t nel"
  .Fa "size_t width"
-@@ -101,7 +61,7 @@
+@@ -105,7 +65,7 @@
  .Fc
  #endif
  .Ft void
@@ -87,7 +87,7 @@
  .Fa "void *base"
  .Fa "size_t nel"
  .Fa "size_t width"
-@@ -110,210 +70,63 @@
+@@ -114,255 +74,60 @@
  .Fc
  .Sh DESCRIPTION
  The
@@ -209,12 +209,12 @@
 -Normally,
 -.Fn qsort
 -is faster than
--.Fn mergesort
+-.Fn mergesort ,
 -which is faster than
 -.Fn heapsort .
 -Memory availability and pre-existing order in the data can make this
 -untrue.
- #ifdef UNIFDEF_BLOCKS
+-#ifdef UNIFDEF_BLOCKS
 -.Pp
 -The
 -.Fn heapsort_b ,
@@ -225,12 +225,29 @@
 -that the
 -.Fa compar
 -callback is a block pointer instead of a function pointer.
+-#endif
+-.Sh RETURN VALUES
+-The
+ #ifdef UNIFDEF_BLOCKS
+-.Fn qsort ,
+-.Fn qsort_b
 +.Fn psort ,
 +.Fn psort_b ,
-+#else
+ #else
+-.Fn qsort
 +.Fn psort
  #endif
-+and
+ and
+-.Fn qsort_r
+-functions
+-return no value.
+-.Pp
+-#ifdef UNIFDEF_BLOCKS
+-.ds HEAPSORT_B heapsort_b
+-.ds MERGESORT_B mergesort_b
+-#endif
+-.Rv -std heapsort \*[HEAPSORT_B] mergesort \*[MERGESORT_B]
+-.Sh ERRORS
 +.Fn psort_r
 +functions are parallel sort routines that are drop-in compatible with the
 +corresponding
@@ -267,43 +284,17 @@
 +Like
 +.Xr qsort 3 ,
 +the sort is not stable.
- .Sh RETURN VALUES
++.Sh RETURN VALUES
  The
  #ifdef UNIFDEF_BLOCKS
--.Fn qsort ,
--.Fn qsort_b
+-.Fn heapsort ,
+-.Fn heapsort_b ,
+-.Fn mergesort
+-and
+-.Fn mergesort_b
 +.Fn psort ,
 +.Fn psort_b
  #else
--.Fn qsort
-+.Fn psort
- #endif
- and
--.Fn qsort_r
-+.Fn psort_r
- functions
- return no value.
--.Pp
--#ifdef UNIFDEF_BLOCKS
--.ds HEAPSORT_B heapsort_b
--.ds MERGESORT_B mergesort_b
--#endif
--.Rv -std heapsort \*[HEAPSORT_B] mergesort \*[MERGESORT_B]
--.Sh COMPATIBILITY
--Previous versions of
--.Fn qsort
--did not permit the comparison routine itself to call
--.Fn qsort 3 .
--This is no longer true.
--.Sh ERRORS
--The
--#ifdef UNIFDEF_BLOCKS
--.Fn heapsort ,
--.Fn heapsort_b ,
--.Fn mergesort ,
--and
--.Fn mergesort_b
--#else
 -.Fn heapsort
 -and
 -.Fn mergesort
@@ -321,7 +312,8 @@
 -#ifdef UNIFDEF_BLOCKS
 -or
 -.Fn mergesort_b
--#endif
++.Fn psort
+ #endif
 -is less than
 -.Dq "sizeof(void *) / 2" .
 -.It Bq Er ENOMEM
@@ -329,19 +321,71 @@
 -#ifdef UNIFDEF_BLOCKS
 -.Fn heapsort ,
 -.Fn heapsort_b ,
--.Fn mergesort ,
--or
+-.Fn mergesort
+-and
 -.Fn mergesort_b
 -#else
 -.Fn heapsort
--or
--.Fn mergesort
--#endif
--functions
+ and
+-.Fn mergesort
+-#endif
++.Fn psort_r
+ functions
 -were unable to allocate memory.
 -.El
-+.Sh SEE ALSO
+-.Sh COMPATIBILITY
+-Previous versions of
+-.Fn qsort
+-did not permit the comparison routine itself to call
+-.Fn qsort 3 .
+-This is no longer true.
++return no value.
+ .Sh SEE ALSO
+-.Xr sort 1 ,
+-.Xr radixsort 3
+-.Rs
+-.%A Hoare, C.A.R.
+-.%D 1962
+-.%T "Quicksort"
+-.%J "The Computer Journal"
+-.%V 5:1
+-.%P pp. 10-15
+-.Re
+-.Rs
+-.%A Williams, J.W.J
+-.%D 1964
+-.%T "Heapsort"
+-.%J "Communications of the ACM"
+-.%V 7:1
+-.%P pp. 347-348
+-.Re
+-.Rs
+-.%A Knuth, D.E.
+-.%D 1968
+-.%B "The Art of Computer Programming"
+-.%V Vol. 3
+-.%T "Sorting and Searching"
+-.%P pp. 114-123, 145-149
+-.Re
+-.Rs
+-.%A McIlroy, P.M.
+-.%T "Optimistic Sorting and Information Theoretic Complexity"
+-.%J "Fourth Annual ACM-SIAM Symposium on Discrete Algorithms"
+-.%V January 1992
+-.Re
+-.Rs
+-.%A Bentley, J.L.
+-.%A McIlroy, M.D.
+-.%T "Engineering a Sort Function"
+-.%J "Software--Practice and Experience"
+-.%V Vol. 23(11)
+-.%P pp. 1249-1265
+-.%D November\ 1993
+-.Re
+-.Sh STANDARDS
+-The
+-.Fn qsort
+-function
+-conforms to
+-.St -isoC .
 +.Xr qsort 3
- .Sh SEE ALSO
- .Xr sort 1 ,
- .Xr radixsort 3