gem5 v24.0.0.0
No Matches
gem5::BaseStackTrace Class Referenceabstract

#include <profile.hh>

Inheritance diagram for gem5::BaseStackTrace:
gem5::ArmISA::StackTrace gem5::MipsISA::StackTrace gem5::PowerISA::StackTrace gem5::RiscvISA::StackTrace gem5::SparcISA::StackTrace gem5::X86ISA::StackTrace

Public Member Functions

 BaseStackTrace ()
virtual ~BaseStackTrace ()
void clear ()
bool valid () const
bool trace (ThreadContext *tc, const StaticInstPtr &inst)
const std::vector< Addr > & getstack () const
void dprintf ()
virtual bool tryGetSymbol (std::string &symbol, Addr addr, const loader::SymbolTable *symtab)
void getSymbol (std::string &symbol, Addr addr, const loader::SymbolTable *symtab)

Protected Member Functions

virtual void trace (ThreadContext *tc, bool is_call)=0

Protected Attributes

ThreadContexttc = nullptr
std::vector< Addrstack

Private Member Functions

void dump ()

Detailed Description

Definition at line 51 of file profile.hh.

Constructor & Destructor Documentation

◆ BaseStackTrace()

gem5::BaseStackTrace::BaseStackTrace ( )

Definition at line 65 of file profile.hh.

◆ ~BaseStackTrace()

virtual gem5::BaseStackTrace::~BaseStackTrace ( )

Definition at line 66 of file profile.hh.

Member Function Documentation

◆ clear()

void gem5::BaseStackTrace::clear ( )

Definition at line 69 of file profile.hh.

References stack, and tc.

Referenced by trace().

◆ dprintf()

void gem5::BaseStackTrace::dprintf ( )

Definition at line 92 of file profile.hh.

References dump().

◆ dump()

◆ getstack()

const std::vector< Addr > & gem5::BaseStackTrace::getstack ( ) const

Definition at line 90 of file profile.hh.

References stack.

◆ getSymbol()

void gem5::BaseStackTrace::getSymbol ( std::string & symbol,
Addr addr,
const loader::SymbolTable * symtab )

Definition at line 105 of file profile.hh.

References gem5::X86ISA::addr, panic_if, and tryGetSymbol().

Referenced by dump().

◆ trace() [1/2]

virtual void gem5::BaseStackTrace::trace ( ThreadContext * tc,
bool is_call )
protectedpure virtual

◆ trace() [2/2]

bool gem5::BaseStackTrace::trace ( ThreadContext * tc,
const StaticInstPtr & inst )

◆ tryGetSymbol()

bool gem5::BaseStackTrace::tryGetSymbol ( std::string & symbol,
Addr addr,
const loader::SymbolTable * symtab )

◆ valid()

bool gem5::BaseStackTrace::valid ( ) const

Definition at line 75 of file profile.hh.

References tc.

Referenced by trace().

Member Data Documentation

◆ stack

std::vector<Addr> gem5::BaseStackTrace::stack

Definition at line 58 of file profile.hh.

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

◆ tc

ThreadContext* gem5::BaseStackTrace::tc = nullptr

Definition at line 57 of file profile.hh.

Referenced by clear(), dump(), trace(), and valid().

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

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