Support is added for the Institute of Electrical and Electronics Engineers (IEEE) binary floating-point (IEEE floating-point) data type, in conformance with the IEEE 754 standard, as applicable to the S/390 environment. Applications that use floating-point can now be more easily ported from other platforms to S/390.

The C/C++ compiler support includes the FLOAT option. The FLOAT option selects the format of floating-point numbers produced in a compile unit. The FLOAT option allows you to select either IEEE floating-point format or S/390 hexadecimal floating-point (hexadecimal floating-point) format. For information on the C/C++ compiler options see the OS/390 V2R6 C/C++ User's Guide

The C/C++ run-time library interfaces, which formerly supported only hexadecimal floating-point format, have been changed in OS/390 Version 2 Release 6 to support both IEEE floating-point and hexadecimal floating-point formats. These interfaces are documented in the OS/390 C/C++ Run-Time Library Reference - IEEE Floating-Point Supplement" (ieeertl.pdf)

IEEE floating-point is provided on S/390 primarily to enhance interoperability and portability between S/390 and other platforms. It is anticipated that IEEE floating-point will be most commonly used for new and ported applications, and in emerging environments, such as Java. Customers should not migrate existing applications that use hexadecimal floating-point to IEEE floating-point, unless there is a specific reason (such as a need to interoperate with a non-S/390 platform).

The primary documentation for the IEEE floating-point support is contained in the "Enterprise Systems Architecture/390 Principles of Operation", SA22-7201, and the "OS/390 C/C++ User's Guide", SC09-2361. Additional C/C++ interfaces declared in <_Ieee754.h>, that you normally do not require for most applications, will be documented in "S/390 Language Environment for OS/390 & VM Vendor Interfaces", SY28-1152, with OS/390 Version 2 Release 7. If this information is needed earlier, you can view the OS/390 LanguageEnvironment for OS/390 & VM Vendor Interfaces - IEEE Floating-Point Supplement (pdf/ieeelev.pdf).

IBM does not recommend mixing floating-point formats in an application. However, for applications which must handle both formats, the C/C++ run-time library does provide some support which is described in the "OS/390 Language Environment for OS/390 & VM Vendor Interfaces - IEEE Floating-Point Supplement"

Note: You must have OS/390 Release 6 to use the IEEE floating-point instructions. In Release 6, the Base Control Program (BCP) is enhanced to support the new IEEE floating-point hardware in the IBM S/390 Generation 5 Server. This enables programs running on OS/390 Release 6 to use the IEEE floating-point instructions and 16 floating-point registers. In addition, the BCP provides simulation support for all the new floating-point hardware instructions. This enables applications that make light use of IEEE floating-point, and can tolerate the overhead of software simulation, to execute on OS/390 Release 6 without requiring an IBM S/390 Generation 5 Server.

To view PDF documents you must have the Adobe Acrobat Reader software installed. The software is free and can be installed by visiting the Adobe Acrobat Home Page at: http://www.adobe.com/prodindex/acrobat/readstep.html

Contact IBM

Browse z/OS