On Wed, 14 Jan 2015 08:00:40 -0600, Donald Likens <[email protected]> 
wrote:

>>AMODE 64 routines should be using relative branch and generally should 
>>establish addressability to a static data area (such as where LTORG might 
>>be), often done by a LARL instruction.
>>
>>Peter Relson
>>z/OS Core Technology Design
>
>
>Is there a document that documents the above? I want to see if there is 
>anything else I didn't know about AMODE 64 coding.

See, for example, the ATTACH macro in the Assembler Services Reference.

<quote>
5.1.8 Parameters

The parameters are explained as follows:
 
...
  
      Register  Contents 
0 Used as a work register by the system. 

1 Address of the user parameter list if specified on either the PARAM 
or MF=E parameters; otherwise, contains whatever GPR 1 contained 
at the time the ATTACH macro was issued.  

2-12 Used as work registers by the system.  

13 Address of a standard save area.  

14 Return address. Bit 0 is 0 if the subtask routine gets control in 24-bit 
addressing mode; bit 0 is 1 if the subtask routine gets control in 31-bit 
addressing mode.  

15 When the subtask routine is to run in 24-bit or 31-bit addressing mode, the 
entry point address of the subtask routine.  When the subtask routine is to run 
in 64-bit addressing mode, it is expected to use relative branching and 
register 15 contains a value that can be used to determine the addressing mode 
of the issuer of the ATTACH or ATTACHX macro as follows:  

Issuer AMODE 24: X'FFFFF000'  
Issuer AMODE 31: X'FFFFF002'  
Issuer AMODE 64: X'FFFFF004'
</quote>

-- 
Tom Marchant

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to