Using compiler options to compile AMODE 64 programs
To compile a program to be AMODE 64, you must use the LP(64)
compiler
option. You should be aware that with LP(64)
some
compiler options or suboptions are discarded during compilation.
About this task
Note the following compiler options when you compile
with LP(64)
:
The compiler generated code for LP(64)
is reentrant and is enabled for DLL
support. The LP(64)
option implies RENT
. If
NORENT
is specified, the compiler discards this option with a warning message. When
LP(64)
is in effect, the DLL
and NODLL
options
are ignored, without warning, and NODLL
will always appear in the listing.
Object files produced by the compiler can be linked in DLL or non-DLL applications. When linking in
DLL application, specify the DYNAM(DLL)
and RENT
Binder options.
When linking in non-DLL application, specify the DYNAM(NO)
and
RENT
options.
The LP(64)
option
implies RMODE(ANY)
. If the RMODE(24)
option
is specified, the compiler discards the option with a warning message.
AMODE 64 COBOL programs are loaded below the bar.
The DATA(24)
option
is discarded when LP(64)
is in effect. Data items
in WORKING-STORAGE SECTION are allocated above the bar. Data items
in LOCAL section are allocated on the Language Environment® stack, which is also above
the bar.
These
two options control the compiler’s register usage and are discarded
by the compiler when LP(64)
is in effect. The generated
code is guaranteed to work in the Language Environment,
and can call or be called by other Language Environment AMODE
64 high-level languages. User application cannot control register
usage of the COBOL compiler.
CICS
, SQL
, SQLIMS
, SQLCCSID
, THREAD
These
options are discarded in LP(64)
. In addition, the
output of the SQL precompiler is not compatible with AMODE 64.
Runtime options
LP(64)
:AIXBLD
CBLQDA
DEBUG
SIMVRD
UPSI
ALL31
This option is meaningful only in AMODE 31.
CBLOPTS
CBLPSHPOP
This option applies only for OS VS program under CICS.
MSGFILE
This option is not supported by the Language Environment in AMODE 64.
RTEREUS
This option supports COBOL runtime reuse environment using a legacy design, and is not supported in
LP(64)
. To establish a reusable runtime environment, use the LE preinitialization environment feature.