Library /sys$common/syshlp/helplib.hlb  —  System Services, $IEEE SET FP CONTROL (Alpha and Integrity servers)
    On Alpha and Integrity server systems, modifies IEEE floating-
    point state and, optionally, returns the previous value.

    The service provides the mechanism to set the specified state
    bits, to clear the specified state bits, and to swap one set of
    state bits for another.

    Format

      SYS$IEEE_SET_FP_CONTROL  [clrmsk] ,[setmsk] ,[prvmsk]

    C Prototype

      int sys$ieee_set_fp_control  (struct _ieee *clrmsk, struct

                                   _ieee *setmsk, struct _ieee

                                   *prvmsk);

1  –  Arguments

 clrmsk

    OpenVMS usage:mask_quadword
    type:         quadword (unsigned)
    access:       read only
    mechanism:    by reference
    Address of a quadword bit mask to be cleared in the IEEE
    floating-point control register.

    The $IEEEDEF macro defines symbols for the floating-point
    control register. The following table shows the symbols, their
    corresponding masks, and their meaning:

    Table SYS-21 Format of the IEEE Floating-Point Control Register
                 (Alpha and Integrity servers)

    Symbol                 Mask    Meaning

    IEEE$M_TRAP_ENABLE_    2       Enable invalid operation exception
    INV
    IEEE$M_TRAP_ENABLE_    4       Enable divide by 0 exception
    DZE
    IEEE$M_TRAP_ENABLE_    8       Enable overflow exception
    OVF
    IEEE$M_TRAP_ENABLE_    10      Enable underflow exception
    UNF
    IEEE$M_TRAP_ENABLE_    20      Enable inexact exception
    INE
    IEEE$M_TRAP_ENABLE_    40      Enable denormal operand exception
    DNOE
    IEEE$M_MAP_DNZ         2000    Denormal operands are mapped to
                                   0.0
    IEEE$M_MAP_UMZ         4000    Underflow results are mapped to
                                   0.0
    IEEE$M_INHERIT         8000    Inherit FP state on thread create
    IEEE$M_STATUS_INV      20000   Invalid operation
    IEEE$M_STATUS_DZE      40000   Divide by 0
    IEEE$M_STATUS_OVF      80000   Overflow
    IEEE$M_STATUS_UNF      100000  Underflow
    IEEE$M_STATUS_INE      200000  Inexact
    IEEE$M_STATUS_DNO      400000  Denormal operand

 setmsk

    OpenVMS usage:mask_quadword
    type:         quadword (unsigned)
    access:       read only
    mechanism:    by reference
    Address of a quadword bit mask to be set in the IEEE floating-
    point control register.

    See the clrmsk argument for the format of the IEEE floating-point
    control register.

 prvmsk

    OpenVMS usage:mask_quadword
    type:         quadword (unsigned)
    access:       write only
    mechanism:    by reference
    Address of a quadword to receive the previous value of the IEEE
    floating-point control register.
Close Help