Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ieee_flags(3M)

ieee_functions(3M)

ieee_handler(3M)

floatingpoint(5)

ieee_sun(3M)

NAME

ieee_sun, fp_class, isinf, isnormal, issubnormal, iszero, signbit, nonstandard_arithmetic, standard_arithmetic, ieee_retrospective − miscellaneous functions for IEEE arithmetic

SYNOPSIS

cc [ flag ... ] file ... −lsunmath -lm [ library ... ]

#include <sunmath.h>

enum fp_class_type fp_class(double x);

int isinf(double x);

int isnormal(double x);

int issubnormal(double x);

int iszero(double x);

int signbit(double x);

void nonstandard_arithmetic(void);

void standard_arithmetic(void);

#include <stdio.h>

void ieee_retrospective(FILE ∗f);

DESCRIPTION

Please see ieee_functions(3M) for a description of a few more commonly used (and standardized) ANSI/IEEE Std 754-1985 related functions. 

Most of the functions provide capabilities suggested in the Appendix of ANSI/IEEE Std 754-1985. 

fp_class(x) corresponds to the IEEE’s class() and classifies x as zero, subnormal, normal, ∞, or quiet or signaling NaN; <floatingpoint.h> defines enum fp_class_type.

The following functions return 0 if the indicated condition is not satisfied:

isinf(x) returns 1 if x is ∞

isnormal(x) returns 1 if x is normal

issubnormal(x) returns 1 if x is subnormal

iszero(x) returns 1 if x is zero

signbit(x) returns 1 if x’s sign bit is set

nonstandard_arithmetic() and standard_arithmetic() are meaningful on systems that provide an alternative faster mode of floating-point arithmetic that does not conform to the default IEEE Standard.  Nonstandard modes vary among implementations; nonstandard mode may, for instance, result in setting subnormal results to zero or in treating subnormal operands as zero, or both, or something else.  standard_arithmetic() reverts to the default standard mode.  On systems that provide only one mode, these functions have no effect. 

ieee_retrospective(f) prints a message to the FILE ∗f listing all non-default floating-point modes and status in effect when called, including IEEE accrued exception-occurred status bits, IEEE rounding direction and precision modes, IEEE trap-enable modes, and nonstandard arithmetic mode.  Programs linked with −fast or −fnonstd, however, print a message about that instead of listing enabled traps and nonstandard arithmetic mode.  ieee_retrospective(f) is intended to be used at the end of a program to indicate exceptional floating-point conditions that might have affected the result. 

SEE ALSO

ieee_flags(3M), ieee_functions(3M), ieee_handler(3M), floatingpoint(5). 

SunOS ProWorks_3.0.1  —  Last change: 1 Sep 1993

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026