ALL31 (non-CICS)
IBM defaults to and strongly recommends optimizing for AMODE 31 routines, specified
by ALL31(ON). When ALL31(ON) is specified :
- AMODE switching across calls to Language Environment
common run-time routines is minimized. For example, no AMODE switching is performed on calls to
Language Environment callable services.
- In COBOL, EXTERNAL data is allocated in unrestricted storage.
You must specify ALL31(OFF) by enabling the checkbox if your applications contain one of
the following programs :
- A Fortran program that has not been compiled with VS FORTRAN Version 1 or Version 2
that requires 24-bit addressing
- A VS COBOL II NORES program
- An OS/VS COBOL program
- An AMODE 24 COBOL program
Otherwise, use the default of ALL31(ON). If you have programs that require you to use
ALL31(OFF), it is recommended that you update them to take advantage of the ALL31(ON)
performance considerations noted below. ALL31(OFF) has the following implications :
- AMODE switching across calls to Language Environment common run-time routines is
performed. For example, AMODE switching is performed on calls to Language Environment
callable services.
- In COBOL, EXTERNAL data is allocated in storage below the 16 MB line.
- STACK will automatically be set to STACK(,,BELOW).
- Language Environment will preallocate BELOWHEAP instead of ANYHEAP storage.
Performance Consideration :
- If your application consists entirely of AMODE 31 routines, it might run faster and use
less below-the-line storage with ALL31(ON), since mode switching code is not required.
Notes :
- When an application is running in an XPLINK environment,
either as specified by the XPLINK(ON) option or by an initial program that contained at least
one XPLINK-compiled part, the ALL31 run-time option will be forced to ON. No AMODE 24 routines
are allowed in an enclave that uses XPLINK. No message will be
issued to indicate this action.
- z/OS UNIX System Services consideration : The ALL31 option applies to the
enclave.