| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Fix frexpl() declaration to not include the field name.
|
|
|
|
|
|
|
|
| |
r275819, r276176, r278154, r278160, r278339, r279127, r279240, r279491,
r279493, r279856, r283032, r284423, r284426, r284427, r284428
Merge changes to libm from the past 9 months. This includes improvements
to the Bessel functions and adds the C99 function lgammal.
|
|
|
|
|
|
|
|
|
|
|
| |
r268589 r268590 r268593 r268597 r269758 r270845 r270847 r270893 r270932
r270947 r271147
Merge libm work by kargl, bde and das from the past few months.
Besides optimisations and small bug fixes this includes new implementations
for C99 functions expl, coshl, sinhl, tanhl, erfl and erfcl.
Approved by: re (kib)
|
| |
|
|
|
|
| |
SUSv2 mode.
|
|
|
|
| |
Submitted by: Pasi Parviainen
|
|
|
|
| |
tgmath.h contains the same bugs and so should be fixed in the same way.
|
| |
|
| |
|
|
|
|
|
| |
Reviewed by: bde
MFC after: 3 days
|
|
|
|
| |
merge of the work done by bde and myself.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
| |
Submitted by: bde
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
| |
Submitted by: Yamaya Takashi
Reviewed by: das
MFC after: 1 week
|
|
|
|
|
|
|
| |
C++'s <cmath> to work without the compiler complaining that the C++ versions are calling implicitly-declared functions. You will still get a linker error when they are called. OpenBSD 5.0 claims to fully implement the C99 <math.h> stuff, so might be worth investigating...
Reviewed by: das
Approved by: dim (mentor)
|
|
|
|
|
|
| |
no longer "fast" on sparc64. (It really wasn't to begin with, since
the old implementation was using long doubles, and long doubles are
emulated in software on sparc64.)
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
| |
defined at all. See also: defect report #223.
|
|
|
|
|
|
|
|
| |
should both be floats, not doubles.
PR: 127795
Submitted by: Christoph Mallon
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
and cargl().
Reviewed by: bde
sparc64 testing resources from: remko
|
|
|
|
| |
Document fmodl and fix some errors in the fmod manpage.
|
| |
|
| |
|
|
|
|
| |
be overridden when hardware sqrt is available.
|
| |
|
|
|
|
| |
Submitted by: Steve Kargl <sgk@apl.washington.edu>
|
|
|
|
|
|
|
|
| |
long doubles (i386, amd64, ia64) and one for machines with 128-bit
long doubles (sparc64). Other platforms use the double version.
I've only done runtime testing on i386.
Thanks to bde@ for helpful discussions and bugfixes.
|
|
|
|
| |
Thanks to bde@ for feedback and testing of rintl().
|
|
|
|
|
|
|
| |
bde is going to commit logl() Real Soon Now.
I'm just trying to slow him down with merge conflicts.
Noticed by: bde
|
|
|
|
|
|
|
| |
committed yet, but the declaration leaked in when I added nan() and
friends.
Reported by: pav
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
comment.
|
|
|
|
|
|
|
| |
sparc64's 128-bit long doubles.
- Define FP_FAST_FMAL for ia64.
- Prototypes for fmal, frexpl, ldexpl, nextafterl, nexttoward{,f,l},
scalblnl, and scalbnl.
|
|
|
|
|
|
|
| |
C90, and other arcana. Most of these features were never fully
supported or enabled by default.
Ok: bde, stefanf
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
flags, so they are not pure. Remove the __pure2 annotation from them.
I believe that the following routines and their float and long double
counterparts are the only ones here that can be __pure2:
copysign is* fabs finite fmax fmin fpclassify ilogb nan signbit
When gcc supports FENV_ACCESS, perhaps there will be a new annotation
that allows the other functions to be considered pure when FENV_ACCESS
is off.
Discussed with: bde
|
|
|
|
| |
Pointy hat to: das
|
|
|
|
|
|
| |
basically support this, subject to gcc's lack of FENV_ACCESS support.
In any case, the previous setting of math_errhandling to 0 is not
allowed by POSIX.
|
| |
|
| |
|
| |
|