An apparatus for branch prediction includes a history register which
stores therein history of previous branch instructions, an index
generation circuit which generates a first index from an instruction
address and the history stored in the history register, a history table
which stores therein a portion of the instruction address as a tag and a
first value indicative of likelihood of branching in association with the
first index, a branch destination buffer which stores therein a branch
destination address or predicted branch destination address of an
instruction indicated by the instruction address and a second value
indicative of likelihood of branching in association with a second index
that is at least a portion of the instruction address, and a selection
unit which makes a branch prediction by selecting one of the first value
and the second value.