On Mon, 21 Jun 2021 17:55:49 -0400, Tom Marchant <m42tom-ibmm...@yahoo.com> 
wrote:

I think that's rather old and outdated.  It cites the reasons for Xleaf only as 
because there's no WSA and no call mechanism from assembler.  Both of those 
were remedied.  Start with the XL C/C++ Programming Guide here 
https://www.ibm.com/docs/en/zos/2.4.0?topic=programs-xplink-assembler and also 
look at the CEEPDDA and CEEPLDA macros in the Language Environment Programming 
Guide for how to work with your own WSA variables.

>Documentation for XPLINK and XPLINK64 is in the LE Vendor Interfaces manual.
>
>-- 
>Tom Marchant
>
>On Wed, 16 Jun 2021 21:56:41 +0000, Richard Way <richard....@microfocus.com> 
>wrote:
>
>>I'm rather confused about the requirements for converting an existing AMODE 
>>31 "ordinary" assembler program to one that can participate in an XPLINK lp64 
>>environment, and I'm hoping one or more of you can help me to clarify this.
>>
>>I found documentation here --> 
>>http://www.redbooks.ibm.com/redbooks/pdfs/sg245991.pdf, in section 4.2.1 
>>starting on page 24 that tells me what the register conventions are in XPLINK 
>>as well as the restriction that my module cannot call other modules (which is 
>>fine, it doesn't.) That section also explains the required prolog and epilog 
>>macros. Some of the information is confusing to me though - for example, in 
>>one section it says all XPLINK assembler code must be "leaf" modules that 
>>don't call other modules, then it talks about the DSASIZE parameter on the 
>>prolog macro being used to "buy" a stack frame, and then adds that "XPLINK 
>>leaf (Xleaf) routines may not "buy" a stack frame!" (emphasis mine.) This 
>>seems contradictory, so I must not be understanding it.
>>

Reply via email to