8 * libm: (libm). An ANSI-C conforming mathematical library.
14 This file documents an ANSI-C conforming mathematical subroutine library.
16 Copyright (C) 1992, 1993, 1995, 1996-2014 Red Hat, Inc.
18 @file{libm} includes software developed at SunPro, a Sun Microsystems,
19 Inc. business. Permission to use, copy, modify, and distribute this
20 software is freely granted, provided that this notice is preserved.
22 Permission is granted to make and distribute verbatim copies of
23 this manual provided the copyright notice and this permission notice
24 are preserved on all copies.
27 Permission is granted to process this file through Tex and print the
28 results, provided the printed document carries copying permission
29 notice identical to this one except for the removal of this paragraph
30 (this paragraph not being relevant to the printed manual).
33 Permission is granted to copy and distribute modified versions of this
34 manual under the conditions for verbatim copying, subject to the terms
35 of the GNU General Public License, which includes the provision that the
36 entire resulting derived work is distributed under the terms of a
37 permission notice identical to this one.
39 Permission is granted to copy and distribute translations of this manual
40 into another language, under the above conditions for modified versions.
44 @setchapternewpage odd
45 @settitle The Red Hat newlib C Math Library
47 @title The Red Hat newlib C Math Library
49 @subtitle @code{libm} 4.4.0
50 @subtitle December 2023
51 @author Steve Chamberlain
53 @author Red Hat Support
59 \hfill Red Hat Support\par
60 \hfill sac@@cygnus.com\par
61 \hfill pesch@@cygnus.com\par
62 \hfill jjohnstn@@redhat.com\par
64 \global\parindent=0pt % Steve likes it this way
67 @vskip 0pt plus 1filll
68 Copyright @copyright{} 1992, 1993, 1994-2004 Red Hat, Inc.
70 @file{libm} includes software developed at SunPro, a Sun Microsystems,
71 Inc. business. Permission to use, copy, modify, and distribute this
72 software is freely granted, provided that this notice is preserved.
74 Permission is granted to make and distribute verbatim copies of
75 this manual provided the copyright notice and this permission notice
76 are preserved on all copies.
78 Permission is granted to copy and distribute modified versions of this
79 manual under the conditions for verbatim copying, subject to the terms
80 of the GNU General Public License, which includes the provision that the
81 entire resulting derived work is distributed under the terms of a
82 permission notice identical to this one.
84 Permission is granted to copy and distribute translations of this manual
85 into another language, under the above conditions for modified versions.
95 * Math:: The mathematical functions (`math.h').
96 * Complex:: The mathematical complex functions (`complex.h').
97 * Fenv:: The floating point environment functions ('fenv.h').
98 * Reentrancy:: The functions in libm are not reentrant by default.
99 * Long Double Functions:: The long double function support of libm.
104 @include targetdep.tex
107 @chapter Reentrancy Properties of @code{libm}
110 @cindex @code{matherr} and reentrancy
111 When a libm function detects an exceptional case, @code{errno} may be
114 @c The exact behavior depends on the currently selected error handling
115 @c mode (IEEE or POSIX).
117 @code{errno} is a macro which expands to the per-thread error value.
118 This makes it thread safe, and therefore reentrant.
120 @node Long Double Functions
121 @chapter The long double function support of @code{libm}
122 Currently, the full set of long double math functions is only provided
123 on platforms where long double equals double.
124 For such platforms, the long double math functions are implemented as calls to the double versions.
127 @unnumbered Document Index
131 @unnumbered Function Index
135 % I think something like @@colophon should be in texinfo. In the
137 \long\def\colophon{\hbox to0pt{}\vfill
138 \centerline{The body of this manual is set in}
139 \centerline{\fontname\tenrm,}
140 \centerline{with headings in {\bf\fontname\tenbf}}
141 \centerline{and examples in {\tt\fontname\tentt}.}
142 \centerline{{\it\fontname\tenit\/} and}
143 \centerline{{\sl\fontname\tensl\/}}
144 \centerline{are used for emphasis.}\vfill}
146 % Blame: pesch@@cygnus.com, 28mar91.