*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> f90/set_ieee_status (3)              
Title
Content
Arch
Section
 

Contents


SET_IEEE_STATUS(3I)				       Last changed: 1-6-98

NAME    [Toc]    [Back]

     SET_IEEE_STATUS - Restores	floating-point status

SYNOPSIS    [Toc]    [Back]

     SET_IEEE_STATUS ([STATUS=]status)

IMPLEMENTATION    [Toc]    [Back]

     UNICOS/mk and IRIX	systems

     CRAY T90 systems that support IEEE	floating-point arithmetic

STANDARDS    [Toc]    [Back]

     CF90 and MIPSpro 7	Fortran	90 compiler extension to Fortran 90

     IEEE Standard for Binary Floating-point Arithmetic

DESCRIPTION    [Toc]    [Back]

     The SET_IEEE_STATUS intrinsic subroutine is typically used	to restore
     the caller's floating-point status	just before exiting a procedure.
     It	accepts	the following argument:

     status    Must be scalar and of an	integer	type that occupies a full
	       word.  It is an INTENT(IN) argument.

	       On CRAY T90 systems that	support	IEEE floating-point
	       arithemetic, its	value (contained in a 64-bit word) is
	       stored into SR0.	 On other architectures, the flags are
	       stored into the appropriate flag	bits of	the word(s) or
	       register(s) that	record the floating-point state.

	       The value in status is assumed to have been produced through
	       an invocation of	GET_IEEE_STATUS(3I).

     The name of this intrinsic	cannot be passed as an argument.

NOTES    [Toc]    [Back]

     The IEEE intrinsic	procedures use the named constants contained in	a
     system module, so you must	include	one of the following statements	in
     your program:

     * On UNICOS and UNICOS/mk systems:	 USE CRI_IEEE_DEFINITIONS

     * On UNICOS, UNICOS/mk, and IRIX systems:	USE FTN_IEEE_DEFINITIONS

     The CRI_IEEE_DEFINITIONS module is	obsolescent.  It will be removed
     for the CF90 4.0 release.

     There are 6 bits, called the IEEE Floating	Point Exception	Status Bits
     or	the sticky bits, that indicate whether any one of 6 possible
     exceptions	has occurred (the 5 exceptions specified by the	IEEE
     floating-point standard and a Cray	Research extension).  The user
     program begins with these bits cleared to zero.  The occurrence of	any
     of	the exceptions will set	the corresponding bit.	Only the user can
     clear these bits.

EXAMPLES    [Toc]    [Back]

	! Assume this example demonstrates code	for an IRIX system
	! where	default	integer	type occupies a	full word.

	SUBROUTINE CALCULATE
	USE FTN_IEEE_DEFINITIONS
	INTEGER	 IEEE_STATUS
	...			    ! Only stmts here that can't change	the
				    ! floating point status.
	CALL GET_IEEE_STATUS(IEEE_STATUS)
	...			    ! Body of the procedure.
	CALL SET_IEEE_STATUS(IEEE_STATUS)
	END SUBROUTINE

     GET_IEEE_STATUS(3I) is called upon	entry to the example's procedure
     CALCULATE to capture the current floating-point status.  If procedure
     CALCULATE changes the floating-point status, the original
     floating-point status can be reset	before exiting from CALCULATE by
     calling SET_IEEE_STATUS.

SEE ALSO    [Toc]    [Back]

      
      
     GET_IEEE_STATUS(3I)

     Intrinsic Procedures Reference Manual, publication	SR-2138, for the
     printed version of	this man page.

SET_IEEE_STATUS(3I)				       Last changed: 1-6-98

NAME    [Toc]    [Back]

     SET_IEEE_STATUS - Restores	floating-point status

SYNOPSIS    [Toc]    [Back]

     SET_IEEE_STATUS ([STATUS=]status)

IMPLEMENTATION    [Toc]    [Back]

     UNICOS/mk and IRIX	systems

     CRAY T90 systems that support IEEE	floating-point arithmetic

STANDARDS    [Toc]    [Back]

     CF90 and MIPSpro 7	Fortran	90 compiler extension to Fortran 90

     IEEE Standard for Binary Floating-point Arithmetic

DESCRIPTION    [Toc]    [Back]

     The SET_IEEE_STATUS intrinsic subroutine is typically used	to restore
     the caller's floating-point status	just before exiting a procedure.
     It	accepts	the following argument:

     status    Must be scalar and of an	integer	type that occupies a full
	       word.  It is an INTENT(IN) argument.

	       On CRAY T90 systems that	support	IEEE floating-point
	       arithemetic, its	value (contained in a 64-bit word) is
	       stored into SR0.	 On other architectures, the flags are
	       stored into the appropriate flag	bits of	the word(s) or
	       register(s) that	record the floating-point state.

	       The value in status is assumed to have been produced through
	       an invocation of	GET_IEEE_STATUS(3I).

     The name of this intrinsic	cannot be passed as an argument.

NOTES    [Toc]    [Back]

     The IEEE intrinsic	procedures use the named constants contained in	a
     system module, so you must	include	one of the following statements	in
     your program:

     * On UNICOS and UNICOS/mk systems:	 USE CRI_IEEE_DEFINITIONS

     * On UNICOS, UNICOS/mk, and IRIX systems:	USE FTN_IEEE_DEFINITIONS

     The CRI_IEEE_DEFINITIONS module is	obsolescent.  It will be removed
     for the CF90 4.0 release.

     There are 6 bits, called the IEEE Floating	Point Exception	Status Bits
     or	the sticky bits, that indicate whether any one of 6 possible
     exceptions	has occurred (the 5 exceptions specified by the	IEEE
     floating-point standard and a Cray	Research extension).  The user
     program begins with these bits cleared to zero.  The occurrence of	any
     of	the exceptions will set	the corresponding bit.	Only the user can
     clear these bits.

EXAMPLES    [Toc]    [Back]

	! Assume this example demonstrates code	for an IRIX system
	! where	default	integer	type occupies a	full word.

	SUBROUTINE CALCULATE
	USE FTN_IEEE_DEFINITIONS
	INTEGER	 IEEE_STATUS
	...			    ! Only stmts here that can't change	the
				    ! floating point status.
	CALL GET_IEEE_STATUS(IEEE_STATUS)
	...			    ! Body of the procedure.
	CALL SET_IEEE_STATUS(IEEE_STATUS)
	END SUBROUTINE

     GET_IEEE_STATUS(3I) is called upon	entry to the example's procedure
     CALCULATE to capture the current floating-point status.  If procedure
     CALCULATE changes the floating-point status, the original
     floating-point status can be reset	before exiting from CALCULATE by
     calling SET_IEEE_STATUS.

SEE ALSO    [Toc]    [Back]

      
      
     GET_IEEE_STATUS(3I)

     Intrinsic Procedures Reference Manual, publication	SR-2138, for the
     printed version of	this man page.

[ Back ]
 Similar pages
Name OS Title
set_ieee_interrupts IRIX Restores floating-point interrupt status before exiting a procedure
set_ieee_exceptions IRIX Restores the caller's floating-point status prior to exiting a procedure
set_ieee_rounding_mode IRIX state and restores the floating-point rounding mode before exiting a procedure
get_ieee_exceptions IRIX floating-point exception status
get_ieee_interrupts IRIX floating-point interrupt status
get_ieee_status IRIX floating-point status upon entry to a procedure
pppstat IRIX Point-to-Point Protocol (PPP) Status
fpgetmask IRIX floating-point units
fpgetround FreeBSD IEEE floating point interface
fpsetround FreeBSD IEEE floating point interface
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service