Object code control options

The options in Table 1 affect the characteristics of the object code generated by the compiler.

Table 1. Object code control options
Option Description C Compile C++ Compile IPA Link More Information
ALIAS Generates ALIAS binder control statements, which help the binder locate modules in a load library, for each required entry point.   See detail
ARGPARSE Parses arguments provided on the invocation line. See detail
ARMODE Specifies that all functions in the C source file will operate in access-register (AR) mode. ARMODE must be used with the METAL compiler option.     See detail
ASMDATASIZE Provides the default data area size for the data areas defined by user-supplied assembly statements.     See detail
COMPRESS Suppresses the generation of function names in the function control block, thereby reducing the size of your application's load module. See detail
CSECT Instructs the compiler to generate CSECT names in the output object module. See detail
CVFT Shrinks the size of the writeable static area (WSA), and reduces the size of construction virtual function tables (CVFT), which in turn reduces the load module size to improve your application's performance.     See detail
DLL Generates object code for DLLs or DLL applications. See detail
DSAUSER When the Metal option is in effect, requests a user field of the size of a pointer to be reserved on the stack.     See detail
EPILOG (C only) Enables you to provide your own function exit code for all your functions that have extern scope.     See detail
EXECOPS Allows you to specify runtime options on the invocation line for the generated executable. See detail
EXH Controls whether C++ exception handling is enabled in the module being compiled.     See detail
EXPORTALL Exports all externally defined functions and variables in the compilation unit so that a DLL application can use them. See detail
GOFF Instructs the compiler to produce an object file in the Generalized Object File Format (GOFF). See detail
ILP32 Instructs the compiler to generate AMODE 31 code. See detail
LOCALE Specifies the locale to be used by the compiler as the current locale throughout the compilation unit. See detail
LONGNAME Provides support for external names of mixed case and up to 1024 characters long. See detail
LP64 Instructs the compiler to generate AMODE 64 code using the z/Architecture® 64-bit instructions. See detail
METAL Generates HLASM code that has no Language Environment® runtime dependencies and follows the MVS™ linkage conventions for passing parameters, returning values, and setting up function save areas.     See detail
OBJECTMODEL Sets the object model to be used for structures, unions, and classes.   See detail
PLIST Specifies that the original operating system parameter list should be available. See detail
PROLOG (C only) Enables you to provide your own function entry code for all your functions that have extern scope.     See detail
REDIR Allows redirection of stderr, stdin, and stdout from the command line. See detail
RENT Generates reentrant code.   See detail
RESERVED_REG Instructs the compiler not to use the specified general purpose register (GPR) during the compilation.     See detail
ROCONST Specifies the storage location for constant values. See detail
ROSTRING Specifies the storage type for string literals. See detail
RTTI Generates runtime type identification (RTTI) information for exception handling and for use by the typeid and dynamic_cast operators.     See detail
START Generates a CEESTART, which is an object that controls initialization at execution, when necessary. See detail
SYSSTATE Provides additional SYSSTATE macro parameters to the SYSSTATE macro that is generated by the compiler.   See detail
TARGET Generates an object module for the targeted operating system or runtime library. See detail
WSIZEOF Causes the sizeof operator to return the widened size for function return types. See detail
XPLINK Uses a z/OS® linkage specifically designed to increase performance. See detail