Previous topic |
Next topic |
Contents |
Contact z/OS |
Library |
PDF
CSRL16J — Transfer control with all registers intact z/OS MVS Programming: Assembler Services Reference ABE-HSP SA23-1369-00 |
|||||||||||||||||||||||||||||||||||||
DescriptionCall the CSRL16J service to transfer control to another routine running under the same request block (RB). The CSRL16J service functions much like a branch instruction, but will transfer control with the contents of all registers intact. EnvironmentThe requirements for the caller are:
Programming requirements
RestrictionsThe caller cannot have an EUT FRR established. Input register informationBefore calling the CSRL16J service, the caller must ensure that
the following general purpose registers (GPRs) contain the specified
information:
Output register informationThe CSRL16J service returns control to the caller only when it cannot successfully transfer control to the target routine because of an error. Otherwise CSRL16J transfers control to the target routine, which can return control to any program running under the same RB, including the calling program. When CSRL16J returns control to the caller because of an error,
the GPRs contain:
When CSRL16J returns control to the caller because of an error,
the access registers (ARs) contain:
Some callers depend on register contents remaining the same before and after issuing a service. If the system changes the contents of registers on which the caller depends, the caller must save them before issuing the service, and restore them after the system returns control. Performance implicationsNone. SyntaxWrite the call as shown on the syntax diagram. You must code all parameters on the CALL statement in the order shown.
ParametersThe parameters are explained as follows:
ABEND codesNone. Return and reason codesIf the CSRL16J service returns control to the caller, CSRL16J was unable to transfer control to the target routine. In this case, return_code contains a nonzero value. When the CSRL16J service successfully transfers control to the target routine, return_code contains a value of zero. Return codes from the CSRL16J service are as follows:
|
Copyright IBM Corporation 1990, 2014
|