History log of /freebsd-11.0-release/lib/msun/Symbol.map
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 303975 11-Aug-2016 gjb

Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE
cycle.

Prune svn:mergeinfo from the new branch, and rename it to RC1.

Update __FreeBSD_version.

Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and
the dvd1.iso packages population.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 302408 08-Jul-2016 gjb

Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, as nothing has been merged
here.

Additional commits post-branch will follow.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


# 271651 15-Sep-2014 kargl

* 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


# 268593 13-Jul-2014 kargl

* Makefile:
. Add s_erfl.c to building libm.
. Add MLINKS for erfl.3 and erfcl.3.

* Symbol.map:
. Move erfl and erfcl to their proper location.

* ld128/s_erfl.c:
. Implementations of erfl and erfcl in the IEEE 754 128-bit format.

* ld80/s_erfl.c:
. Implementations of erfl and erfcl in the Intel 80-bit format.

* man/erf.3:
. Document the new functions.
. While here, remove an incomplete sentence.

* src/imprecise.c:
. Remove the stupidity of mapping erfl and erfcl to erf and erfc.

* src/math.h:
. Move the declarations of erfl and erfcl to their proper place.

* src/s_erf.c:
. For architectures where double and long double are the same
floating point format, use weak references to map erfl to
erf and ercl to erfc.

Reviewed by: bde (many earlier versions)


# 260067 30-Dec-2013 kargl

* Makefile:
. Hook coshl, sinhl, and tanhl into libm.
. Create symbolic links for corresponding manpages.
. While here remove a nearby extraneous space.

* Symbol.map:
* src/math.h:
. Move coshl, sinhl, and tanhl to their proper locations.

* man/cosh.3:
* man/sinh.3:
* man/tanh.3:
. Update the manpages.

* src/e_cosh.c:
* src/e_sinh.c:
* src/s_tanh.c:
. Add weak reference for LBDL_MANT_DIG==53 targets.

* src/imprecise.c:
. Remove the coshl, sinhl, and tanhl kludge.

* src/e_coshl.c:
. ld80 and ld128 implementation of coshl().

* src/e_sinhl.c:
. ld80 and ld128 implementation of sinhl().

* src/s_tanhl.c:
. ld80 and ld128 implementation of tanhl().

Obtained from: bde (mostly), das and kargl


# 255499 12-Sep-2013 dim

After r255294, building lib/msun's symbol map (using clang as the
preprocessor) gives the following error:

--- Version.map ---
<stdin>:287:4: error: invalid preprocessing directive
# Implemented as weak aliases for imprecise versions
^
1 error generated.

Change the comment to a C-style one, to prevent this error.

Approved by: re (hrs)


# 255294 06-Sep-2013 theraven

Add stub implementations of the missing C++11 math functions.
These are weak and so can be replaced by other versions in applications
that choose to do so, and will give a linker warning when used so that
applications that rely on the extra precision can avoid them.

Note that since the C/C++ specs only guarantee that long double has
precision equal to double, code that actually relies on these functions
having greater precision is unportable at best and broken at worst.


# 251599 10-Jun-2013 das

Add implementations of acoshl(), asinhl(), and atanhl(). This is a
merge of the work done by bde and myself.


# 251343 03-Jun-2013 kargl

ld80 and ld128 implementations of expm1l(). This code started life
as a fairly faithful implementation of the algorithm found in

PTP Tang, "Table-driven implementation of the Expm1 function
in IEEE floating-point arithmetic," ACM Trans. Math. Soft., 18,
211-222 (1992).

Over the last 18-24 months, the code has under gone significant
optimization and testing.

Reviewed by: bde
Obtained from: bde (most of the optimizations)


# 251292 03-Jun-2013 das

Add logl, log2l, log10l, and log1pl.

Submitted by: bde


# 251121 30-May-2013 das

I'm happy to finally commit stephen@'s implementations of cacos,
cacosh, casin, casinh, catan, and catanh. Thanks to stephen@ and bde@
for working on these.

Submitted by: stephen@
Reviewed by: bde


# 238722 23-Jul-2012 kargl

Compute the exponential of x for Intel 80-bit format and IEEE 128-bit
format. These implementations are based on

PTP Tang, "Table-driven implementation of the exponential function
in IEEE floating-point arithmetic," ACM Trans. Math. Soft., 15,
144-157 (1989).

PR: standards/152415
Submitted by: kargl
Reviewed by: bde, das
Approved by: das (mentor)


# 226458 17-Oct-2011 das

Add c{cos,sin,tan}{,h}{,f} functions. This is joint work with
bde and kargl.


