Certainly I'm not suggesting this is the best approach to handle new code
updates.  I'm only pointing out that the previous advice on how to correct
the described problem is incorrect.  I'm sure we could all come up with many
other ways to load base registers or even eliminate them.

Chuck Arney
Arney Computer Systems

-----Original Message-----
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
On Behalf Of David Bond
Sent: Saturday, June 02, 2012 5:13 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Base registers

Only one instruction is required:
         LAY R11,4096(,R12)

But really, for over 15 years base registers are only required for data
areas. Just use LA, LAY or LARL to address the first data item and base the
USING from there. Also switch from branches (Bc, BAS, BCT...) to jumps (Jc,
JAS, JCT...).

On Sat, 2 Jun 2012 15:53:59 -0500, Chuck Arney wrote:
>I don't think you really want your base register pointing to an odd
address.
>You need to add 1 more to make it right and that requires another
>instruction.
>
>Chuck Arney
>Arney Computer Systems
>
>-----Original Message-----
>From: IBM Mainframe Assembler List
>[mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
>On Behalf Of robin
>Sent: Saturday, June 02, 2012 8:12 AM
>
>From: Robert A. Rosenberg
>Sent: Saturday, 2 June 2012 7:04 AM
>
>>          LA    R11,2048(R12)
>>          LA    R11,2048(R11)
>
>     LA  11,4095(0,12)
>
>requires only one instruction (adjust USING accordingly).

Reply via email to