<snip>
AGAIN  TIMEUSED  ...
    JNZ  Again

Versus
AGAIN TIMEUSED ..
    CFI  R15,8
    BE AGAIN
</snip>

If a macro does not document that it provides a condition code upon completion, 
it's not a great idea to rely on its doing so. While the LTR will always 
remain, not all forms of TIMEUSED use one, and a more real danger would be that 
some other path might result in changing the condition code after the LTR but 
before the end of the invocation. That probably wouldn't happen unless some new 
operand was specified, but do you want to rely on "probably"?

CHI would be a better choice than CFI (4-byte instruction vs 6-byte instruction)


<snip>
Is it possible that this error occurs because the TIMEUSED macro uses the PC 
instruction?
</snip>

BAKR and PR have existed since MVS/ESA 3.1.0. Since the "version of the 
program" was not shown, and no information was provided about whether the PIC 
30 occurred on the BAKR or on the TIMEUSED PC, the question might be answered 
as "yes" but it would happen only if you had already exhausted the linkage 
stack. That sounds like you've used a lot more BAKR's than you used PR's. 
Eventually you will run out (you can increase the size of your linkage stack by 
use of the LSEXPAND macro; that rarely is used). Running out leads one to 
suspect that you did not do matching PR's for your BAKR's.

Peter Relson
z/OS Core Technology Design


----------------------------------------------------------------------
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