On Thu, 20 Dec 2018 10:17:12 -0500, Pierre Fichaud wrote: >You can get around stack processing in 31-bit mode by using #pragma >linkage(fred,OS) where fred is a non-LE module. I've done this often.
I haven't used #pragma linkage(fred,OS), but I have used extern "OS_NOSTACK" {int fred(void);} in a 31-bit C program as well as in a 64-bit C program. I assume you can use the #pragma as well. But the fact remains that C must provide a save area to fred when it is called. As far as I know, that save area comes from the stack, and for XPLINK-64, that stack is above the bar. Perhaps the reason fetch will not allow you to load an AMODE(31) program is to prevent you from calling it, since an AMODE(31) program will fail as soon as it used the low 31 bits of the save area address to save its caller's registers. -- Tom Marchant ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN