Exactly. There was a post here lamenting a lack of standards enforcement at
IBM that I have unfortunately deleted.

At some early point a group of wise men and women at IBM should have sat
down and said "okay, 18 words off R13 is inadequate. Let's poll all of the
groups and design a single new linkage convention for everyone for the
future."

Instead we have XPLINK and CICS linkage and 64-bit register save areas and
LE linkage and ...

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On
Behalf Of John Gilmore
Sent: Wednesday, June 26, 2013 9:35 AM
To: [email protected]
Subject: Re: z/OS subroutine in assembler, used in both batch & CICS ,
making re-entrant

Tom  Marchant wrote:

<begin extract>
That is one way to save the caller's registers, not the only documented
Linkage convention.
</end extract>

and this is formally correct.  There is, however, something of an obligation
to use a caller-/invoker-supplied save area when one is in fact supplied.
There may even be an obligation to adhere to SA back- and forward-chaining
conventions.  (Some statement-level languages use them not only for error
handling but in implementing language features, e.g., long jumps,
out-of-block GOTOs,  and condition
handling.)

My own view is that the original---in their way admirable---linkage
conventions of OS/360 were inadequate.  They failed to encompass, among
other things, machinery for ensuring that code could be reentrant, invoked
recursively, the [optional] use of descriptors, and for the management of
stack-based automatic/scratch/local storage.

The unfortunate consequences of this minimality were many.  Different SLPLs
constructed their run-time environments very differently, and too much
detailed lore  must now be mastered before successful ILC is possible.

It is posslble to rail against some of the design elements of the LE, but
the babel we now makes it clear that something very like it was needed early
on.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to