Hacker News new | past | comments | ask | show | jobs | submit
Typical branch predictors can both learns patterns (even very long patterns) and use branch history (the probability of a branch being taken depends on the path taken to reach that branch). They don't normally look at data other than branch addresses (and targets for indirect branches).
They can't. The data that would be needed isn't available at the time the prediction is made.
loading story #47441029