gem5 v24.0.0.0
Loading...
Searching...
No Matches
gem5::FunctionProfile Class Reference

#include <profile.hh>

Public Member Functions

 FunctionProfile (std::unique_ptr< BaseStackTrace > _trace, const loader::SymbolTable &symtab)
 
ProfileNodeconsume (ThreadContext *tc, const StaticInstPtr &inst)
 
ProfileNodeconsume (const std::vector< Addr > &stack)
 
void clear ()
 
void dump (std::ostream &out) const
 
void sample (ProfileNode *node, Addr pc)
 

Private Attributes

const loader::SymbolTablesymtab
 
ProfileNode top
 
std::map< Addr, Counterpc_count
 
std::unique_ptr< BaseStackTracetrace
 

Friends

class ProfileNode
 

Detailed Description

Definition at line 130 of file profile.hh.

Constructor & Destructor Documentation

◆ FunctionProfile()

gem5::FunctionProfile::FunctionProfile ( std::unique_ptr< BaseStackTrace > _trace,
const loader::SymbolTable & symtab )

Definition at line 99 of file profile.cc.

References clear(), and gem5::statistics::registerResetCallback().

Member Function Documentation

◆ clear()

void gem5::FunctionProfile::clear ( )

Definition at line 122 of file profile.cc.

References pc_count.

Referenced by FunctionProfile().

◆ consume() [1/2]

ProfileNode * gem5::FunctionProfile::consume ( const std::vector< Addr > & stack)

◆ consume() [2/2]

ProfileNode * gem5::FunctionProfile::consume ( ThreadContext * tc,
const StaticInstPtr & inst )
inline

Definition at line 152 of file profile.hh.

References consume(), and trace.

Referenced by consume().

◆ dump()

void gem5::FunctionProfile::dump ( std::ostream & out) const

◆ sample()

void gem5::FunctionProfile::sample ( ProfileNode * node,
Addr pc )

Friends And Related Symbol Documentation

◆ ProfileNode

friend class ProfileNode
friend

Definition at line 133 of file profile.hh.

Referenced by consume().

Member Data Documentation

◆ pc_count

std::map<Addr, Counter> gem5::FunctionProfile::pc_count
private

Definition at line 137 of file profile.hh.

Referenced by clear(), dump(), and sample().

◆ symtab

const loader::SymbolTable& gem5::FunctionProfile::symtab
private

Definition at line 135 of file profile.hh.

Referenced by dump(), gem5::ProfileNode::dump(), and sample().

◆ top

ProfileNode gem5::FunctionProfile::top
private

Definition at line 136 of file profile.hh.

Referenced by consume().

◆ trace

std::unique_ptr<BaseStackTrace> gem5::FunctionProfile::trace
private

Definition at line 138 of file profile.hh.

Referenced by consume(), dump(), and gem5::ProfileNode::dump().


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

Generated on Tue Jun 18 2024 16:24:11 for gem5 by doxygen 1.11.0