On 15 February 2015 at 22:18, Bernd Oppolzer <[email protected]> wrote:
> I have some criticism against this technique, > because it turns the save area trace in the case of an abend pretty > useless, > because the EP address which was at the position 16(r13) > before the return code was stored there is overwritten, and so the EPA > cannot be examined any more by looking at the save area trace. > > I agree that it is rather unpleasant to find code store into the save area throughput the subroutine. My "favorite" was inherited code that used the save area for a CVD and had the LM at return adjusted for that. But when you store the registers only once and just before the return, I think it's much more pleasant than breaking up the LM. Especially when you need to pass multiple registers back. If there's an abend on the ST or LM then your save area might still be in tact but R13 forgot where it was. As suggested, when you're using macros for entry and return, the details will be inside (I have a REGS= parameter for it). Depending on your local religion, you may also have an LTR for R15 as well. Rob
