1. A computer system comprising: an instruction pipeline circuit having a plurality of fetch groups, comprising: an address register for fetching instruction addresses; an instruction cache for storing fetched instructions; an instruction queue for storing decoded instructions; a branch prediction circuit, comprising: a global history register maintaining a global history vector, wherein the global history register comprises a fetch group history portion to store fetch group history and a branch history portion to store branch history, wherein fetch group history for each fetch group is a single one-bit value indicating if the fetch group history includes a taken branch: combination logic for combining an instruction from the instruction register with the global history vector for indexing into the predictor; a branch counter, separate from the fetch group history, to store the number of branches for each fetch group; a global history update circuit, comprising: a storage register for storing the global history vector associated with a fetch group, wherein the global history register stores a different global history vector for each fetch group in the instruction pipeline circuit; and fetch group history check logic for: speculatively updating the fetch group history of the global history register with a fetch group history value for the fetch group, including storing the global history vector associated with the fetch group in the storage register; evaluating whether the fetch group contains a predicted taken branch; flushing instructions from the instruction cache and instruction queue when the fetch group contains a taken branch; repairing the global history register to the fetch group's global history vector stored in the storage register when the fetch group contains a taken branch; updating the fetch group history of the global history register based on branch prediction information from the predictor when the fetch group contains a taken branch; and updating the branch history of the global history register with a branch history value for each branch in the fetch group when the fetch group does not contain a taken branch, wherein updating the branch history includes using a branch counter associated with the fetch group and the single one-bit value from the fetch group history associated with the fetch group to insert a single one-bit value for each branch of the fetch group as the branch history.