auto-ilp32, Qauto-ilp32

Instructs the compiler to analyze the program to determine if there are 64-bit pointers which can be safely shrunk into 32-bit pointers.

IDE Equivalent

None

Architectures

Intel® 64 architecture, IA-64 architecture

Syntax

Linux and Mac OS X:

-auto-ilp32

Windows:

/Qauto-ilp32

Arguments

None

Default

OFF

The optimization is not attempted.

Description

This option instructs the compiler to analyze and transform the program so that 64-bit pointers are shrunk to 32-bit pointers, and 64-bit longs (on Linux) are shrunk into 32-bit longs wherever it is legal and safe to do so. In order for this option to be effective the compiler must be able to optimize using the -ipo/-Qipo option and must be able to analyze all library/external calls the program makes.

This option requires that the size of the program executable never exceeds 232 bytes and all data values can be represented within 32 bits. If the program can run correctly in a 32-bit system, these requirements are implicitly satisfied. If the program violates these size restrictions, unpredictable behavior might occur.

Alternate Options

None