You are on page 1of 4

AMODE

Description: AMODE = Addressing Mode


(1) In MVS, a program attribute that refers to the address
length that a program is prepared to handle upon entry. In
MVS, addresses may be 24 or 31 bits in length.
(2) Provided by the linkage editor, the attribute of a load
module that indicates the addressing mode in which the load
module should be entered.
Note: see item name -TRADEMARKS for trademark information.
**************************************************************************
AMODE Instruction
The AMODE instruction specifies the addressing mode associated with
control sections in the object deck.
+------------------------------------------------------------------------+
|
|
| >>------------AMODE----24------------------------------------------->< |
|
+-name-+
+-31----|
|
|
+-64----|
|
|
+-ANY---|
|
|
+-ANY31-+
|
|
|
+------------------------------------------------------------------------+
name
Is one of the following:
o

An ordinary symbol

A variable symbol that has been assigned a character string


with a value that is valid for an ordinary symbol

A sequence symbol

Under CMS and MVS, if the extended object format is being


generated (GOFF assembler option), a relocatable symbol that
names an entry point specified on an ENTRY instruction.

24

Specifies that 24-bit addressing mode is to be associated with a


control section, or entry point.

31

Specifies that 31-bit addressing mode is to be associated with a


control section, or entry point.

64

Specifies that 64-bit addressing mode is to be associated with a


control section, or entry point

ANY

The same as ANY31.

ANY31

The control section or entry point is not sensitive to whether it


is entered in AMODE 24 or AMODE 31.

Any field of this instruction may be generated by a macro, or by


substitution in open code.
If name denotes an ordinary symbol, the ordinary symbol associates the
addressing mode with a control section. The ordinary symbol must also
appear in the name field of a START, CSECT, RSECT, or COM instruction in
this assembly.
If name is not specified, or if name is a sequence symbol, there must be
an unnamed control section in this assembly.
Notes:
1. AMODE can be specified anywhere in the assembly. It does not initiate
an unnamed control section.
2. An assembly can have multiple AMODE instructions; however, two AMODE
instructions cannot have the same name field.
3. The valid and invalid combinations of AMODE and RMODE are shown in the
following table.
+------------------------------------------------------------------------+
| Figure 25. AMODE/RMODE Combinations
|
+------------------------------------------------------------------------|
|
|
RMODE 24
|
RMODE 31 |
RMODE 64 |
+-----------------------+----------------+---------------+---------------|
| AMODE 24
|
OK
|
invalid
|
invalid
|
+-----------------------+----------------+---------------+---------------|
| AMODE 31
|
OK
|
OK
|
invalid
|
+-----------------------+----------------+---------------+---------------|
| AMODE ANYANY31
|
OK
|
OK
|
invalid
|
+-----------------------+----------------+---------------+---------------|
| AMODE 64
|
OK
|
OK
|
OK
|
+------------------------------------------------------------------------+
4. AMODE or RMODE cannot be specified for an unnamed common control
section.
5. The defaults used when zero or one MODE is specified are shown in the
following table.
+---------------------------------------------+
| Figure 26. AMODE/RMODE Defaults
|
+---------------------------------------------|
| Specified
| Default
|
+----------------------+----------------------|
| Neither
| AMODE 24, RMODE 24 |
+----------------------+----------------------|
| AMODE 24
| RMODE 24
|
+----------------------+----------------------|
| AMODE 31
| RMODE 24
|
+----------------------+----------------------|
| AMODE ANYANY31
| RMODE 24
|
+----------------------+----------------------|
| RMODE 24
| AMODE 24
|
+----------------------+----------------------|
| RMODE 31 (was ANY) | AMODE 31
|
+----------------------+----------------------|
| AMODE 64
| RMODE 31
|

+----------------------+----------------------|
| RMODE 64
| AMODE 64
|
+---------------------------------------------+

****************************************************************************
RMODE
Description: RMODE = Residency Mode
In MVS, a program attribute that refers to where a module
is prepared to run.RMODE can be 24 or ANY. ANY refers to
the fact that the module can be loaded either above or
below the 16M line. RMODE 24 means the module expects to
be loaded below the 16M line.
Note: see item name -TRADEMARKS for trademark information.
****************************************************************************
RMODE:
This is a COBOL compiler option.
Format is: RMODE(

AUTO
24
ANY

Default is: AUTO


Abbreviation is: None
A program compiled with the RMODE(AUTO) option will have RMODE(24) if
NORENT is specified, and RMODE(ANY) if RENT is specified. This is the
same behavior as COBOL/370 Release 1 and VS COBOL II.
A program compiled with the RMODE(24) option will have RMODE(24)
whether NORENT or RENT is specified.
A program compiled with the RMODE(ANY) option will have RMODE(ANY)
whether NORENT or RENT is specified.
Note: IBM COBOL for MVS & VM NORENT programs compiled with RMODE(ANY)
that are required to pass data to programs running in AMODE(24) must be
link-edited with RMODE(24). The data areas for NORENT programs will be
above the line or below the line depending on the RMODE of the program,
even if DATA(24) has been specified.
IBM COBOL for MVS & VM RENT programs that are required to pass data to
programs running in RMODE(24) must be compiled with DATA(24).
******************************************************************************

You might also like