Sorry, when you said subroutine I thought you were creating a macro. I think that you're required to preserve the high halves of GPR 2-14, i.e. you can't mess with them without restoring. But you can change R0, R1, and R15 without restoring. This is from the Assembler Services Guide.
-----Original Message----- From: IBM Mainframe Assembler List <[email protected]> On Behalf Of Dave Clark Sent: Wednesday, January 19, 2022 4:21 PM To: [email protected] Subject: Saving Caller's 64-bit Regsiters (was: Unsigned Binary Formats) "IBM Mainframe Assembler List" <[email protected]> wrote on 01/19/2022 05:12:36 PM: > Is register 2 considered volatile for the 64 bit high half? > > If not, then how do you know if the macro user will preserve and > restore the register? There is no macro, but I think I get your point. Although testing seems to be going just fine at the moment, I guess I better investigate how to save the caller's registers as 64-bit registers instead of just as 32-bit registers as I am doing now. Any hints to start my investigation would be welcome. ;-) Sincerely, Dave Clark -- int.ext: 91078 direct: (937) 531-6378 home: (937) 751-3300 Winsupply Group Services 3110 Kettering Boulevard Dayton, Ohio 45439 USA (937) 294-5331 ********************************************************************************************* This email message and any attachments is for use only by the named addressee(s) and may contain confidential, privileged and/or proprietary information. If you have received this message in error, please immediately notify the sender and delete and destroy the message and all copies. All unauthorized direct or indirect use or disclosure of this message is strictly prohibited. No right to confidentiality or privilege is waived or lost by any error in transmission. *********************************************************************************************
