IEEE Modules and support (Fortran 2003)

XL Fortran offers support for IEEE floating–point functionality as specified in the Fortran 2003 standard. The standard defines the IEEE_EXCEPTIONS module for exceptions, the IEEE_ARITHMETIC module to support IEEE arithmetic, and IEEE_FEATURES to specify the IEEE features supported by the compiler.

When using the IEEE_EXCEPTIONS, or IEEE_ARITHMETIC intrinsic modules, the XL Fortran compiler enforces several Fortran 2003 rules regarding the scope of changes to the floating-point status concerning rounding mode, halting mode, and exception flags. This can impede the performance of programs that use these modules, but do not utilize the new floating-point status semantics. For such programs, the –qstrictieeemod compiler option is provided to relax the rules on saving and restoring floating-point status.

Notes:
  • XL Fortran Extended Precision floating–point numbers are not in the format suggested by the IEEE standard. As a result, some parts of the modules do not support REAL(16).
  • On Linux, IEEE modules generate SIGFPE signals.


Voice your opinion on getting help information Ask IBM compiler experts a technical question in the IBM XL compilers forum Reach out to us