summaryrefslogtreecommitdiff
path: root/src/cpu/pred/tournament.hh
diff options
context:
space:
mode:
authorDibakar Gope <gope@wisc.edu>2015-04-13 17:33:57 -0500
committerDibakar Gope <gope@wisc.edu>2015-04-13 17:33:57 -0500
commit34ad1123ee5927e3b1503f07649620a533d3eab9 (patch)
treee655941704abbbafad01966bfa188449a336aaef /src/cpu/pred/tournament.hh
parente596e524985cfb1f4d46aceebe69bb7fcd94cf04 (diff)
downloadgem5-34ad1123ee5927e3b1503f07649620a533d3eab9.tar.xz
cpu: re-organizes the branch predictor structure.
Committed by: Nilay Vaish <nilay@cs.wisc.edu>
Diffstat (limited to 'src/cpu/pred/tournament.hh')
-rw-r--r--src/cpu/pred/tournament.hh10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/cpu/pred/tournament.hh b/src/cpu/pred/tournament.hh
index 88334a8c0..d46175610 100644
--- a/src/cpu/pred/tournament.hh
+++ b/src/cpu/pred/tournament.hh
@@ -50,6 +50,7 @@
#include "base/types.hh"
#include "cpu/pred/bpred_unit.hh"
#include "cpu/pred/sat_counter.hh"
+#include "params/TournamentBP.hh"
/**
* Implements a tournament branch predictor, hopefully identical to the one
@@ -66,7 +67,7 @@ class TournamentBP : public BPredUnit
/**
* Default branch predictor constructor.
*/
- TournamentBP(const Params *params);
+ TournamentBP(const TournamentBPParams *params);
/**
* Looks up the given address in the branch predictor and returns
@@ -84,7 +85,7 @@ class TournamentBP : public BPredUnit
* global history stored in it.
* @param bp_history Pointer that will be set to the BPHistory object.
*/
- void uncondBranch(void * &bp_history);
+ void uncondBranch(Addr pc, void * &bp_history);
/**
* Updates the branch predictor to Not Taken if a BTB entry is
* invalid or not found.
@@ -234,11 +235,6 @@ class TournamentBP : public BPredUnit
/** Number of bits in the choice predictor's counters. */
unsigned choiceCtrBits;
- /** Number of bits to shift the instruction over to get rid of the word
- * offset.
- */
- unsigned instShiftAmt;
-
/** Thresholds for the counter value; above the threshold is taken,
* equal to or below the threshold is not taken.
*/