diff options
author | Peter Valchev <pvalchev@cvs.openbsd.org> | 2002-02-16 05:17:52 +0000 |
---|---|---|
committer | Peter Valchev <pvalchev@cvs.openbsd.org> | 2002-02-16 05:17:52 +0000 |
commit | 2544ae041415b528cf5a68f8fb1b914f4cd86cfb (patch) | |
tree | 132071d6291400bad960ec1d296e3a8423fe12a7 /lib/libc/gen/fpgetmask.3 | |
parent | 8748ab1e818ac31e0880e861b220c5090c98a3b9 (diff) |
MI man page to document fpgetmask(3) and friends; from ross@NetBSD, ok deraadt
Diffstat (limited to 'lib/libc/gen/fpgetmask.3')
-rw-r--r-- | lib/libc/gen/fpgetmask.3 | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/lib/libc/gen/fpgetmask.3 b/lib/libc/gen/fpgetmask.3 new file mode 100644 index 00000000000..f136158b815 --- /dev/null +++ b/lib/libc/gen/fpgetmask.3 @@ -0,0 +1,130 @@ +.\" $OpenBSD: fpgetmask.3,v 1.1 2002/02/16 05:17:51 pvalchev Exp $ +.\" $NetBSD: fpgetmask.3,v 1.3 2001/09/16 02:57:03 wiz Exp $ +.\" +.\" Copyright (c) 1999 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Ross Harvey. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the NetBSD +.\" Foundation, Inc. and its contributors. +.\" 4. Neither the name of The NetBSD Foundation nor the names of its +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.Dd April 29, 1999 +.Dt FPGETMASK 3 +.Os +.Sh NAME +.Nm fpgetmask , +.Nm fpgetround , +.Nm fpgetsticky , +.Nm fpsetmask , +.Nm fpsetround , +.Nm fpsetsticky +.Nd IEEE FP mode control +.Sh SYNOPSIS +.Fd #include <ieeefp.h> +.Ft fp_except +.Fn fpgetmask void +.Ft fp_rnd +.Fn fpgetround void +.Ft fp_except +.Fn fpgetsticky void +.Ft fp_except +.Fn fpsetmask fp_except\ mask +.Ft fp_rnd +.Fn fpsetround fp_rnd\ rnd_dir +.Ft fp_except +.Fn fpsetsticky fp_except\ sticky +.Sh DESCRIPTION +A rounding mode is one of +.Dv FP_RZ , FP_RM , FP_RN , +or +.Dv FP_RP , +for rounding towards zero, rounding +.Pq Em Minus infinity +down, rounding to +.Em nearest , +and rounding +.Pq Em Plus infinity +up. +The default mode is +.Dv FP_RN . +.Pp +An +.Ft fp_except +value is a bitmask specifying an exception type and containing any of +the values listed below. +.Bl -column -offset indent FP_X_UFLxx +.It Dv FP_X_INV Ta Invalid\ Operation +.It Dv FP_X_DZ Ta Division\ by\ zero +.It Dv FP_X_OFL Ta Overflow +.It Dv FP_X_UFL Ta Underflow +.It Dv FP_X_IMP Ta Imprecision (inexact) +.It Dv FP_X_IOV Ta Integer\ Overflow +.El +.Pp +.Pp +The +.Fn fpsetmask +function will cause future operations with the specified result status to +raise the +.Dv SIGFPE +exception. +The +.Fn fpsetround +function will cause future operations to use the specified dynamic mode. +.Bl -tag -width Note:x +.It Em Note : +On some architectures, instructions can optionally specify static +rounding modes and exception enables that will supersede the specified +dynamic mode. On other architectures, these features may not be fully +supported. +.El +.Pp +The +.Fn fpsetsticky +function will set or clear the specified exception history bits. +.Sh RETURN VALUES +The +.Fn fpgetround +and +.Fn fpsetround +functions return the +.Pq previous +rounding mode. +The +.Fn fpgetmask , +.Fn fpsetmask , +.Fn fpgetsticky , +and +.Fn fpsetsticky +functions return the +.Pq previous +exception mask and exception history bits. +.Sh SEE ALSO +.Xr sigaction 2 |