Most popular IBM macros will produce better code than that if you specify
SYSSTATE ARCHLVL=2 or better.

It is unfortunate that isn't the default, but the PRIME DIRECTIVE is
"Nothing shall ever change", lest someone reassembles their 1967 source,
and something is different, no matter how trivial.  It probably required
the Board of Directors to sign-off on changing PUT & GET to allow AMODE 31
code to use them.

sas

On Thu, Sep 5, 2019 at 5:48 PM Charles Mills <charl...@mcn.org> wrote:

> And of course, specifying RENT does not make the code reentrant. It's a
> help. It flags some violations, and that's a help, but it misses a lot, and
> does not "do" anything to your code, unlike the RENT option in higher-level
> languages. IBM macros are fond of the form
>
> BAL 1,*+8
> DC  A(0)
> ST  n,0(0,1)
>
> And while that is a violation and will lead to a S0C4 (generally) during
> execution, the assembler RENT option will not flag it. (It also drives the
> i-cache logic crazy and is a performance killer, but that is different
> topic.)
>
> Charles

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to