gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
Trace::ExeTracerRecord Class Reference

#include <exetrace.hh>

Inheritance diagram for Trace::ExeTracerRecord:
Trace::InstRecord Trace::NativeTraceRecord

Public Member Functions

 ExeTracerRecord (Tick _when, ThreadContext *_thread, const StaticInstPtr _staticInst, TheISA::PCState _pc, const StaticInstPtr _macroStaticInst=NULL)
 
void traceInst (const StaticInstPtr &inst, bool ran)
 
void dump ()
 
virtual void dumpTicks (std::ostream &outs)
 
- Public Member Functions inherited from Trace::InstRecord
 InstRecord (Tick _when, ThreadContext *_thread, const StaticInstPtr _staticInst, TheISA::PCState _pc, const StaticInstPtr _macroStaticInst=NULL)
 
virtual ~InstRecord ()
 
void setWhen (Tick new_when)
 
void setMem (Addr a, Addr s, unsigned f)
 
void setData (Twin64_t d)
 
void setData (Twin32_t d)
 
void setData (uint64_t d)
 
void setData (uint32_t d)
 
void setData (uint16_t d)
 
void setData (uint8_t d)
 
void setData (int64_t d)
 
void setData (int32_t d)
 
void setData (int16_t d)
 
void setData (int8_t d)
 
void setData (double d)
 
void setFetchSeq (InstSeqNum seq)
 
void setCPSeq (InstSeqNum seq)
 
void setPredicate (bool val)
 
Tick getWhen () const
 
ThreadContextgetThread () const
 
StaticInstPtr getStaticInst () const
 
TheISA::PCState getPCState () const
 
StaticInstPtr getMacroStaticInst () const
 
Addr getAddr () const
 
Addr getSize () const
 
unsigned getFlags () const
 
bool getMemValid () const
 
uint64_t getIntData () const
 
double getFloatData () const
 
int getDataStatus () const
 
InstSeqNum getFetchSeq () const
 
bool getFetchSeqValid () const
 
InstSeqNum getCpSeq () const
 
bool getCpSeqValid () const
 

Additional Inherited Members

- Protected Types inherited from Trace::InstRecord
enum  {
  DataInvalid = 0, DataInt8 = 1, DataInt16 = 2, DataInt32 = 4,
  DataInt64 = 8, DataDouble = 3
}
 What size of data was written? More...
 
- Protected Attributes inherited from Trace::InstRecord
Tick when
 
ThreadContextthread
 
StaticInstPtr staticInst
 
TheISA::PCState pc
 
StaticInstPtr macroStaticInst
 
Addr addr
 The address that was accessed. More...
 
Addr size
 The size of the memory request. More...
 
unsigned flags
 The flags that were assigned to the request. More...
 
union {
   uint64_t   as_int
 
   double   as_double
 
data
 
InstSeqNum fetch_seq
 
InstSeqNum cp_seq
 
enum Trace::InstRecord:: { ... }  data_status
 What size of data was written? More...
 
bool mem_valid
 Are the memory fields in the record valid? More...
 
bool fetch_seq_valid
 Are the fetch sequence number fields valid? More...
 
bool cp_seq_valid
 Are the commit sequence number fields valid? More...
 
bool predicate
 is the predicate for execution this inst true or false (not execed)? More...
 

Detailed Description

Definition at line 47 of file exetrace.hh.

Constructor & Destructor Documentation

Trace::ExeTracerRecord::ExeTracerRecord ( Tick  _when,
ThreadContext _thread,
const StaticInstPtr  _staticInst,
TheISA::PCState  _pc,
const StaticInstPtr  _macroStaticInst = NULL 
)
inline

Definition at line 50 of file exetrace.hh.

Member Function Documentation

void Trace::ExeTracerRecord::dump ( )
virtual

Implements Trace::InstRecord.

Reimplemented in Trace::NativeTraceRecord.

Definition at line 147 of file exetrace.cc.

void Trace::ExeTracerRecord::dumpTicks ( std::ostream &  outs)
virtual

Definition at line 54 of file exetrace.cc.

References ccprintf().

void Trace::ExeTracerRecord::traceInst ( const StaticInstPtr inst,
bool  ran 
)

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

Generated on Fri Jun 9 2017 13:04:40 for gem5 by doxygen 1.8.6