> you need to track the possibility of a branch at every single arithmetic operation
Every memory access can cause a trap, but CPUs seem to have no problem about it. The branch is very unlikely and can always be predicted as "not taken".
Every memory access can cause a trap, but CPUs seem to have no problem about it. The branch is very unlikely and can always be predicted as "not taken".
Get rid of what complexity you can then deal with the rest that you must have.