gem5  v22.1.0.0
Public Member Functions | Public Attributes | List of all members
gem5::ruby::TraceRecord Class Reference

Class for recording cache contents. More...

#include <CacheRecorder.hh>

Public Member Functions

void print (std::ostream &out) const
 

Public Attributes

int m_cntrl_id
 
Tick m_time
 
Addr m_data_address
 
Addr m_pc_address
 
RubyRequestType m_type
 
uint8_t m_data [0]
 

Detailed Description

Class for recording cache contents.

Note that the last element of the class is an array of length zero. It is used for creating variable length object, so that while writing the data to a file one does not need to copy the meta data and the actual data separately.

Definition at line 60 of file CacheRecorder.hh.

Member Function Documentation

◆ print()

void gem5::ruby::TraceRecord::print ( std::ostream &  out) const

Definition at line 43 of file CacheRecorder.cc.

References m_cntrl_id, m_data_address, m_pc_address, m_time, and m_type.

Referenced by gem5::ruby::operator<<().

Member Data Documentation

◆ m_cntrl_id

int gem5::ruby::TraceRecord::m_cntrl_id

◆ m_data

uint8_t gem5::ruby::TraceRecord::m_data[0]

◆ m_data_address

Addr gem5::ruby::TraceRecord::m_data_address

◆ m_pc_address

Addr gem5::ruby::TraceRecord::m_pc_address

Definition at line 66 of file CacheRecorder.hh.

Referenced by gem5::ruby::CacheRecorder::addRecord(), and print().

◆ m_time

Tick gem5::ruby::TraceRecord::m_time

◆ m_type

RubyRequestType gem5::ruby::TraceRecord::m_type

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

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