diff options
author | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-12-08 08:06:49 +0000 |
---|---|---|
committer | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-12-08 08:06:49 +0000 |
commit | d658011316dbae0762a14f294c9395a3a33ac103 (patch) | |
tree | 2b1ed8c40ac9bc96e92cf0633b01f6ea4c4a5e23 /libquadmath/libquadmath.texi | |
parent | 7d17fab3d03af64501d703bcb59f8870220c4ed1 (diff) | |
download | gcc-d658011316dbae0762a14f294c9395a3a33ac103.tar.gz |
2010-12-08 Tobias Burnus <burnus@net-b.de>
PR fortran/46543
* configure.ac: Add texinfo checks.
* Makefile.am: Handle .texi documentation.
* libquadmath.texi: New.
* configure: Regenerated.
* Makefile.in: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167583 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libquadmath/libquadmath.texi')
-rw-r--r-- | libquadmath/libquadmath.texi | 291 |
1 files changed, 291 insertions, 0 deletions
diff --git a/libquadmath/libquadmath.texi b/libquadmath/libquadmath.texi new file mode 100644 index 00000000000..ab8ed01932b --- /dev/null +++ b/libquadmath/libquadmath.texi @@ -0,0 +1,291 @@ +\input texinfo @c -*-texinfo-*- + +@c %**start of header +@setfilename libquadmath.info +@settitle GCC libquadmath +@c %**end of header + +@copying +Copyright @copyright{} 2010 Free Software Foundation, Inc. + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,'' +and with the Back-Cover Texts as in (a) below. A copy of the +license is included in the section entitled ``GNU Free Documentation +License.'' + +(a) The FSF's Back-Cover Text is: ``You have the freedom to +copy and modify this GNU manual. +@end quotation +@end copying + +@ifinfo +@dircategory GNU Libraries +@direntry +* libquadmath: (libquadmath). GCC Quad-Precision Math Library +@end direntry + +This manual documents the GCC Quad-Precision Math Library API. + +Published by the Free Software Foundation +51 Franklin Street, Fifth Floor +Boston, MA 02110-1301 USA + +@insertcopying +@end ifinfo + + +@setchapternewpage odd + +@titlepage +@title The GCC Quad-Precision Math Library +@page +@vskip 0pt plus 1filll +@comment For the @value{version-GCC} Version* +@sp 1 +Published by the Free Software Foundation @* +51 Franklin Street, Fifth Floor@* +Boston, MA 02110-1301, USA@* +@sp 1 +@insertcopying +@end titlepage + +@summarycontents +@contents +@page + + +@node Top +@top Introduction +@cindex Introduction + +This manual documents the usage of libquadmath, the GCC Quad-Precision +Math Library Application Programming Interface (API). + + +@comment +@comment When you add a new menu item, please keep the right hand +@comment aligned to the same column. Do not use tabs. This provides +@comment better formatting. +@comment +@menu +* Math Library Routines:: The Libquadmath math runtime application + programming interface. +* I/O Library Routines:: The Libquadmath I/O runtime application + programming interface. +* GNU Free Documentation License:: + How you can copy and share this manual. +* Reporting Bugs:: How to report bugs in GCC Libquadmath. +@c * Index:: Index of this documentation. +@end menu + + +@c --------------------------------------------------------------------- +@c Math routines +@c --------------------------------------------------------------------- + +@node Math Library Routines +@chapter Math Library Routines + +The following mathematical functions are available: + +@table @asis +@item @code{acosq}: arc cosine function +@item @code{acoshq}: inverse hyperbolic cosine function +@item @code{asinq}: arc sine function +@item @code{asinhq}: inverse hyperbolic sine function +@item @code{atanq}: arc tangent function +@item @code{atanhq}: inverse hyperbolic tangent function +@item @code{atan2q}: arc tangent function +@item @code{cbrtq}: cube root function +@item @code{ceilq}: ceiling value function +@item @code{copysignq}: copy sign of a number +@item @code{coshq}: hyperbolic cosine function +@item @code{cosq}: cosine function +@item @code{erfq}: error function +@item @code{erfcq}: complementary error function +@item @code{expq}: exponential function +@item @code{expm1q}: exponential minus 1 function +@need 800 +@item @code{fabsq}: absolute value function +@item @code{finiteq}: check finiteness of value +@item @code{floorq}: floor value function +@item @code{fmodq}: remainder value function +@item @code{frexpq}: extract mantissa and exponent +@item @code{hypotq}: Eucledian distance function +@item @code{isinfq}: check for infinity +@item @code{isnanq}: check for not a number +@item @code{j0q}: Bessel function of the first kind, first order +@item @code{j1q}: Bessel function of the first kind, second order +@item @code{jnq}: Bessel function of the first kind, @var{n}-th order +@item @code{ldexpq}: load exponent of the value +@item @code{lgammaq}: logarithmic gamma function +@item @code{llroundq}: round to nearest integer value away from zero +@item @code{logq}: natural logarithm function +@item @code{log10q}: base 10 logarithm function +@item @code{log1pq}: compute natural logarithm of the value plus one +@need 800 +@item @code{lroundq}: round to nearest integer value away from zero +@item @code{modfq}: decompose the floating-point number +@item @code{nanq}: return quiet NaN +@item @code{nextafterq}: next representable floating-point number +@item @code{powq}: power function +@item @code{remainderq}: remainder function +@item @code{rintq}: round-to-nearest integral value +@item @code{roundq}: round-to-nearest integral value, return @code{__float128} +@item @code{scalblnq}: compute exponent using @code{FLT_RADIX} +@item @code{scalbnq}: compute exponent using @code{FLT_RADIX} +@item @code{signbitq}: return sign bit +@item @code{sincosq}: calculate sine and cosine simulataneously +@item @code{sinhq}: hyperbolic sine function +@item @code{sinq}: sine function +@item @code{sqrtq}: square root function +@item @code{tanq}: tangent function +@item @code{tanhq}: hyperbolic tangent function +@need 800 +@item @code{tgammaq}: true gamma function +@item @code{truncq}: round to integer, towards zero +@item @code{y0q}: Bessel function of the second kind, first order +@item @code{y1q}: Bessel function of the second kind, second order +@item @code{ynq}: Bessel function of the second kind, @var{n}-th order +@item @code{cabsq} complex absolute value function: +@item @code{cargq}: calculate the argument +@item @code{ccosq} complex cosine function: +@item @code{ccoshq}: complex hyperbolic cosine function +@item @code{cexpq}: complex exponential function +@item @code{cexpiq}: computes the exponential function of ``i'' times a + real value +@item @code{clogq}: complex natural logarithm +@item @code{clog10q}: complex base 10 logarithm +@item @code{cpowq}: complex power function +@item @code{csinq}: complex sine function +@item @code{csinhq}: complex hyperbolic sine function +@need 800 +@item @code{csqrtq}: complex square root +@item @code{ctanq}: complex tangent function +@item @code{ctanhq}: complex hyperbolic tangent function +@end table + + +@c --------------------------------------------------------------------- +@c I/O routines +@c --------------------------------------------------------------------- + +@node I/O Library Routines +@chapter I/O Library Routines + +@menu +* @code{quadmath_strtopQ}: quadmath_strtopQ, Convert from string +* @code{quadmath_dtoaq}: quadmath_dtoaq, Convert to string +@end menu + + +@node quadmath_strtopQ +@section @code{quadmath_strtopQ} --- Convert from string + +The function @code{dmath_strtopQ} converts a string into a +@code{__float128} number. + +@table @asis +@item Syntax +@code{int quadmath_strtopQ (const char *s, char **sp, void *V)} + +@c The return values are defined in gdtoa/gdtoa.h STRTOG_* +@c However, the values are currently not exported - thus we +@c do not define them here, either. + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{s} @tab input string +@item @var{sp} @tab the address of the next character in the string +@item @var{V} @tab @code{__float128} containing the converted number +@end multitable + +The argument @var{sp} contains, if not @code{NULL}, the address of the +next character following the parts of the string, which have been read. + +@item Example +@smallexample +#include <quadmath.h> + +int main () +@{ + __float128 r; + char str[200]; + + quadmath_strtopQ ("1.2345678", NULL, &r); + + return 0; +@} +@end smallexample +@end table + + +@node quadmath_dtoaq +@section @code{quadmath_dtoaq} --- Convert to string + +The function @code{quadmath_dtoaq} converts a @code{__float128} floating-point +number into a string. + +@table @asis +@item Syntax +@code{void quadmath_dtoaq (char *s, size_t size, size_t n, __float128 x)} + +@item @emph{Arguments}: +@multitable @columnfractions .15 .70 +@item @var{s} @tab output string +@item @var{size} @tab byte size of the string, including tailing NUL +@item @var{n} @tab number of digits after the decimal point +@item @var{x} @tab the number to be converted +@end multitable + +@item Example +@smallexample +#include <quadmath.h> + +int main () +@{ + __float128 r; + char str[200]; + + r = 2.0q; + r = sqrtq(r); + quadmath_dtoaq (str, sizeof (str), 20, r); + printf("%s\n", str); + /* Prints: +1.41421356237309504880e+00 */ + return 0; +@} +@end smallexample +@end table + + +@c --------------------------------------------------------------------- +@c GNU Free Documentation License +@c --------------------------------------------------------------------- + +@include fdl.texi + +@c --------------------------------------------------------------------- +@c Reporting Bugs +@c --------------------------------------------------------------------- + +@node Reporting Bugs +@chapter Reporting Bugs + +Bugs in the GCC Quad-Precision Math Library implementation should be +reported via @value{BUGURL}. + + +@c --------------------------------------------------------------------- +@c Index +@c --------------------------------------------------------------------- + +@c @node Index +@c @unnumbered Index +@c +@c @printindex cp + +@bye |