>They don't help. They also add an >astonishment factor if you ever end up in AR mode.
Actually, for references in the primary address space, index register notation provides an opportunity for better performance because it does not require setting of the corresponding AR. But for clarity, the more complete operand with a trailing comma"or even with ",0" is best, to make it clearer that the author intended what was coded. L R1,FIELD(R12,) L R1,FIELD(R12,0) vs L R1,FIELD(,R12) Of course not every instruction supports an index register. Regarding register naming, I did not see mention of the convention that I personally like which is to have a meaningful name (because that *is* very important for code clarity, to help the reader be confident that what is put into the reg is what is intended, but not losing the attribute of "which reg is it" which is also very important (particularly when trying to figure out what registers are available to be used at a given point). For example, something like TCBPTR_R4 EQU 4 R4_TCBPTR EQU 4 I'm surprised that the JES team would have added register-name requirements (particularly when they conflicted with what a user might have already included), unless it was felt that the macro was intended only for use within JES's own modules. Peter Relson z/OS Core Technology Design
