cpu: correct comments in tournament branch predictor

The tournament predictor is presented as doing speculative
update of the global history and non-speculative update
of the local history used to generate the branch prediction.
However, the code does speculative update of both histories.

Signed-off-by: Jason Lowe-Power <jason@lowepower.com>
This commit is contained in:
Arthur Perais 2016-12-21 15:06:13 -06:00
parent 1664625db8
commit 34065f8d5f
2 changed files with 4 additions and 5 deletions

View file

@ -222,8 +222,8 @@ TournamentBP::lookup(ThreadID tid, Addr branch_addr, void * &bp_history)
assert(local_history_idx < localHistoryTableSize);
// Commented code is for doing speculative update of counters and
// all histories.
// Speculative update of the global history and the
// selected local history.
if (choice_prediction) {
if (global_prediction) {
updateGlobalHistTaken(tid);

View file

@ -57,9 +57,8 @@
* used in the 21264. It has a local predictor, which uses a local history
* table to index into a table of counters, and a global predictor, which
* uses a global history to index into a table of counters. A choice
* predictor chooses between the two. Only the global history register
* is speculatively updated, the rest are updated upon branches committing
* or misspeculating.
* predictor chooses between the two. Both the global history register
* and the selected local history are speculatively updated.
*/
class TournamentBP : public BPredUnit
{