On Fri, 1 Dec 2017 20:51:00 -0600, John McKown wrote:

>[quote from
>https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.ceeam00/overv.htm
>]
>
>An AMODE 64 Language Environment® application supports XPLINK linkage only
>and the C runtime environment is always initialized. A new library,
>CELQLIB, is shipped for AMODE 64 support, while the existing libraries
>continue to be shipped and supported.

There are two different flavors of XPLINK. 31-bit XPLINK is not 
compatible with XPLINK-64, and LE does not provide an easy way to call 
31-bit XPLINK applications from an XPLINK-64 application. If you want to 
know more about how this works, it is documented in the LE Vendor 
Interfaces manual.

An XPLINK application can call a non-XPLINK assembler program. Because 
XPLINK-64 has the stack located above the bar, a non-XPLINK program 
that is called from an XPLINK-64 program must be AMODE 64 in order to 
save its caller's registers. It can then acquire storage below the bar and 
call AMODE 31 programs.

Transitioning between XPLINK and non-XPLINK is expensive, much more 
so than transitioning between AMODE 31 and AMODE 64 non-XPLINK 
programs.

The stubborn refusal of LE to support non-XPLINK AMODE 64 programs 
makes no sense to me. As someone mentioned, PL/I has begun to 
support AMODE 64, and there has been talk that eventually Cobol will 
too. Many system services require non-XPLINK program calls. GET and 
PUT, for example, are extensively used in Cobol programs.

I suspect that it might be possible for an XPLINK-64 program to create 
a new enclave and call a 31-bit XPLINK program or a non-XPLINK LE 
enabled program. I have not looked into doing this yet, and have no 
idea whether it will work, or if it will, how well it will work. And if it 
works, 
I expect that the cost in CPU cycles will be quite high.

-- 
Tom Marchant

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

Reply via email to