FPGETMASK(3)            NetBSD Library Functions Manual           FPGETMASK(3)

NAME
     fpgetmask, fpgetprec, fpgetround, fpgetsticky, fpsetmask, fpsetprec,
     fpsetround, fpsetsticky -- IEEE FP mode control

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <ieeefp.h>

     fp_except_t
     fpgetmask(void);

     fp_prec_t
     fpgetprec(void);

     fp_rnd_t
     fpgetround(void);

     fp_except_t
     fpgetsticky(void);

     fp_except_t
     fpsetmask(fp_except_t mask);

     fp_prec_t
     fpsetprec(fp_prec_t prec);

     fp_rnd_t
     fpsetround(fp_rnd_t rnd_dir);

     fp_except_t
     fpsetsticky(fp_except_t sticky);

DESCRIPTION
     A rounding mode fp_rnd_t is one of:

           FP_RZ    rounding towards zero
           FP_RM    rounding down to (Minus infinity)
           FP_RN    rounding to nearest
           FP_RP    rounding down to (Plus infinity)
     The default mode is FP_RN.

     An fp_except_t value is a bitmask specifying an exception type and con-
     taining any of the values listed below.

           FP_X_INV      Invalid Operation
           FP_X_DZ       Division by zero
           FP_X_OFL      Overflow
           FP_X_UFL      Underflow
           FP_X_IMP      Imprecision (inexact)
           FP_X_IOV      Integer Overflow

     An fp_prec_t specifies the precision of the floating point operations
     listed below.

           FP_PS     24 bit (single-precision)
           FP_PRS    reserved
           FP_PD     53 bit (double-precision)
           FP_PE     64 bit (extended-precision)

     The fpsetmask() function will set the current exception mask, i.e., it
     will cause future operations with the specified result status to raise
     the SIGFPE exception.  The fpgetmask() function will return the current
     exception mask.

     The fpgetprec() function will return the current floating point preci-
     sion.  The fpsetprec() function will set the floating point precision and
     will return the previous precision.

     The fpsetround() function will cause future operations to use the speci-
     fied dynamic rounding mode.  The fpgetround() function will return the
     current rounding mode.

     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.

     A ``sticky'' status word may be maintained in which a bit is set every
     time an exceptional floating point condition is encountered, whether or
     not a SIGFPE is generated.  The fpsetsticky() function will set or clear
     the specified exception history bits.  The fpgetsticky() function will
     return the exception history bits.

RETURN VALUES
     The fpgetround() and fpsetround() functions return the (previous) round-
     ing mode.  The fpgetmask(), fpsetmask(), fpgetsticky(), and fpsetsticky()
     functions return the (previous) exception mask and exception history
     bits.

SEE ALSO
     sigaction(2), fenv(3)

BUGS
     There is no way to return an unsupported value.  Not all processors sup-
     port all the modes.  These interfaces are deprecated and the ones in
     fenv(3) should be used, although the interfaces in fenv(3) don't support
     getting or setting the precision.

NetBSD 7.0                      March 26, 2011                      NetBSD 7.0

You can also request any man page by name and (optionally) by section:

Command: 
Section: 
Architecture: 
Collection: 
 

Use the DEFAULT collection to view manual pages for third-party software.


©1994 Man-cgi 1.15, Panagiotis Christias <christia@softlab.ntua.gr>
©1996-2014 Modified for NetBSD by Kimmo Suominen