>R13 is being used for dynamic storage (register save areas).

>My whole point in this discussion is that I am using baseless code (for
>instructions) so that I have additional registers available for various
>control blocks, complex instructions (such as MVCL and PLO), etc.

>Chris made the argument that writing baseless code is a waste of time, a
>position that may be fine for his applications, but is anything but for my
>development efforts.

I understand, but my point is that if the save area is the first part of any
storage area, then R13 can serve as the save area pointer as well as the
base register to address the remaining storage areas.  Consequently a
register that couldn't be used for anything else anyway can now serve the
role of base register to storage areas.

As for the rest of it, baseless code is trivial since once the storage areas
are dealt with, using relative branch instructions is a "no-brainer", so it
isn't a waste of time.  In fact, it's so trivial that IBM even has a "macro"
IEABRC which allows you to replace all existing base/displacement branch
instructions with branch relative, so there is no basis for arguing that
baseless code is difficult or requires any effort for processing
instructions.

It is trivially easy to do.

Reply via email to