42#ifndef __CPU_PRED_TAGE_SC_L_8KB_HH__
43#define __CPU_PRED_TAGE_SC_L_8KB_HH__
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"
96 const TAGE_SC_L_8KB_StatisticalCorrectorParams &
p);
99 int altBank)
const override;
107 Addr target, int64_t phist)
override;
StatisticalCorrector(const StatisticalCorrectorParams &p)
int gIndexLogsSubstr(int nbr, int i) override
void scRecordHistState(Addr branch_pc, BranchInfo *bi) override
std::vector< int8_t > * ggehl
TAGE_SC_L_8KB_StatisticalCorrector(const TAGE_SC_L_8KB_StatisticalCorrectorParams &p)
unsigned getIndBiasBank(Addr branch_pc, BranchInfo *bi, int hitBank, int altBank) const override
int gPredictions(ThreadID tid, Addr branch_pc, BranchInfo *bi, int &lsum) override
SCThreadHistory * makeThreadHistory() override
void scHistoryUpdate(Addr branch_pc, const StaticInstPtr &inst, bool taken, Addr target, int64_t phist) override
void gUpdates(ThreadID tid, Addr pc, bool taken, BranchInfo *bi) override
bool scRestoreHistState(BranchInfo *bi) override
TAGE_SC_L_8KB(const TAGE_SC_L_8KBParams ¶ms)
void handleAllocAndUReset(bool alloc, bool taken, TAGEBase::BranchInfo *bi, int nrand) override
Handles Allocation and U bits reset on an update.
uint16_t gtag(ThreadID tid, Addr pc, int bank) const override
Computes the partial tag of a tagged table.
TAGE_SC_L_TAGE_8KB(const TAGE_SC_L_TAGE_8KBParams &p)
void initFoldedHistories(ThreadHistory &history) override
Initialization of the folded histories.
int gindex_ext(int index, int bank) const override
void resetUctr(uint8_t &u) override
Algorithm for resetting a single U counter.
void handleTAGEUpdate(Addr branch_pc, bool taken, TAGEBase::BranchInfo *bi) override
Handles the update of the TAGE entries.
TAGE_SC_L_TAGE(const TAGE_SC_L_TAGEParams &p)
TAGE_SC_L(const TAGE_SC_LParams ¶ms)
const Params & params() const
Copyright (c) 2024 Arm Limited All rights reserved.
int16_t ThreadID
Thread index/ID type.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
RefCountingPtr< StaticInst > StaticInstPtr
SCThreadHistory(unsigned instShiftAmt)
const unsigned instShiftAmt
SC_8KB_ThreadHistory(unsigned instShiftAmt)