The z/OS system service GETMAIN does not preserve the high-order half of GP registers, and there are probably others in z/OS like that. Check the doc on each VSE system service that you use. When in doubt, save all 16 GP regs with a STMG before you call a system service and reload all of them, except for any that are supposed to be altered by the service (typically R15-R1), after you get control back from the system service. I/O macros are also system services (GET, PUT, OPEN, EXCP, etc.).
Bill Fairchild Rocket Software -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Tony Harminc Sent: Monday, January 17, 2011 2:23 PM To: [email protected] Subject: Re: Subroutines, save areas and 64bit On 17 January 2011 15:18, McKown, John <[email protected]> wrote: > First question: Does your code use 64-bit instructions? If not, then why > would you need to worry about saving the high word of the caller's registers? > If you don't modify it, then it doesn't need to be saved, does it? Just don't issue a GETMAIN... Tony H.
