Paul, The CALL macro does NOT require that register 13 contain the address of a save area. It is a standard convention, that R13 point to a 72 byte save area for the use by the called routine, but not a hard requirement. For example, (using the Authorized Assembler Services Reference Volume 2), the description of IEANTRT is the same as you quote. However, in the same manual, under the description of service IEAVAPE (Allocate Pause Element), under Input Register Information it is documented that R13 MUST contain the address of a 72 byte register save area. If the called program is coded to use the linkage stack to save caller status, no register save area has to be provided by the caller.
Wayne Driscoll Product Developer JME Software LLC NOTE: All opinions are strictly my own. -----Original Message----- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Paul Gilmartin Sent: Tuesday, January 15, 2008 5:58 PM To: [email protected] Subject: Re: Rexx external assembler functions and reentrancy On Tue, 15 Jan 2008 15:06:19 -0800, Schwarz, Barry A wrote: >Not change is not the same as not use. I would expect the routine to >save and restore the registers rather than never use them. > >-----Original Message----- >From: Victor Gil [mailto:snip] >Sent: Tuesday, January 15, 2008 12:10 PM > >IEANTRT is documented to NOT change registers R2-R13, so their slots in >the passed savearea can be used to format the required parameter list. > I'm confused; I see: #13.1.4 "z/OS V1R7.0 MVS Assembler Services Reference IAR-XCT" ___________________________________________________________________ 13.1.4 Input Register Information Before issuing the IEANTRT callable service, the caller does not have to place any information into any register ... ... but: #13.1.7 "z/OS V1R7.0 MVS Assembler Services Reference IAR-XCT" ___________________________________________________________________ 13.1.7 Syntax Write the call as shown on the syntax diagram. You must code all parameters on the CALL statement in the order shown. CALL IEANTRT ,(level ,user_name ,user_token ,return_code) ... is this a special CALL that does not require that the address of an available RSA be placed in R13, or is that assumed even when the RM says it's unnecessary? -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

