xref: /illumos-gate/usr/src/man/man3m/fesetprec.3m (revision 1ed6b69a5ca1ca3ee5e9a4931f74e2237c7e1c9f)
te
Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
fesetprec 3M "12 Jul 2006" "SunOS 5.11" "Mathematical Library Functions"
NAME
fesetprec, fegetprec - control floating point rounding precision modes
SYNOPSIS

c99 [ flag... ] file... -lm [ library... ]
#include <fenv.h> 

int fesetprec(int prec);

int fegetprec(void);
DESCRIPTION

The IEEE 754 standard defines rounding precision modes for systems that always deliver intermediate results to destinations in extended double precision format. These modes allow such systems to deliver correctly rounded single and double precision results (in the absence of underflow and overflow) with only one rounding.

The fesetprec() function sets the current rounding precision to the precision specified by prec, which must be one of the following values defined in <fenv.h>:

FE_FLTPREC

round to single precision

FE_DBLPREC

round to double precision

FE_LDBLPREC

round to extended double precision

The default rounding precision when a program starts is FE_LDBLPREC.

The fegetprec() function returns the current rounding precision.

RETURN VALUES

The fesetprec() function returns a non-zero value if the requested rounding precision is established and 0 otherwise.

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
ArchitectureIntel (see below)
AvailabilitySUNWlibms
Interface StabilityStable
MT-LevelMT-Safe

These functions are not available on SPARC systems because SPARC processors deliver intermediate results to destinations in single or double format as determined by each floating point instruction.

SEE ALSO

fegetenv(3M), fesetround(3M), attributes(5)

Numerical Computation Guide