The work you do to make a subroutine refreshable pretty much takes care of 
recursion. There's only one R14 slot in a save area.

Similar considerations apply if you're using XPLINK.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Assembler List <[email protected]> on behalf 
of Charles Mills <[email protected]>
Sent: Monday, August 6, 2018 7:07 PM
To: [email protected]
Subject: Re: EX

I get the impression that the hardware handles EX like a subroutine call. If
a B or J is like a COBOL GOTO, then EX is like a COBOL PERFORM.

Subroutine returns are a heckuva lot easier to implement if you only allow
subroutine calls to be one deep. You have only one return address pointer to
worry about.

Charles


-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]]
On Behalf Of Paul Gilmartin
Sent: Monday, August 6, 2018 3:49 PM
To: [email protected]
Subject: Re: EX

On 2018-08-06, at 16:12:37, Dan Greiner wrote:

> I was once asked why the execute exception existed. That is, why not just
let the hardware - or, in this odd case, the firmware - cascade down a chain
of multiple EX instructions, ORing the bits of the R1 field with the
subsequent target instruction, whatever instruction that might be.  Aside
from there being absolutely no practical reason for wasting circuits on such
folly, ...
>
You've been there; I haven't, so I bow to your expertise.  I wouldn't have
guessed whether it's less hardware to detect the special case and throw
an exception, or just to do it.

Reply via email to