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.

Reply via email to