> Unfortunately in thumb mode, loading a signed byte costs more than loading an > unsigned byte and comparing with 0 has same cost as comparing with 0x7F.
I don't know of any core where loading a signed byte is more expensive than unsigned byte in thumb mode. What did you have in mind ? I suspect what you mean is that the sign extension here is not required and we could get away with ldrb. >