Go to the documentation of this file.
42 #ifndef __CPU_PRED_TAGE_SC_L_8KB
43 #define __CPU_PRED_TAGE_SC_L_8KB
46 #include "params/TAGE_SC_L_8KB.hh"
47 #include "params/TAGE_SC_L_8KB_StatisticalCorrector.hh"
48 #include "params/TAGE_SC_L_TAGE_8KB.hh"
91 const TAGE_SC_L_8KB_StatisticalCorrectorParams &
p);
94 int altBank)
const override;
106 int64_t phist)
override;
115 #endif // __CPU_PRED_TAGE_SC_L_8KB
int gindex_ext(int index, int bank) const override
int16_t ThreadID
Thread index/ID type.
TAGE_SC_L_8KB(const TAGE_SC_L_8KBParams ¶ms)
void scHistoryUpdate(Addr branch_pc, const StaticInstPtr &inst, bool taken, BranchInfo *tage_bi, Addr corrTarget) override
TAGE_SC_L_8KB_StatisticalCorrector(const TAGE_SC_L_8KB_StatisticalCorrectorParams &p)
std::vector< int8_t > * ggehl
int gPredictions(ThreadID tid, Addr branch_pc, BranchInfo *bi, int &lsum, int64_t phist) override
void gUpdates(ThreadID tid, Addr pc, bool taken, BranchInfo *bi, int64_t phist) override
void initFoldedHistories(ThreadHistory &history) override
Initialization of the folded histories.
uint16_t gtag(ThreadID tid, Addr pc, int bank) const override
Computes the partial tag of a tagged table.
void handleAllocAndUReset(bool alloc, bool taken, TAGEBase::BranchInfo *bi, int nrand) override
Handles Allocation and U bits reset on an update.
SCThreadHistory * makeThreadHistory() override
void handleTAGEUpdate(Addr branch_pc, bool taken, TAGEBase::BranchInfo *bi) override
Handles the update of the TAGE entries.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
int gIndexLogsSubstr(int nbr, int i) override
const Params & params() const
TAGE_SC_L_TAGE_8KB(const TAGE_SC_L_TAGE_8KBParams &p)
void resetUctr(uint8_t &u) override
Algorithm for resetting a single U counter.
unsigned getIndBiasBank(Addr branch_pc, BranchInfo *bi, int hitBank, int altBank) const override
Generated on Tue Jun 22 2021 15:28:26 for gem5 by doxygen 1.8.17