Commit Graph

342 Commits

Author SHA1 Message Date
drochner d81b3ce220 make an intermediate float variable "volatile" on i386 to work around a gcc
optimization problem: subsequent add/subs were done inside FPU registers,
with "double" precision, without rounding to "float" in between
2006-08-01 20:14:35 +00:00
matt d882b4c815 Rather than cast everything around (which upsets gcc4), use a union instead. 2006-07-08 00:28:21 +00:00
drochner 51086becae move manpages for frexp/ldexp/modf to libm -- the (most) implementation is
already there
2006-07-03 16:03:56 +00:00
mrg 9f0110033d noieee src is not strict-aliasing compliant. apply -fno-strict-aliasing. 2006-07-01 08:57:14 +00:00
mrg ec0b42887d build w_cabs.c/w_cabsf.c with -fno-builtin-cabs[f]
XXX: our cabs()/cabsf() are different to others.
2006-05-11 00:37:53 +00:00
wiz e4293af91f Sort SEE ALSO, bump date for previous. 2006-04-04 20:26:33 +00:00
drochner 75d99205fc we don't have FE_TOWARDZERO (yet), refer to FP_RZ instead 2006-03-31 12:17:41 +00:00
xtraeme 500730a394 Mention trunc(3), reminded by kjk. 2006-03-26 02:02:38 +00:00
kleink f4003bf348 Add LIBRARY. 2006-03-25 22:18:40 +00:00
uwe 2660f98628 Uncomment crossreference to round(3), we do have one. 2006-03-25 20:03:06 +00:00
uwe 0b2a86e51d Uncomment crossreference to trunc now that we have it. 2006-03-25 20:01:36 +00:00
xtraeme 3e96ddc120 Add __RCSID(), u_intX_t -> uintX_t.
cvs: ----------------------------------------------------------------------
2006-03-25 16:55:53 +00:00
xtraeme f1336fbda3 Add trunc() and truncf() C99 functions, from FreeBSD. 2006-03-25 16:41:11 +00:00
drochner b0f21ee1ea merge libc/arch/{i386,x86_64}/gen/modf.S into one
(not quite a merge actually, just an #ifdef for now)
and build it in the i386 case (amd64 should work, just needs to be tested)
That way, a program linking against libm should get the optimized
version as expected.
2006-03-22 20:45:58 +00:00
drochner 4ece2172cf Build the sun versions of frexp(), ldexp() and modf().
While the versions in libc/gen are prettier to look at, having single
precision versions in libm and double precision versions in libc causes
a lot of confusion, and to favor libm gets us coprocessor support.
2006-03-21 18:46:05 +00:00
drochner 0e514dc492 The second argument is not a float, so the "abi.h" abstraction
doesn't work.
Open-code the argument handling instead.
Should fix the ldexp() bug reported by Brendon Costa in port-amd64.
2006-03-21 11:35:21 +00:00
christos cd35252882 Use float constants! 2006-03-19 20:54:15 +00:00
christos a42e5c8db9 Coverity CID 562: Flip the order of the if statement to prevent unreachable
code.
2006-03-19 20:46:25 +00:00
christos fef1370818 Coverity CID 572: Comment out dead code. 2006-03-19 20:42:44 +00:00
christos 15da190f2c Coverity CID 573: Comment out unreachable code. 2006-03-19 20:41:24 +00:00
christos 4696019f20 Coverity CID 574: Unreachable code due to incorrect constants. Correct
constants according to the comments in the code, and add more comments.
2006-03-19 20:39:48 +00:00
christos 3511ea5c9b Coverity CID 575: comment out dead code. 2006-03-19 20:15:07 +00:00
wiz ca5de9d73f Bump date for previous. 2006-03-15 22:09:06 +00:00
kleink d73d316468 Add nan(3), nanf(3), and nanl(3); welcome libm.so.0.4. 2006-03-15 22:07:08 +00:00
kleink 0d57b38925 Note roundf() in STANDARDS, too. 2006-01-24 16:39:45 +00:00
is 42796049d0 C versions of non-IEEE round() / roundf(). Alas, using the VAX
cvtrdl; cvtld doesn't work for big numbers.
2006-01-17 13:16:08 +00:00
is e08ae477d9 Oops - round() is supposed to return double, not integer. 2006-01-17 10:39:23 +00:00
is 5703e44cdb Implement round(3), so that jot(1) can link again. 2006-01-15 12:39:44 +00:00
wiz c4b850a8a6 Add man page for l{,l}rint{,f}(3), very loosely based on the FreeBSD one.
Requested by martin@
Reviewed by drochner@
2005-09-16 15:26:47 +00:00
drochner 7ad8526195 activate e_atan2f.S which was there forever but not built, noticed
by Joerg Sonnenberger
2005-07-28 17:55:19 +00:00
rpaulo fcfde3ffb8 Bump minor version for log2{,f}. 2005-07-21 22:49:16 +00:00
rpaulo 1185f13617 Add i387 FPU routines for log2(3) and log2f(3).
ok christos@
2005-07-21 20:58:21 +00:00
christos 9aa540a2b5 Add wrappers for the newly added functions. Thanks Klaus! 2005-07-21 16:58:39 +00:00
wiz d957cc9d17 Punctuation fixes, bump date for log2{,f}. 2005-07-21 12:58:22 +00:00
christos e5c18e58f2 Add log2 and log2f from FreeBSD PR 83845 2005-07-21 12:55:58 +00:00
matt cedcd39661 Don't cast x to double, it already is one. 2005-05-03 04:18:32 +00:00
jmmv 8740cbe236 Add a conditional for proper m68k softfloat operation. It looks like I
forgot to commit this file back when this functionality was added.
Noted by Bruce O'Neel (the original author) in port-mac68k@.
2004-11-13 20:29:47 +00:00
drochner b774d2ae7d add licenses 2004-10-13 15:18:31 +00:00
drochner 458288a626 pull in an accuracy fix for corner cases from FDLIBM 5.3
(affects large arguments which are close to N*Pi+Pi/2):
    2. k_tan.c error was > 1 ulp target for FDLIBM
        5.2: Worst error at least 1.45 ulp at
        tan(1.7765241907548024E+269) = 1.7733884462610958E+16
        5.3: Worst error 0.96 ulp
2004-07-22 18:24:09 +00:00
drochner c351eda960 amd64: stack sanity, leave the return PC alone 2004-07-16 18:40:24 +00:00
junyoung ffb3101064 round(3) and roundf(3) appeared in 2.0.
Bump date.
2004-07-15 12:12:39 +00:00
wiz f46be40b71 Move RCS Id to top of file; comment out reference to trunc(3),
which we do not have.
2004-07-10 14:11:18 +00:00
junyoung bc836a3102 lib/24252: Add C99 functions round(3) and roundf(3).
libm minor unchanged; ride a recent bump.

From FreeBSD.
2004-07-10 13:49:09 +00:00
drochner 3e7f9e1481 allocate stack space for temporary storage 2004-07-02 10:17:23 +00:00
drochner 07be12b505 also provide an alpha assembler implemtation of lrint() 2004-07-01 19:08:21 +00:00
drochner 5d151d763f enable lrint.S for amd64 (which doesn't build libm387),
and tighten the generic->machdep source distribution a bit to avoid
unwanted substitutions
2004-07-01 17:33:16 +00:00
drochner af7cf00a5a provide an assembler implementation of lrint() for i386 and amd64 2004-07-01 17:30:48 +00:00
drochner 9768ef916d bump libm minor version (functions added) 2004-07-01 16:14:18 +00:00
drochner 147d852dbc being here, add the (l)lround(f) functions to libm
(almost the same like lrint)
2004-07-01 16:09:21 +00:00
drochner 54e35f616a aboid to shift an int by more than 31 bits - behaviour is implementation
dependant in this case
2004-07-01 16:06:30 +00:00