gem5 v24.0.0.0
Loading...
Searching...
No Matches
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 42 of file threadinfo.hh.

Constructor & Destructor Documentation

◆ ThreadInfo()

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

Definition at line 69 of file threadinfo.hh.

◆ ~ThreadInfo()

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

Definition at line 75 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 186 of file threadinfo.hh.

References curTaskInfo(), and curTaskMmFromTaskStruct().

◆ curTaskMmFromTaskStruct()

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

Definition at line 176 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 170 of file threadinfo.hh.

References curTaskInfo(), and curTaskNameFromTaskStruct().

◆ curTaskNameFromTaskStruct()

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

Definition at line 151 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 111 of file threadinfo.hh.

References curTaskInfo(), and curTaskPIDFromTaskStruct().

◆ curTaskPIDFromTaskStruct()

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

Definition at line 101 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 145 of file threadinfo.hh.

References curTaskInfo(), and curTaskStartFromTaskStruct().

◆ curTaskStartFromTaskStruct()

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

Definition at line 133 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 127 of file threadinfo.hh.

References curTaskInfo(), and curTaskTGIDFromTaskStruct().

◆ curTaskTGIDFromTaskStruct()

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

Definition at line 117 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 79 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 48 of file threadinfo.hh.

Referenced by get_data().

◆ sys

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

Definition at line 46 of file threadinfo.hh.

Referenced by get_data().

◆ tc


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

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