When you specify the EXTR= parameter on an ATTACH, you are indicating the offset of an exit to asynchoronously receive control when the sub-task ends.
This exit is invoked as many are, in that a 72-byte save area is addressed by R13 for saving/restoring the registers. The documentation even goes on to say: "The exit routine is responsible for saving and restoring registers". In the 'MVS Programming: Assembler Services Guide" in the section on linkage, called "Saving the calling program's registers" it says that saving registers involves saving R2 through R13 "Unless otherwise defined by the individual interface". Has the one sentence in the EXTR description 'otherwise defined' that R14,R15,R0 and R1 also need to be saved; or is it referring tot he normal saving which would not preserve those? It seems a little ambiguous to me. That is - in the case for an EXTR exit - do we need to also save/restore R14,R15,R0 and R1 - or are those "safe" to trash? I'd like to use them to trampoline into a different environment if possible without having to do a "save-area dance". - Thanks - - Dave Rivers - -- [email protected] Work: (919) 676-0847 Get your mainframe programming tools at http://www.dignus.com ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
