64-bit object capability
The 64-bit object capability of the IBM® Open XL C/C++ compiler addresses increasing demand for larger storage requirements and greater processing power.
The AIX® operating system provides an environment that allows you to develop and execute programs that exploit 64-bit processors through the use of 64-bit address spaces.
To support larger executables that can fit within a 64-bit address space, a separate 64-bit
object format is used. The binder binds
these objects to create 64-bit executables. Objects that are bound together must all be of the same
object format. The following scenarios are not permitted and will fail to link, load, or execute:
- A 64-bit object or executable that has references to symbols from a 32-bit library or shared library
- A 32-bit object or executable that has references to symbols from a 64-bit library or shared library
- A 64-bit executable that explicitly attempts to load a 32-bit module
- A 32-bit executable that explicitly attempts to load a 64-bit module
- Attempts to run 64-bit applications on 32-bit platforms
IBM Open XL C/C++ supports 64-bit mode mainly through the use of the -m64 and -mcpu compiler options. This combination determines the bit mode and instruction set for the target architecture.
For more information, see Using 32-bit and 64-bit modes in the IBM Open XL C/C++ Migration Guide.