Benefits of using conditional execution in A32 and T32 code
It can be more efficient to use conditional instructions rather than conditional branches.
You can use conditional execution of A32 instructions to reduce
the number of branch instructions in your code, and improve code
IT instruction in T32 achieves
a similar improvement.
Branch instructions are also expensive in processor cycles. On ARM® processors without branch prediction hardware, it typically takes three processor cycles to refill the processor pipeline each time a branch is taken.
Some ARM processors have branch prediction hardware. In systems using these processors, the pipeline only has to be flushed and refilled when there is a misprediction.