On Tue, 12 Jun 2012 15:53:26 -0500, McKown, John wrote:

>For LE enabled assembler (I have written some), when I
>use a base register at all (not often any more),

I think that you try too hard to eliminate the use of base
registers.  They are still needed for data.


>you can avoid the use of a "base register" for code in
>almost every case by using relative instructions...

Right.  The exception is for an indexed branch.

>use LARL instead of LA for areas in the CSECT

That's fine for code or anything else that is (at least)
halfword aligned.

>use LHI if possible.

Agreed.  Also AHI, etc.

>For a constant which does not fit into a halfword, or
>maybe is packed decimal or characters, you can replace
>somethin like: L R7,FULLWORD with 2 instructions:
>LARL R7,FULLWORD followed by L R7,0(,R7), and the same
>with packed and characters. OK, that is a bit ugly, I admit.

Yes, it is ugly.  And unnecessary unless you are trying to
eliminate all base registers.  That's why I don't like the
term "baseless code".

--
Tom Marchant

Reply via email to