summaryrefslogtreecommitdiff
path: root/src/cpu/inorder/resources/bpred_unit.hh
diff options
context:
space:
mode:
authorKorey Sewell <ksewell@umich.edu>2010-06-23 18:19:18 -0400
committerKorey Sewell <ksewell@umich.edu>2010-06-23 18:19:18 -0400
commitdefab3ffd5d2e37215d3f9433dc9fc754a90a9a9 (patch)
tree1fad74d7a7358dbcf6481781c05afe2ba31a97d6 /src/cpu/inorder/resources/bpred_unit.hh
parent9f0d8f252c2de0b9ac5654b2c35e913831eba756 (diff)
downloadgem5-defab3ffd5d2e37215d3f9433dc9fc754a90a9a9.tar.xz
inorder: update branch predictor
- use InOrderBPred instead of Resource for DPRINTFs - account for DELAY SLOT in updating RAS and in squashing - don't let squashed instructions update the predictor - the BTB needs to use the ASID not the TID to work for multithreaded programs - add stats for BTB hits
Diffstat (limited to 'src/cpu/inorder/resources/bpred_unit.hh')
-rw-r--r--src/cpu/inorder/resources/bpred_unit.hh2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/cpu/inorder/resources/bpred_unit.hh b/src/cpu/inorder/resources/bpred_unit.hh
index 72229ca70..b17200fd2 100644
--- a/src/cpu/inorder/resources/bpred_unit.hh
+++ b/src/cpu/inorder/resources/bpred_unit.hh
@@ -219,6 +219,7 @@ class BPredUnit
};
typedef std::list<PredictorHistory> History;
+ typedef History::iterator HistoryIt;
/**
* The per-thread predictor history. This is used to update the predictor
@@ -255,6 +256,7 @@ class BPredUnit
Stats::Scalar usedRAS;
/** Stat for number of times the RAS is incorrect. */
Stats::Scalar RASIncorrect;
+ Stats::Formula BTBHitPct;
};
#endif // __CPU_INORDER_BPRED_UNIT_HH__