gem5 v24.1.0.1
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Private Member Functions | Private Attributes | List of all members
gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo Class Reference

Branch information data. More...

#include <multiperspective_perceptron.hh>

Inheritance diagram for gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo:
gem5::branch_prediction::MultiperspectivePerceptronTAGE::MPPTAGEBranchInfo

Public Member Functions

 MPPBranchInfo (Addr _pc, int pcshift, bool cb)
 
unsigned int getPC () const
 
unsigned short int getPC2 () const
 
unsigned short int getHPC () const
 
unsigned int getHashFilter (bool last_ghist_bit) const
 
bool isUnconditional () const
 

Public Attributes

bool filtered
 Whether this branch has been filtered by the prefetcher.
 
bool prediction
 Result of the prediction (true is taken)
 
int yout
 Score of the perceptron.
 

Static Private Member Functions

static unsigned int hash1 (unsigned int a)
 PC Hash functions.
 
static unsigned int hash2 (unsigned int key)
 
static unsigned int hash (unsigned int key, unsigned int i)
 
static unsigned int hashPC (unsigned int pc, int pcshift)
 

Private Attributes

const unsigned int pc
 pc of the branch
 
const unsigned short int pc2
 pc of the branch, shifted 2 bits to the right
 
const unsigned short int hpc
 pc of the branch, hashed
 
const bool condBranch
 Whether this is a conditional branch.
 

Detailed Description

Branch information data.

Definition at line 73 of file multiperspective_perceptron.hh.

Constructor & Destructor Documentation

◆ MPPBranchInfo()

gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::MPPBranchInfo ( Addr  _pc,
int  pcshift,
bool  cb 
)
inline

Definition at line 133 of file multiperspective_perceptron.hh.

Member Function Documentation

◆ getHashFilter()

unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::getHashFilter ( bool  last_ghist_bit) const
inline

◆ getHPC()

unsigned short int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::getHPC ( ) const
inline

Definition at line 146 of file multiperspective_perceptron.hh.

References hpc.

◆ getPC()

unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::getPC ( ) const
inline

Definition at line 138 of file multiperspective_perceptron.hh.

References pc.

◆ getPC2()

unsigned short int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::getPC2 ( ) const
inline

Definition at line 142 of file multiperspective_perceptron.hh.

References pc2.

◆ hash()

static unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::hash ( unsigned int  key,
unsigned int  i 
)
inlinestaticprivate

Definition at line 107 of file multiperspective_perceptron.hh.

References hash1(), hash2(), and gem5::ArmISA::i.

Referenced by hashPC().

◆ hash1()

static unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::hash1 ( unsigned int  a)
inlinestaticprivate

PC Hash functions.

Definition at line 87 of file multiperspective_perceptron.hh.

References gem5::ArmISA::a.

Referenced by hash().

◆ hash2()

static unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::hash2 ( unsigned int  key)
inlinestaticprivate

Definition at line 96 of file multiperspective_perceptron.hh.

References gem5::MipsISA::c2.

Referenced by hash().

◆ hashPC()

static unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::hashPC ( unsigned int  pc,
int  pcshift 
)
inlinestaticprivate

◆ isUnconditional()

bool gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::isUnconditional ( ) const
inline

Definition at line 154 of file multiperspective_perceptron.hh.

References condBranch.

Member Data Documentation

◆ condBranch

const bool gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::condBranch
private

Whether this is a conditional branch.

Definition at line 82 of file multiperspective_perceptron.hh.

Referenced by isUnconditional().

◆ filtered

bool gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::filtered

Whether this branch has been filtered by the prefetcher.

Definition at line 127 of file multiperspective_perceptron.hh.

◆ hpc

const unsigned short int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::hpc
private

pc of the branch, hashed

Definition at line 80 of file multiperspective_perceptron.hh.

Referenced by getHashFilter(), and getHPC().

◆ pc

const unsigned int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::pc
private

pc of the branch

Definition at line 76 of file multiperspective_perceptron.hh.

Referenced by getPC(), and hashPC().

◆ pc2

const unsigned short int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::pc2
private

pc of the branch, shifted 2 bits to the right

Definition at line 78 of file multiperspective_perceptron.hh.

Referenced by getPC2().

◆ prediction

bool gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::prediction

Result of the prediction (true is taken)

Definition at line 129 of file multiperspective_perceptron.hh.

◆ yout

int gem5::branch_prediction::MultiperspectivePerceptron::MPPBranchInfo::yout

Score of the perceptron.

Definition at line 131 of file multiperspective_perceptron.hh.


The documentation for this class was generated from the following file:

Generated on Mon Jan 13 2025 04:29:05 for gem5 by doxygen 1.9.8