Branches may be:
To avoid a stall, the processor must guess which instruction to fetch next:
A branch predictor helps the processor make an intelligent guess about whether a branch will be taken or not. It does this by gathering statistics about how often particular branches have been taken in the past.
The performance of an if-statement depends on whether its condition has a predictable pattern. branch prediction fail