Commit Graph

85 Commits

Author SHA1 Message Date
David Schultz
57276bb6ea Un-document the non-extant exp10() and exp10f() functions.
exp10() was a casualty of the transition away from the VAX.
2005-02-26 08:54:45 +00:00
Ruslan Ermilov
1f8ee0e102 Typo. 2005-01-28 21:14:16 +00:00
Ruslan Ermilov
d7a604cc33 Properly terminate sentence. 2005-01-28 21:13:34 +00:00
David Schultz
29bf6af890 - Move the functions presently described in in ieee(3) to their own
manpages.  They are not very related, so separating them makes it
  easier to add meaningful cross-references and extend some of the
  descriptions.
- Move the part of math(3) that discusses IEEE 754 to the ieee(3)
  manpage.
2005-01-27 05:46:17 +00:00
David Schultz
52611c608e Many changes, including the following major ones:
- Rearrange the list of functions into categories.
- Remove the ulps column.  It was appropriate for only some
  of the functions in the list, and correct for even fewer
  of them.
- Add some new paragraphs, and remove some old ones about
  NaNs that may do more harm than good.
- Document precisions other than double-precision.
2005-01-23 22:05:33 +00:00
David Schultz
d5580d091a Add fma() and fmaf(), which implement a fused multiply-add operation. 2005-01-22 09:53:18 +00:00
Ruslan Ermilov
24a0682c64 Sort sections. 2005-01-20 09:17:07 +00:00
Ruslan Ermilov
5391441c05 Use the \*(If string provided by mdoc(7), to represent infinity. 2005-01-16 16:49:10 +00:00
Ruslan Ermilov
1fbb01b7f0 Removed redundant .br call. 2005-01-16 16:46:14 +00:00
David Schultz
8e26469445 Remove numerous references to VAX floating-point and the setting of
errno, replacing them with a discussion of IEEE exceptions where
appropriate.  Cross-reference fenv(3) whenever exceptions are
mentioned.
2005-01-14 23:28:28 +00:00
Ruslan Ermilov
e880667b92 Tiny markup nits. 2005-01-14 09:12:05 +00:00
Stefan Farfeleder
749f5f532e Fixed too many of "the", and enclose multi-word argument in double quotes.
Obtained from:	ru
2005-01-13 20:33:42 +00:00
Ruslan Ermilov
83e0359d53 Markup nits. 2005-01-13 10:43:01 +00:00
Ruslan Ermilov
113ed1bb1d Fixed too many of "the", and enclose multi-word argument in double quotes. 2005-01-13 09:35:47 +00:00
Stefan Farfeleder
43295fac79 Implement and document ceill(). 2005-01-13 09:11:41 +00:00
Stefan Farfeleder
4067ee86a5 Bump .Dd for the last commit. 2005-01-13 09:08:16 +00:00
Stefan Farfeleder
7e2ee1f065 Hook up and document floorl(). 2005-01-12 22:16:26 +00:00
David Schultz
2aac156d2e Document [l]lrint[f]() and [l]lround[f](). 2005-01-11 23:12:17 +00:00
Ruslan Ermilov
2d82ac3110 Scheduled mdoc(7) sweep. 2005-01-11 20:50:51 +00:00
Ruslan Ermilov
4e05ab77a8 Sanitize the markup, as prompted. 2005-01-11 20:16:03 +00:00
David Schultz
dbc8f2b5ce More updates for math(3):
- Make some minor rearrangements in the introduction.
- Mention the problem with argument reduction on i386.
- Add recently-implemented functions to the table.
- Un-document the error bounds that only apply to the old 4BSD math
  library, and fill in the correct values where I know them.  No
  attempt has been made to document bounds lower than 1 ulp, although
  smaller bounds are usually achievable in round-to-nearest mode.
2004-10-11 20:13:52 +00:00
Stefan Farfeleder
2fd3a32ee1 Add and document ilogbl(), a long double version of ilogb(). 2004-10-11 18:13:52 +00:00
Stefan Farfeleder
bef5493789 Add man pages for the cimag(), conj() and creal() functions. 2004-08-07 23:03:36 +00:00
David Schultz
ec79bc0da9 Fix two bugs in the signbit() macro, which was implemented last year:
- It was added to libc instead of libm.  Hopefully no programs rely
  on this mistake.

- It didn't work properly on large long doubles because its argument
  was converted to type double, resulting in undefined behavior.
2004-07-19 08:16:10 +00:00
David Schultz
9428e108c9 Add C99's nearbyint{,f}() functions as wrappers around rint().
These trivial implementations are about 25 times slower than
rint{,f}() on x86 due to the FP environment save/restore.
They should eventually be redone in terms of fegetround() and
bit fiddling.
2004-07-06 04:46:08 +00:00
Ruslan Ermilov
30950a21e1 Eliminate double whitespace. 2004-07-03 22:30:10 +00:00
Ruslan Ermilov
1a0a934547 Mechanically kill hard sentence breaks. 2004-07-02 23:52:20 +00:00
Ruslan Ermilov
862b46f607 Markup, grammar, punctuation. 2004-07-01 18:20:57 +00:00
David Schultz
4f82cb46c4 Implement and document fdim{,f,l}, fmax{,f,l}, and fmin{,f,l}. 2004-06-30 07:04:01 +00:00
David Schultz
f7748f6e01 Uncomment some functions that we now support. 2004-06-20 10:39:09 +00:00
David Schultz
a9a0bf07f3 Cross-reference round(3) and trunc(3) as appropriate. 2004-06-20 09:27:17 +00:00
David Schultz
7ffaea8021 Implement trunc() and truncf(). 2004-06-20 09:25:43 +00:00
David Schultz
2f90a15e14 Add trivial implementations of scalbln() and scalblnf().
These routines are specified in C99 for the sake of
architectures where an int isn't big enough to represent
the full range of floating-point exponents.  However,
even the 128-bit long double format has an exponent smaller
than 15 bits, so for all practical purposes, scalbln() and
scalblnf() are aliases for scalbn() and scalbnf(), respectively.
2004-06-20 09:25:27 +00:00
Stefan Farfeleder
32ef5abfe3 Document ilogb()'s return values in terms of the FP_ILOGB* macros. 2004-06-19 09:33:29 +00:00
David Schultz
2a6bf1fadb Memory's free, but all the world ain't a VAX anymore. Bring math.3
kicking and screaming into the 1980's.  This change converts most of
the markup from man(7) to mdoc(7) format, and I believe it removes or
updates everything that was flat out wrong.  However, much work is
still needed to sanitize the markup, improve coverage, and reduce
overlap with other manpages.  Some of the sections would better belong
in a philosophy_of_w_kahan.3 manpage, but they are informative and
remain at least as reminders of topics to cover.

Reviewed by:	doc@, trhodes@
2004-06-19 03:25:28 +00:00
David Schultz
9772caa388 The references to scalbn and scalbnf should be scalb and scalbf.
(The former are actually useful, and ieee_test(3) only documents
functions that aren't.)  Add a sentence describing the domain of
scalb() and scalbf().
2004-06-12 04:40:47 +00:00
David Schultz
d0f1363370 Add round(3) and roundf(3) and the associated documentation.
PR:		59797
Submitted by:	"Steven G. Kargl" <kargl@troutmask.apl.washington.edu>
Reviewed by:	bde (earlier version, last year)
2004-06-07 08:05:36 +00:00
David Schultz
07235cc8f7 Add documentation for:
- fenv(3)
- feclearexcept(3), fegetexceptflag(3), feraiseexcept(3),
  fesetexceptflag(3), fetestexcept(3)
- fegetround(3), fesetround(3)
- fegetenv(3), feholdexcept(3), fesetenv(3), feupdateenv(3)

Reviewed by:	standards@
2004-06-06 10:06:26 +00:00
Stefan Farfeleder
b60cb13f76 Add an implementation of copysignl(), a long double version of copysign().
Approved by:	das (mentor)
2004-05-07 18:56:31 +00:00
Stefan Farfeleder
89c5bc6db4 The prototypes for cabs() and cabsf() are in <complex.h>. Fix their arguments'
types and describe them briefly.

Reviewed by:	ru, bde
Approved by:	das (mentor)
2004-05-06 13:11:18 +00:00
Dag-Erling Smørgrav
801517fd4e Document fabsl(3).
Submitted by:	Stefan Farfeleder <stefan@fafoe.narf.at>
2003-10-25 13:45:11 +00:00
Ruslan Ermilov
3892c30012 mdoc(7) police: Nits. 2003-03-02 21:04:21 +00:00
Warner Losh
457f6cd2d6 - gamma_r, lgamma_r, gammaf_r, and lgammaf_r were protected by _REENTRANT
in math.h; the consensus here was that __BSD_VISIBLE was correct instead.

- gamma_r, lgamma_r, gammaf_r, and lgammaf_r had no documentation in the
  lgamma(3) manpage.

Reviewed by: standards@
Submitted by: Ben Mesander
2003-02-26 13:12:03 +00:00
Jens Schweikhardt
57bd0fc6e8 english(4) police. 2002-12-27 12:15:40 +00:00
Bruce Evans
46d7c2979e Resurrect Lite1's gamma() as C99's tgamma(). Minimal changes. 2002-03-26 11:59:29 +00:00
Bruce Evans
675902aa73 Fixed some bugs in the description of plain gamma() (and gammaf()).
Give a more detailed and correct history of when gamma() was actually
the gamma function.
2002-03-26 10:18:20 +00:00
Ruslan Ermilov
f598d0519c Grammar nit. 2001-11-21 09:25:14 +00:00
Ruslan Ermilov
487d13c0e7 mdoc(7) police: fixed bugs from rev. 1.15. 2001-11-20 16:40:04 +00:00
David Malone
a9dbc63dc2 gamma(x) actually returns \log(|\Gamma(x)|), so correct the man
page and add an historical note explaining this. This patch is
based on Stephen's.

We still need someone to implement tgamma.

PR:		28972, 31764
Submitted by:	Stephen Montgomery-Smith <stephen@math.missouri.edu>
2001-11-05 10:10:33 +00:00
Dima Dorfman
211feb6175 Match parenthesis and don't give names to return values.
PR:		31214
2001-10-15 13:34:43 +00:00