gem5
v20.1.0.0
|
#include <multiperspective_perceptron.hh>
Public Member Functions | |
MODPATH (int p1, int p2, int p3, double coeff, int size, int width, MultiperspectivePerceptron &mpp) | |
unsigned int | getHash (ThreadID tid, Addr pc, Addr pc2, int t) const override |
Gets the hash to index the table, using the pc of the branch, and the index of the table. More... | |
void | setBitRequirements () const override |
Sets the size requirements of the table, used when initializing to set the proper size of the tables. More... | |
Public Member Functions inherited from MultiperspectivePerceptron::HistorySpec | |
HistorySpec (int _p1, int _p2, int _p3, double _coeff, int _size, int _width, MultiperspectivePerceptron &_mpp) | |
Additional Inherited Members | |
Public Attributes inherited from MultiperspectivePerceptron::HistorySpec | |
const int | p1 |
First parameter. More... | |
const int | p2 |
Second parameter. More... | |
const int | p3 |
Third parameter. More... | |
const double | coeff |
Coefficient of the feature, models the accuracy of the feature. More... | |
const int | size |
Pre-assigned size in bits assigned to this feature. More... | |
const int | width |
Width of the table in bits More... | |
MultiperspectivePerceptron & | mpp |
Reference to the branch predictor class. More... | |
Definition at line 757 of file multiperspective_perceptron.hh.
|
inline |
Definition at line 759 of file multiperspective_perceptron.hh.
|
inlineoverridevirtual |
Gets the hash to index the table, using the pc of the branch, and the index of the table.
tid | Thread ID of the branch |
pc | address of the branch |
pc2 | address of the branch shifted 2 bits to the right |
t | integer index of the table |
Implements MultiperspectivePerceptron::HistorySpec.
Definition at line 764 of file multiperspective_perceptron.hh.
References ArmISA::a, ArmISA::i, MultiperspectivePerceptron::HistorySpec::mpp, MultiperspectivePerceptron::HistorySpec::p1, MultiperspectivePerceptron::HistorySpec::p2, MultiperspectivePerceptron::HistorySpec::p3, ArmISA::shift, MultiperspectivePerceptron::threadData, and RiscvISA::x.
|
inlineoverridevirtual |
Sets the size requirements of the table, used when initializing to set the proper size of the tables.
Reimplemented from MultiperspectivePerceptron::HistorySpec.
Definition at line 778 of file multiperspective_perceptron.hh.
References MultiperspectivePerceptron::insertModpathSpec(), MultiperspectivePerceptron::HistorySpec::mpp, MultiperspectivePerceptron::HistorySpec::p1, and MultiperspectivePerceptron::HistorySpec::p2.