| |||
| Home > Writing ARM Assembly Language > Conditional execution > Using conditional execution | |||
You can use conditional execution of ARM instructions to reduce
the number of branch instructions in your code. This improves code
density. The IT instruction in Thumb-2 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, for example ARM10™ and StrongARM®, have branch prediction hardware. In systems using these processors, the pipeline only has to be flushed and refilled when there is a misprediction.