MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Mathematical Library Functions                            fma(3M)



NAME
     fma, fmaf, fmal - floating-point multiply-add

SYNOPSIS
     c99 [ flag... ] file... -lm [ library... ]
     #include 

     double fma(double x, double y, double z);


     float fmaf(float x, float y, float z);


     long double fmal(long double x, long double y, long double z);


DESCRIPTION
     These functions compute (x * y) ] z, rounded as one  ternary
     operation. They compute the value (as if) to infinite preci-
     sion and round once to the result format, according  to  the
     rounding mode characterized by the value of FLTROUNDS.

RETURN VALUES
     Upon successful completion, these functions return (x * y) ]
     z, rounded as one ternary operation.


     If x or y are NaN, a NaN is returned.


     If x multiplied by y is an exact infinity and z is  also  an
     infinity  but  with the opposite sign, a domain error occurs
     and a NaN is returned.


     If one of x and y is infinite, the other is 0, and z is  not
     a NaN, a domain error occurs and a NaN is returned.


     If x*y is not 0*Inf nor Inf*0 and z  is  a  NaN,  a  NaN  is
     returned.

ERORS
     These functions will fail if:

     Domain Error    The value of x*y]z is invalid or  the  value
                     x*y is invalid.

                     If the integer expression  (matherrhandling
                     &  MATHEREXCEPT)  is non-zero, the invalid
                     floating-point exception will be raised.




SunOS 5.11          Last change: 12 Jul 2006                    1






Mathematical Library Functions                            fma(3M)



     Range Error     The result overflows.

                     If the integer expression  (matherrhandling
                     &  MATHEREXCEPT) is non-zero, the overflow
                     floating-point exception will be raised.


USAGE
     An application wanting to check for exceptions  should  call
     feclearexcept(FEALEXCEPT) before calling these functions.
     On  return,  if  fetestexcept(FEINVALID    FEDIVBYZERO  
     FEOVERFLOW    FEUNDERFLOW)  is non-zero, an exception has
     been raised. An application should either examine the return
     value  or check the floating point exception flags to detect
     exceptions.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Standard                    
    
     MT-Level                     MT-Safe                     
    


SEE ALSO
     feclearexcept(3M), fetestexcept(3M),  math.h(3HEAD),  attri-
     butes(5), standards(5)





















SunOS 5.11          Last change: 12 Jul 2006                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™