Joe Monk wrote:

"When you run in AMODE 64 (as indicated by specifying AMODE64=YES through
the SYSSTATE macro) and invoke ESTAEX, your ESTAEX routine will get control
in AMODE 64."

https://www.ibm.com/support/knowledgecenter/SSLTBW_2.4.0/com.ibm.zos.v2r4.ieaa200/iea3a2_Description3.htm

So looks like you have to specify the SYSSTATE macro in z/os 2.4.

Joe

Thanks Joe!

I have the feeling that has changed for v2.4?

The code (which worked fine on z/OS 2.3) had this comment:

 * NB: The SDWAPARM field points to an 8-byte area, when  *
 *     ESTAEX is issued "in AMODE 64" this is the 64-bit  *
 *     address passed in the PARAM field of the ESTAEX    *
 *     invocation.  But "in AMODE 64" is a mis-nomer;     *
 *     this is only true if SYSSTATE AMODE=64 is specified*
 *     when ESTAE is invoked.  When that is _not_ true,   *
 *     this field contains a 4-byte address and a 4-byte  *
 *     ALET (as it does for a regular 31-bit assembly.)   *
 *     However, the exit is still given control in AMODE  *
 *     64 if ESTAEX was invoked in AMODE 64. *

So - there was clearly some confusion at some point in the past...

And - the way we had solved it was to not specify SYSSTATE AMODE=64
and to let things go with the 32-bit mode SDWAPARM... but - at least
empirically, the ESTAE EXIT was still driven in 64-bit mode.

(But - since we didn't know the AMODE of the ESTAEX, we had to handle
the EXIT running in 31-bit or 64-bit anyway.)

So - perhaps the "fix" for now is to just drop to AMODE=31 to issue the ESTAEX
and let the ESTAE EXIT get entered in AMODE=31 and go with that...   I hope,
if the current AMODE at the time of the exception is 64-bit we still get all
the 64-bit info... we'll see...

Or - I suppose - we could test the AMODE at the point where the ESTAEX is
to be done, and have dual-paths (one assembled with SYSTATE=64 and one
without?)

I'll try and dig up the older doc to see what it says...

 - Thanks again! -
  - Dave Rivers -


--
riv...@dignus.com                        Work: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to