summaryrefslogtreecommitdiff
path: root/src/cpu/pred/bpred_unit.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/bpred_unit.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/bpred_unit.hh')
-rw-r--r--src/cpu/pred/bpred_unit.hh8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/cpu/pred/bpred_unit.hh b/src/cpu/pred/bpred_unit.hh
index 851cdbb78..f8b217567 100644
--- a/src/cpu/pred/bpred_unit.hh
+++ b/src/cpu/pred/bpred_unit.hh
@@ -97,7 +97,7 @@ class BPredUnit : public SimObject
TheISA::PCState &predPC, ThreadID tid);
// @todo: Rename this function.
- virtual void uncondBranch(void * &bp_history) = 0;
+ virtual void uncondBranch(Addr pc, void * &bp_history) = 0;
/**
* Tells the branch predictor to commit any updates until the given
@@ -260,7 +260,8 @@ class BPredUnit : public SimObject
typedef std::deque<PredictorHistory> History;
/** Number of the threads for which the branch history is maintained. */
- uint32_t numThreads;
+ const unsigned numThreads;
+
/**
* The per-thread predictor history. This is used to update the predictor
@@ -295,6 +296,9 @@ class BPredUnit : public SimObject
Stats::Scalar RASIncorrect;
protected:
+ /** Number of bits to shift instructions by for predictor addresses. */
+ const unsigned instShiftAmt;
+
/**
* @{
* @name PMU Probe points.