The discussion also seems to meld inappropriately two related but independent concepts:
- Running in AMODE 64 - Using the high halves of registers (such as for temporary storage, the high parts of large integers, etc.) It is certainly possible and I think common to do the latter without the former. Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Peter Relson Sent: Monday, October 25, 2021 6:55 AM To: [email protected] Subject: Re: Question about negative indexes This discussion has morphed into a discussion of linkage conventions which are clearly spelled out in the publications, such as with respect to save area sizes and formats. I suggest that those interested take the time to re-read those sections. A "legacy" AMODE 24 or AMODE 31 routine will not even know about high halves and thus has no need to save/restore them and thus its 72-byte save area linkage works just fine. For z/OS, unless otherwise stated, the high halves of regs 0,1,15 are not to be expected to be preserved across any interface. Whether the target routine saves information in a caller-provided save area, or some in such an area and more elsewhere, or on the linkage stack is up to its interface definition that the caller is expected to comply with. Peter Relson z/OS Core Technology Design ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
