On Thu, 15 Nov 2018 12:38:05 -0600, Tom Marchant wrote: >On Thu, 15 Nov 2018 08:33:55 -0800, Charles Mills wrote: > >>LARL is also very cool. It is like LA without a base register. > >Agreed. One thing to be aware of with LARL. It uses a signed >halfword that is added to the current PSW address. As a result >it cannot be used to get the address of an odd address. ... > I believe the stumbling block is not the signedness but that the displacement is multiplied by 2 in order to double the reach.
>... Nor can it be used to get an address in a DSECT, or in a CSECT that >is not part of the same load module. > The requires using the result from STORAGE; the latter a V-constant. Is Binder nowadays savvy to RL displacements to honor RLD entries? If the programmer is so rash as to define an ENTRY point with an odd address, Bad Things can happen. >There are still situations where LA is appropriate. > >There is no need to change every Branch instruction to Branch >Relative (Jump) in order to start using relative instructions. If you >are changing an existing program you can code any new branches >as branch relative, except for the situation where you want to use >an indexed branch. > A compiler can make the choice of format to use to minimize I-fetch bandwidth. -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
