On Tue, Oct 26, 2021 at 7:16 AM Peter Relson <[email protected]> wrote:
> John M wrote: > <snip> > I really would like the Linkage Stack to become generally > useful. So I could just use a BAKR to save state on entry and PC to > return. > </snip> > > In what way does BAKR...PR not let you accomplish that (if by "state" you > are referring to thing such as registers and PSW state)? > BAKR 14,0 > ... > PR > The problem that I am thinking of is that an interrupt occurs if the stack is exhausted before everything is saved. The last time I looked, this causes an ABEND. IMO to be really useful z/OS would need to incorporate some way to "automatically" expand the size of the Linkage Stack somehow, rather than forcing each program to implement this function. Perhaps a way to "chain" individual Linkage Stack areas together. A "stack overflow" would cause z/OS to create a new Linkage Stack and chain it to the previous and automatically retry, or ABEND if this operation failed somehow. On an "underflow", z/OS wold see if there was a previous Linkage Stack, free the current one, make the previous one the active one and retry. > > with this sometimes being preceded by BSM 14,0 in order to make sure that > the reg 14 is properly defined for the AMODE needed (unnecessary if you > got here by something like BASR 14,15 or BRASL 14,xxx). > > As pointed out, this would still be considerably slower than the analogous > register saving/restoring. > and that's the other part. I don't know why this is "slow". But perhaps the hardware people could optimize it more, or add new "assist" circuitry. I realize this is costly & is likely why it won't be done. The save areas work, so why invest money in this rather than elsewhere that might be more helpful. The world is not perfect. FSVO "perfect". > > Peter Relson > z/OS Core Technology Design > > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
