Having just been bitten by the fact the TMLL, TMLH, TMHL, and TMHH can
set either condition code 1 or 2 if the bits being tested have mixed
on/off values, depending on the value of the left-most tested bit, I've
noticed that there are no extended branch mnemonics to deal with this
wonderful new distinction. A BM/BNM test only lets you test for condition
code 1, of course.

While one can use BP and BM for BC 4 and BC 2 and BNP and BNM for BC 11
and BC 13, their use is pretty much the opposite of what I would expect
since left-most bit on usually implies negativity but left-most bit on
produces a CC 2 which is the same as that for an arithmetic test that
indicates "positive". I suppose one is supposed to think of the left-most
bit being positive, but can one really think of the leftmost bit being
negative (minus)? Same issue for BH/BNH and BL/BNL.

Even if BP/BM or BH/BL were considered tolerable after a TMLL and friends,
there seems no good alternative for BC 6 and BC 9. Is there?

So, it would be seem nice to have some new extended mnemonics for TMLL
and friends. I'd say BMO, BMZ, and BMA for Branch Mixed On, Branch Mixed
Zero, and Branch Mixed Any along with their inverses BNMO, BNMZ, and BNMA
but don't really care. Of course, one would also want relative branch
equivalents, say JMO, JMZ, JMA, etc.. And, yes, I know I can trivially
write macros to provide the same thing. Just pointing out the apparent
hole in the extended branch mnemonics.

--
Cheers,
Alex Kodat
Sirius Software

Reply via email to