Beware of current and future compiler technology (especially COBOL 5/6+ and PL/1 in recent incarnations) that is beginning to use the string and decimal vector operations and vector operations in general, all of which can use any of the FPR's.
E.G., your COBOL caller may not define or use any COMP-1 or COMP-2 floating point variables, but that does NOT necessarily mean that it does not use any FPR's. I agree that you should cross-post to the CICS list if that is your focus, but I suspect the same caveat will soon (if it does not already) apply to simple batch usage. Peter -----Original Message----- From: IBM Mainframe Assembler List <[email protected]> On Behalf Of Mike Hochee Sent: Saturday, November 27, 2021 4:37 PM To: [email protected] Subject: Re: FPR usage question As for using a documented SA for other purposes other than linkage, that would not sit well with me and I'd definitely steer clear. And it is storage access overhead that I want to minimize, so that wouldn't help even if I was comfortable with the approach. I think your question about saving and restoring is spot on. The answer is no, and for two reasons; one because I knew who the caller was (typically a program I was familiar with that I knew did not use FPRs), and two because of a comment I came across in one of the late Dr. Ehrman's HLASM texts that referred to the FPRs 0-7 as being 'volatile', which I interpreted as available for use, especially since FPRs 8-15 did not fall into the 'volatile' category. I feel less comfortable about FPR usage when CICS is dispatching the work. I should probably cross-post this to CICS. -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Paul Gilmartin Sent: Saturday, November 27, 2021 3:38 PM To: [email protected] Subject: Re: FPR usage question On Nov 27, 2021, at 13:10:21, Mike Hochee wrote: > > Like most developers I attempt to keep things in GPRs, both high and low > halves, as much as reasonably possible to improve performance. > I had a co-worker who used part of the Register Save Area as temporary storage, avoiding GETMAIN/FREEMAIN. He was competent; his code was safe. > Over the past 10 years I have begun using FPRs 0-7 as temporary storage > buckets rather than virtual/real storage and have experienced no issues in a > traditional 'batch' environment. > Do you save and restore them? > Now I have occasion to do the same under CICS and was wondering if anyone is > aware of restrictions on FPR usage under CICS? My very limited testing has > not turned up anything, and so far found nothing in the docs I've been > hunting through. > I remember being asked, "Do you use FPRs? If not, we can bypass saving/restoring them for performance when we gen your dedicated VSE system." -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system.
