I would expect the only performance issue to be the load on the cache. I tend to use BCTR more from habit than shaving femtoseconds. I use LA when I need tp preserve the cc or need to add in another register. Either is better than A reg,=F'1', which I have seen.
-- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 עַם יִשְׂרָאֵל חַי נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר ________________________________________ From: IBM Mainframe Assembler List <[email protected]> on behalf of Dale Joyce <[email protected]> Sent: Thursday, July 10, 2025 12:54 PM To: [email protected] <[email protected]> Subject: Re: Food for thought. External Message: Use Caution Depends on how fussy you want to be I guess. RR instructions are, as I recall, the fastest instructions, with the RI being just behind it. As someone else mentioned...for readability the RR is more common and known. Dale On 7/10/2025 12:39 PM, Mark Hammack wrote: > Is there any advantage to using: > > LA Rx,1(,Rx) vs. > AHI Rx,1 > > Back in the old days (I started on S/370 with MVS right before XA came > out), to increment a register, you had to use option 1. Now, either will > work. I prefer the latter because I think it is clearer what you intend > but since it sets the CC flags, I'm not sure it is any "better" and may be > (slightly) slower. > > Really, the same question can be asked about: > > BCTR Rx,0 vs. > AHI Rx,-1 > > and > > LA Rx,value > LHI Rx,value > > Same thing, the latter is much clearer, especially for new-to-assembler > programmers. In the LA vs LHI case, LA is limited to 4095 whereas LHI can > go to 32767 so there is an advantage in some situations. > > IDK, maybe it's the closet C programmer in me... > > > > > *Mark Hammack* >
