A user program that's running in AR mode can invoke a PC routine
that receives control in either AR mode or primary mode.
- If the PC routine receives control in AR mode:
Parameter
lists that the user passes can be located in the user's primary address
space or any other address space except the user's secondary address
space. An ALET must qualify any address that the user passes to the
PC routine (An ALET identifies the address space that contains the
passed address). An address passed in a general register must be qualified
by an ALET in the AR that corresponds to the general register. If
you are passing ALETs, you should be aware of the rules for passing
ALETs, and how to check the validity of passed ALETs. For further
information on passing ALETs, see Special ALET Values at a Space Switch, Rules for passing ALETs, and Checking the authority of callers.
The user must not
use ARs to pass anything except ALETs. For information on using ALETs,
see Using access registers.
- If the PC routines receives control in primary
mode:
All addresses passed by the user's program must reside
in the user's primary address space. IBM® recommends that those addresses be ALET
qualified. The value of the ALET must be 0.
Before issuing a PC instruction, the user must:
- Load the PC number into general register 14.
- If there is a parameter list to pass, load its address into general
register 1. If the address is ALET qualified, load AR 1 with the
ALET.
For more information about using ARs, see Using access registers.