gem5  v22.1.0.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
gem5::linux::ThreadInfo Class Reference

#include <threadinfo.hh>

Public Member Functions

 ThreadInfo (ThreadContext *_tc)
 
 ~ThreadInfo ()
 
virtual Addr curThreadInfo ()
 
Addr curTaskInfo (Addr thread_info=0)
 
int32_t curTaskPIDFromTaskStruct (Addr task_struct)
 
int32_t curTaskPID (Addr thread_info=0)
 
int32_t curTaskTGIDFromTaskStruct (Addr task_struct)
 
int32_t curTaskTGID (Addr thread_info=0)
 
int64_t curTaskStartFromTaskStruct (Addr task_struct)
 
int64_t curTaskStart (Addr thread_info=0)
 
std::string curTaskNameFromTaskStruct (Addr task_struct)
 
std::string curTaskName (Addr thread_info=0)
 
int32_t curTaskMmFromTaskStruct (Addr task_struct)
 
int32_t curTaskMm (Addr thread_info=0)
 

Private Member Functions

template<typename T >
bool get_data (const char *symbol, T &data)
 

Private Attributes

ThreadContexttc
 
Systemsys
 
ByteOrder byteOrder
 

Detailed Description

Definition at line 43 of file threadinfo.hh.

Constructor & Destructor Documentation

◆ ThreadInfo()

gem5::linux::ThreadInfo::ThreadInfo ( ThreadContext _tc)
inline

Definition at line 70 of file threadinfo.hh.

◆ ~ThreadInfo()

gem5::linux::ThreadInfo::~ThreadInfo ( )
inline

Definition at line 76 of file threadinfo.hh.

Member Function Documentation

◆ curTaskInfo()

Addr gem5::linux::ThreadInfo::curTaskInfo ( Addr  thread_info = 0)
inline

◆ curTaskMm()

int32_t gem5::linux::ThreadInfo::curTaskMm ( Addr  thread_info = 0)
inline

Definition at line 187 of file threadinfo.hh.

References curTaskInfo(), and curTaskMmFromTaskStruct().

◆ curTaskMmFromTaskStruct()

int32_t gem5::linux::ThreadInfo::curTaskMmFromTaskStruct ( Addr  task_struct)
inline

Definition at line 177 of file threadinfo.hh.

References get_data(), gem5::ArmISA::offset, gem5::PortProxy::read(), and tc.

Referenced by curTaskMm().

◆ curTaskName()

std::string gem5::linux::ThreadInfo::curTaskName ( Addr  thread_info = 0)
inline

Definition at line 171 of file threadinfo.hh.

References curTaskInfo(), and curTaskNameFromTaskStruct().

◆ curTaskNameFromTaskStruct()

std::string gem5::linux::ThreadInfo::curTaskNameFromTaskStruct ( Addr  task_struct)
inline

Definition at line 152 of file threadinfo.hh.

References get_data(), gem5::ArmISA::offset, gem5::PortProxy::readString(), and tc.

Referenced by curTaskName().

◆ curTaskPID()

int32_t gem5::linux::ThreadInfo::curTaskPID ( Addr  thread_info = 0)
inline

Definition at line 112 of file threadinfo.hh.

References curTaskInfo(), and curTaskPIDFromTaskStruct().

◆ curTaskPIDFromTaskStruct()

int32_t gem5::linux::ThreadInfo::curTaskPIDFromTaskStruct ( Addr  task_struct)
inline

Definition at line 102 of file threadinfo.hh.

References get_data(), gem5::ArmISA::offset, gem5::PortProxy::read(), and tc.

Referenced by curTaskPID().

◆ curTaskStart()

int64_t gem5::linux::ThreadInfo::curTaskStart ( Addr  thread_info = 0)
inline

Definition at line 146 of file threadinfo.hh.

References curTaskInfo(), and curTaskStartFromTaskStruct().

◆ curTaskStartFromTaskStruct()

int64_t gem5::linux::ThreadInfo::curTaskStartFromTaskStruct ( Addr  task_struct)
inline

Definition at line 134 of file threadinfo.hh.

References get_data(), gem5::ArmISA::offset, gem5::PortProxy::read(), and tc.

Referenced by curTaskStart().

◆ curTaskTGID()

int32_t gem5::linux::ThreadInfo::curTaskTGID ( Addr  thread_info = 0)
inline

Definition at line 128 of file threadinfo.hh.

References curTaskInfo(), and curTaskTGIDFromTaskStruct().

◆ curTaskTGIDFromTaskStruct()

int32_t gem5::linux::ThreadInfo::curTaskTGIDFromTaskStruct ( Addr  task_struct)
inline

Definition at line 118 of file threadinfo.hh.

References get_data(), gem5::ArmISA::offset, gem5::PortProxy::read(), and tc.

Referenced by curTaskTGID().

◆ curThreadInfo()

virtual Addr gem5::linux::ThreadInfo::curThreadInfo ( )
inlinevirtual

Definition at line 80 of file threadinfo.hh.

References panic.

Referenced by curTaskInfo().

◆ get_data()

template<typename T >
bool gem5::linux::ThreadInfo::get_data ( const char *  symbol,
T &  data 
)
inlineprivate

Member Data Documentation

◆ byteOrder

ByteOrder gem5::linux::ThreadInfo::byteOrder
private

Definition at line 49 of file threadinfo.hh.

Referenced by get_data().

◆ sys

System* gem5::linux::ThreadInfo::sys
private

Definition at line 47 of file threadinfo.hh.

Referenced by get_data().

◆ tc

ThreadContext* gem5::linux::ThreadInfo::tc
private

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

Generated on Wed Dec 21 2022 10:24:14 for gem5 by doxygen 1.9.1