I personally think the condition codes from Add Logical are
perfectly clear, making total sense for multi-length arithmetic,
but those from Subtract Logical are horribly confusing.
Shmuel (Seymour J.) Metz writes:
> RFE for new extended opcodes?
>
> BZNC
> BZNCR
...
Different instructions use the condition code in somewhat
different ways. There is no way we can change that now, and I
don't see any way this sort of confusion can be helped by adding
to the current huge set of 464 extended mnemonics for
conditions.
>From a quick scan of current HLASM tables, 48 base instructions
accept the 6 comparison mnemonics (E, NE, H, NH, L, NL), and 22
of those also accept the 8 arithmetic or test mnemonics (Z, NZ,
M, NM, P, NP, O, NO). So any new arithmetic or test mnemonic
(and its negative) would mean 44 new extended mnemonics.
It is already often quite difficult to assign mnemonics for new
instructions without causing clashes. In the past, the GNU
assembler tried to be helpful by adding some other combinations
(for "less than or equal" and similar) but this caused clashes,
for example with some newer "Relative long" instructions, which
ended up with different mnemonics from those used in HLASM.
If you want to make your code more self-explanatory, create a
meaningful symbol equate for the relevant condition code mask.
Jonathan Scott, HLASM
IBM Hursley, UK