#
0dd5a560 |
| 28-Jan-2024 |
Steve Kargl <kargl@FreeBSD.org> |
lib/msun: Cleanup after $FreeBSD$ removal
Remove no longer needed explicit inclusion of sys/cdefs.h.
PR: 276669 MFC after: 1 week
|
#
dc36d6f9 |
| 23-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
lib: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl s
lib: Remove ancient SCCS tags.
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script.
Sponsored by: Netflix
show more ...
|
Revision tags: release/14.0.0 |
|
#
1d386b48 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0, release/12.2.0, release/11.4.0, release/12.1.0, release/11.3.0, release/12.0.0, release/11.2.0, release/10.4.0, release/11.1.0 |
|
#
242b2482 |
| 09-Oct-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r306412 through r306905.
|
#
a01a51a3 |
| 05-Oct-2016 |
Ed Maste <emaste@FreeBSD.org> |
libm: remove unused variables
Sponsored by: The FreeBSD Foundation
|
Revision tags: release/11.0.1, release/11.0.0, release/10.3.0, release/10.2.0 |
|
#
9268022b |
| 19-Nov-2014 |
Simon J. Gerraty <sjg@FreeBSD.org> |
Merge from head@274682
|
Revision tags: release/10.1.0 |
|
#
2a382033 |
| 14-Oct-2014 |
Glen Barber <gjb@FreeBSD.org> |
Reintegrate head@r273095
Sponsored by: The FreeBSD Foundation
|
#
c81ab40b |
| 11-Oct-2014 |
Alexander V. Chernikov <melifaro@FreeBSD.org> |
Merge HEAD@r272944.
|
#
ed6aacb5 |
| 11-Oct-2014 |
Neel Natu <neel@FreeBSD.org> |
IFC @r272887
|
#
a4e4b355 |
| 10-Oct-2014 |
Steve Kargl <kargl@FreeBSD.org> |
The value small=2**-(p+3), where p is the precision, can be determine from lgamma(x) = -log(x) - log(1+x) + x*(1-g) + x**2*P(x) with g = 0.57... being the Euler constant and P(x) a polynomial. Subst
The value small=2**-(p+3), where p is the precision, can be determine from lgamma(x) = -log(x) - log(1+x) + x*(1-g) + x**2*P(x) with g = 0.57... being the Euler constant and P(x) a polynomial. Substitution of small into the RHS shows that the last 3 terms are negligible in comparison to the leading term. The choice of 3 may be conservative.
The value large=2**(p+3) is detemined from Stirling's approximation lgamma(x) = x*(log(x)-1) - log(x)/2 + log(2*pi)/2 + P(1/x)/x Again, substitution of large into the RHS reveals the last 3 terms are negligible in comparison to the leading term.
Move the x=+-0 special case into the |x|<small block.
In the ld80 and ld128 implementaion, use fdlibm compatible comparisons involving ix, lx, and llx. This replaces several floating point comparisons (some involving fabsl()) and also fixes the special cases x=1 and x=2.
While here . Remove unnecessary parentheses. . Fix/improve comments due to the above changes. . Fix nearby whitespace.
* src/e_lgamma_r.c: . Sort declaration. . Remove unneeded explicit cast for type conversion. . Replace a double literal constant by an integer literal constant.
* src/e_lgammaf_r.c: . Sort declaration.
* ld128/e_lgammal_r.c: . Replace a long double literal constant by a double literal constant.
* ld80/e_lgammal_r.c: . Remove unused '#include float.h' . Replace a long double literal constant by a double literal constant.
Requested by: bde
show more ...
|
#
1ce4b357 |
| 04-Oct-2014 |
Alexander V. Chernikov <melifaro@FreeBSD.org> |
Sync to HEAD@r272516.
|
#
b6cf6c8c |
| 20-Sep-2014 |
Neel Natu <neel@FreeBSD.org> |
IFC @r271887
|
#
f382031d |
| 17-Sep-2014 |
Steve Kargl <kargl@FreeBSD.org> |
For targets that have a signed zero, lgamma_r(-0, &signgamp) should set signgamp = -1.
Submitted by: enh at google dot com (e_lgamma[f]_r.c)
|
#
4e27d36d |
| 17-Sep-2014 |
Neel Natu <neel@FreeBSD.org> |
IFC @r271694
|
#
f7efd14d |
| 16-Sep-2014 |
Steve Kargl <kargl@FreeBSD.org> |
* Makefile: . Hook e_lgammal[_r].c to the build. . Create man page links for lgammal[-r].3.
* Symbol.map: . Sort lgammal to its rightful place. . Add FBSD_1.4 section for the new lgamal_r sy
* Makefile: . Hook e_lgammal[_r].c to the build. . Create man page links for lgammal[-r].3.
* Symbol.map: . Sort lgammal to its rightful place. . Add FBSD_1.4 section for the new lgamal_r symbol.
* ld128/e_lgammal_r.c: . 128-bit implementataion of lgammal_r().
* ld80/e_lgammal_r.c: . Intel 80-bit format implementation of lgammal_r().
* src/e_lgamma.c: . Expose lgammal as a weak reference to lgamma for platforms where long double is mapped to double.
* src/e_lgamma_r.c: . Use integer literal constants instead of real literal constants. Let compiler(s) do the job of conversion to the appropriate type. . Expose lgammal_r as a weak reference to lgamma_r for platforms where long double is mapped to double.
* src/e_lgammaf_r.c: . Fixed the Cygnus Support conversion of e_lgamma_r.c to float. This includes the generation of new polynomial and rational approximations with fewer terms. For each approximation, include a comment on an estimate of the accuracy over the relevant domain. . Use integer literal constants instead of real literal constants. Let compiler(s) do the job of conversion to the appropriate type. This allows the removal of several explicit casts of double values to float.
* src/e_lgammal.c: . Wrapper for lgammal() about lgammal_r().
* src/imprecise.c: . Remove the lgamma.
* src/math.h: . Add a prototype for lgammal_r().
* man/lgamma.3: . Document the new functions.
Reviewed by: bde
show more ...
|