|
gem5
v21.1.0.2
|
Public Member Functions | |
| PredictorHistory (const InstSeqNum &seq_num, Addr instPC, bool pred_taken, void *bp_history, void *indirect_history, ThreadID _tid, const StaticInstPtr &inst) | |
| Makes a predictor history struct that contains any information needed to update the predictor, BTB, and RAS. More... | |
| bool | operator== (const PredictorHistory &entry) const |
Public Attributes | |
| InstSeqNum | seqNum |
| The sequence number for the predictor history entry. More... | |
| Addr | pc |
| The PC associated with the sequence number. More... | |
| void * | bpHistory |
| Pointer to the history object passed back from the branch predictor. More... | |
| void * | indirectHistory |
| TheISA::PCState | RASTarget |
| The RAS target (only valid if a return). More... | |
| unsigned | RASIndex |
| The RAS index of the instruction (only valid if a call). More... | |
| ThreadID | tid |
| The thread id. More... | |
| bool | predTaken |
| Whether or not it was predicted taken. More... | |
| bool | usedRAS |
| Whether or not the RAS was used. More... | |
| bool | pushedRAS |
| bool | wasCall |
| Whether or not the instruction was a call. More... | |
| bool | wasReturn |
| Whether or not the instruction was a return. More... | |
| bool | wasIndirect |
| Wether this instruction was an indirect branch. More... | |
| Addr | target |
| Target of the branch. More... | |
| const StaticInstPtr | inst |
| The branch instrction. More... | |
Definition at line 194 of file bpred_unit.hh.
|
inline |
Makes a predictor history struct that contains any information needed to update the predictor, BTB, and RAS.
Definition at line 200 of file bpred_unit.hh.
|
inline |
Definition at line 211 of file bpred_unit.hh.
References seqNum.
| void* gem5::branch_prediction::BPredUnit::PredictorHistory::bpHistory |
Pointer to the history object passed back from the branch predictor.
It is used to update or restore state of the branch predictor.
Definition at line 225 of file bpred_unit.hh.
| void* gem5::branch_prediction::BPredUnit::PredictorHistory::indirectHistory |
Definition at line 227 of file bpred_unit.hh.
| const StaticInstPtr gem5::branch_prediction::BPredUnit::PredictorHistory::inst |
The branch instrction.
Definition at line 262 of file bpred_unit.hh.
| Addr gem5::branch_prediction::BPredUnit::PredictorHistory::pc |
The PC associated with the sequence number.
Definition at line 219 of file bpred_unit.hh.
| bool gem5::branch_prediction::BPredUnit::PredictorHistory::predTaken |
Whether or not it was predicted taken.
Definition at line 239 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| bool gem5::branch_prediction::BPredUnit::PredictorHistory::pushedRAS |
Definition at line 245 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| unsigned gem5::branch_prediction::BPredUnit::PredictorHistory::RASIndex |
The RAS index of the instruction (only valid if a call).
Definition at line 233 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| TheISA::PCState gem5::branch_prediction::BPredUnit::PredictorHistory::RASTarget |
The RAS target (only valid if a return).
Definition at line 230 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| InstSeqNum gem5::branch_prediction::BPredUnit::PredictorHistory::seqNum |
The sequence number for the predictor history entry.
Definition at line 216 of file bpred_unit.hh.
Referenced by operator==().
| Addr gem5::branch_prediction::BPredUnit::PredictorHistory::target |
Target of the branch.
First it is predicted, and fixed later if necessary
Definition at line 259 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| ThreadID gem5::branch_prediction::BPredUnit::PredictorHistory::tid |
The thread id.
Definition at line 236 of file bpred_unit.hh.
| bool gem5::branch_prediction::BPredUnit::PredictorHistory::usedRAS |
Whether or not the RAS was used.
Definition at line 242 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| bool gem5::branch_prediction::BPredUnit::PredictorHistory::wasCall |
Whether or not the instruction was a call.
Definition at line 248 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| bool gem5::branch_prediction::BPredUnit::PredictorHistory::wasIndirect |
Wether this instruction was an indirect branch.
Definition at line 254 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().
| bool gem5::branch_prediction::BPredUnit::PredictorHistory::wasReturn |
Whether or not the instruction was a return.
Definition at line 251 of file bpred_unit.hh.
Referenced by gem5::branch_prediction::BPredUnit::predict().