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?


-----Original Message-----
From: IBM Mainframe Assembler List <[email protected]> On Behalf 
Of Dave Clark
Sent: Wednesday, January 19, 2022 3:48 PM
To: [email protected]
Subject: Re: Unsigned Binary Formats

"IBM Mainframe Assembler List" <[email protected]> wrote on
01/19/2022 12:58:23 PM:
> You can also swap out the first two instructions below with...
>
> LLGF  R2,bin4

        OK, I have created a generic subroutine that always converts
64-bit register 2 to a left-justified, separate-left-signed, zoned number
up to 19 digits and returns it in the work area pointed to by register 1.
I did give it an option to retain leading zeros but the default is to
strip them using the EDMK instruction.  So far, I'm using the LGR, LGF,
LGH, XGR/IC, and LLGF instructions to pass the data in register 2 to the
subroutine.  Testing looks good.  Thanks all.

LA   R1,CWORK                 POINT TO "RESULT" AREA
LGF  R2,AMDCINV               GET LRECL VALUE
BAS  R15,REG2ZONE             CONVERT THAT TO ZONED-DECIMAL


Sincerely,

Dave Clark
--
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.
*********************************************************************************************

Reply via email to