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