# 226218 10-Oct-2011 das

Provide external definitions of all of the standardized functions in
fenv.h that are currently inlined.

The definitions are provided in fenv.c via 'extern inline'
declaractions. This assumes the compiler handles 'extern inline' as
specified in C99, which has been true under FreeBSD since 8.0.

The goal is to eventually remove the 'static' keyword from the inline
definitions in fenv.h, so that non-inlined references all wind up
pointing to the same external definition like they're supposed to.
I am deferring the second step to provide a window where
newly-compiled apps will still link against old math libraries.
(This isn't supported, but there's no need to cause undue breakage.)

Reviewed by: stefanf, bde


# 219576 12-Mar-2011 kargl

Take two. Add the missing file that should have been committed
with r219571 and re-enable building of cbrtl.

Implement the long double version for the cube root function, cbrtl.
The algorithm uses Newton's iterations with a crude estimate of the
cube root to converge to a result.

Reviewed by: bde
Approved by: das


# 219572 12-Mar-2011 kargl

Temporary disable the building of cbrtl until I
can determine why svn will not allow one to commit
a new file.

Approved by: das (implicit)


# 219571 12-Mar-2011 kargl

Implement the long double version for the cube root function, cbrtl.
The algorithm uses Newton's iterations with a crude estimate of the
cube root to converge to a result.

Reviewed by: bde
Approved by: das


# 219365 07-Mar-2011 das

Remove part of an uncommitted change that snuck into the last commit.


# 219359 07-Mar-2011 das

Add cexp() and cexpf().

Reviewed by: bde (earlier version)


# 216211 05-Dec-2010 das

Add log2() and log2f().


# 209110 12-Jun-2010 das

Introduce __isnanf() as an alias for isnanf(), and make the isnan()
macro expand to __isnanf() instead of isnanf() for float arguments.
This change is needed because isnanf() isn't declared in strict POSIX
or C99 mode.

Compatibility note: Apps using isnan(float) that are compiled after
this change won't link against an older libm.

Reported by: Florian Forster <octo@verplant.org>


# 181377 07-Aug-2008 das

Implement cproj{,f,l}().


# 181074 31-Jul-2008 das

Add implementations of acosl(), asinl(), atanl(), atan2l(),
and cargl().

Reviewed by: bde
sparc64 testing resources from: remko


# 179882 19-Jun-2008 das

Implement fmodl.
Document fmodl and fix some errors in the fmod manpage.


# 177766 30-Mar-2008 das

Hook remquol() and remainderl() up to the build.


# 177761 30-Mar-2008 das

Implement csqrtl().


# 177760 30-Mar-2008 das

Hook hypotl() and cabsl() up to the build.


# 176722 02-Mar-2008 das

Hook up sqrtl() to the build.


# 176388 18-Feb-2008 das

Add tgammaf() as a simple wrapper around tgamma().


# 176361 17-Feb-2008 das

Hook up sinl(), cosl(), and tanl() to the build.


# 175462 18-Jan-2008 das

Hook up exp2l() and related docs to the build.


# 175309 14-Jan-2008 das

Implement rintl(), nearbyintl(), lrintl(), and llrintl().
Thanks to bde@ for feedback and testing of rintl().


# 174732 18-Dec-2007 das

Remove z_abs(). The z_*() functions were in libf77, and for some reason
someone thought it would be a good idea to copy z_abs() to libm in 1994.
However, it's never been declared or documented anywhere, and I'm
reasonably confident that nobody uses it.

Discussed with: bde, deischen, kan


# 174698 17-Dec-2007 das

Add logbl(3) to libm.


# 174684 16-Dec-2007 das

Implement and document nan(), nanf(), and nanl(). This commit
adds two new directories in msun: ld80 and ld128. These are for
long double functions specific to the 80-bit long double format
used on x86-derived architectures, and the 128-bit format used on
sparc64, respectively.


# 174618 15-Dec-2007 das

1. Add csqrt{,f}(3).
2. Put carg{,f}(3) under the FBSD_1.1 namespace where it belongs
(requested by kan@)


# 174584 14-Dec-2007 das

Typo in previous commit


# 174583 14-Dec-2007 das

Symbol.map additions for carg and cargf. (They're in C99, so I didn't
add a new version for them.)


# 169092 29-Apr-2007 deischen

Use C comments since we now preprocess these files with CPP.


# 165855 07-Jan-2007 das

Implement modfl().


# 165837 06-Jan-2007 das

Remove modf from libm's symbol map. It's actually in libc for
hysterical raisins.


# 157196 27-Mar-2006 deischen

Add symbol versioning to libm.