32, 64

Option Type Default Value #pragma options C C++
-qoption - - x x

Syntax

    -q32 | -q64

Purpose
Selects either 32- or 64-bit compiler mode.

Notes
The -q32 and -q64 options override the compiler mode set by the value of the OBJECT_MODE environment variable, if it exists. If the -q32 and -q64 options are not specified, and the OBJECT_MODE environment variable is not set, the compiler defaults to 32-bit output mode.

If the compiler is invoked in in 64-bit mode, the __64BIT__ preprocessor macro is defined.

Use -q32 and -q64 options, along with the -qarch and -qtune compiler options, to optimize the output of the compiler to the architecture on which that output will be used. Refer to the Acceptable Compiler Mode and Processor Architecture Combinations table for valid combinations of the -q32, -q64, -qarch, and -qtune compiler options. In 64-bit mode, -qarch=com is treated the same as -qarch=ppc.

Using -qarch=ppc or any ppc family architecture with -qfloat=hssngl or -qfloat=hsflt may produce incorrect results on rs64b or future systems.

Example
To specify that the executable program testing compiled from myprogram.c is to run on a computer with a 32-bit PowerPC architecture, enter:

xlC -o testing myprogram.c -q32 -qarch=ppc

Important Notes!

  1. If you mix 32-and 64-bit compilation modes for different source files, your XCOFF objects will not bind. You must recompile completely to ensure that all objects are in the same mode.
  2. Your link options must reflect the type of objects you are linking. If you compiled 64-bit objects, you must link these objects using 64-bit mode.


Specify Compiler Options for Architecture-Specific, 32- or 64-bit Compilation


Acceptable Compiler Mode and Processor Architecture Combinations
List of Batch Compiler Options and Their Defaults
Options that Define the Compiler Object Code Produced
Equivalent Batch Compile-Link and Incremental Build Options