write_rnd(3)write_rnd(3)NAME
write_rnd, read_rnd - sets and returns IEEE dynamic rounding mode for
floating-point operations
SYNOPSIS
#include <float.h>
unsigned int write_rnd(
unsigned int rnd ); unsigned int read_rnd(
void );
LIBRARY
Standard C Library (libc.so, libc.a)
DESCRIPTION
The write_rnd() function sets the dynamic rounding mode in the float‐
ing-point control register (fpcr) for IEEE floating-point operations
and returns the previous dynamic rounding mode. Dynamic rounding mode
for IEEE floating-point operations is enabled for code generated by the
C compiler by specifying -fprm d to cc(1), and by using the d floating-
point instruction operator in assembly language code.
Specify rnd as one of the following constants defined in float.h:
─────────────────────────────────────────────────
Constant Meaning
─────────────────────────────────────────────────
FP_RND_RZ Round toward zero (chopped rounding)
FP_RND_RN Round toward nearest (normal round‐
ing)
FP_RND_RP Round toward plus infinity
FP_RND_RM Round toward minus infinity
─────────────────────────────────────────────────
The read_rnd() function returns the current dynamic rounding mode for
floating-point operations.
RETURN VALUES
The write_rnd() function returns the previous IEEE floating-point
rounding mode. The read_rnd() function returns the current IEEE float‐
ing-point rounding mode.
SEE ALSO
Commands: cc(1)
Files: float.h
Assembly Language Programmer's Guide
Alpha Architecture Reference Manual
IEEE Standard for Binary Floating-Point Arithmetic
write_rnd(3)