1. A branch prediction apparatus, comprising: an agree branch predictor having at least one split branch history shift register comprising at least a first branch history shift register to store correlated branch history information associated with an execution of a plurality of user instructions, and at least a second branch history shift register to store correlated branch history information associated with an execution of a plurality of operating system instructions, wherein the first branch history shift register and the second branch history shift register are separated.