So you are saying "if you write a standard (legacy) linkage AMODE<=31 subprogram and use *any* system service then you are obligated to do an STMG/LMG R14,R1,xxxxx"?
(Not criticizing or sarcastically contradicting you, just re-stating what you said to be certain.) Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of Paul Gilmartin Sent: Monday, June 13, 2016 12:10 PM To: [email protected] Subject: Re: LINK and high order word of R1 On Mon, 13 Jun 2016 11:19:06 -0700, Charles Mills wrote: > >Does that mean that for standard "old-fashioned" AMODE 31 72-byte >savearea linkage I am obligated to save the high word of R1 before >issuing LINK in a called program? If so, this would seem to be a >compatibility issue for older code that uses LINK. Or is R1 fair game >as a work register in a called program? > I asked a similar question a while back, concerning STORAGE. An IBM expert explained that certain registers (0, 1, 14, 15?) are fair game for system services. So, if your code, even in AMODE<=31 with a 72-byte save area guarantees to callers to preserve R1 and uses STORAGE, you must do something more to preserve the high word. -- gil ---------------------------------------------------------------------- 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
