Go to the documentation of this file.
43 #ifndef __ARCH_ARM_TRACERS_TARMAC_RECORD_V8_HH__
44 #define __ARCH_ARM_TRACERS_TARMAC_RECORD_V8_HH__
84 virtual void print(std::ostream& outs,
86 const std::string &prefix =
"")
const override;
101 virtual void print(std::ostream& outs,
103 const std::string &prefix =
"")
const override;
138 uint8_t _size,
Addr _addr, uint64_t _data);
140 virtual void print(std::ostream& outs,
142 const std::string &prefix =
"")
const override;
154 _parent, _macroStaticInst)
171 #endif // __ARCH_ARM_TRACERS_TARMAC_RECORD_V8_HH__
virtual void print(std::ostream &outs, int verbosity=0, const std::string &prefix="") const override
This object type is encapsulating the informations needed by a Tarmac record to generate it's own ent...
uint16_t regWidth
Size in bits of arch register.
void addInstEntry(std::vector< InstPtr > &queue, const TarmacContext &ptr)
Generates an Entry for the executed instruction.
std::string formatReg() const
Returning a string which contains the formatted register value: transformed in hex,...
Tarmac Tracer: this tracer generates a new Tarmac Record for every instruction being executed in gem5...
void updateMisc(const TarmacContext &tarmCtx, RegIndex regRelIdx) override
Register update functions.
virtual void print(std::ostream &outs, int verbosity=0, const std::string &prefix="") const override
void addRegEntry(std::vector< RegPtr > &queue, const TarmacContext &ptr)
Generate a Record for every register being written.
TraceEntryV8(std::string _cpuName)
virtual void print(std::ostream &outs, int verbosity=0, const std::string &prefix="") const override
ThreadContext is the external interface to all thread state for anything outside of the CPU.
TarmacTracer Record: Record generated by the TarmacTracer for every executed instruction.
GenericISA::DelaySlotPCState< 4 > PCState
uint64_t Tick
Tick count type.
TraceRegEntryV8(const TarmacContext &tarmCtx, const RegId ®)
void updatePred(const TarmacContext &tarmCtx, RegIndex regRelIdx) override
TraceInstEntryV8(const TarmacContext &tarmCtx, bool predicate)
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
void updateVec(const TarmacContext &tarmCtx, RegIndex regRelIdx) override
TraceMemEntryV8(const TarmacContext &tarmCtx, uint8_t _size, Addr _addr, uint64_t _data)
bool predicate
is the predicate for execution this inst true or false (not execed)?
TarmacTracer record for ARMv8 CPUs: The record is adding some data to the base TarmacTracer record.
General data shared by all v8 entries.
void addMemEntry(std::vector< MemPtr > &queue, const TarmacContext &ptr)
Generates an Entry for every memory access triggered.
void updateInt(const TarmacContext &tarmCtx, RegIndex regRelIdx) override
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
TarmacTracerRecordV8(Tick _when, ThreadContext *_thread, const StaticInstPtr _staticInst, ArmISA::PCState _pc, TarmacTracer &_parent, const StaticInstPtr _macroStaticInst=NULL)
Instruction entry for v8 records.
Register entry for v8 records.
Register ID: describe an architectural register with its class and index.
Generated on Wed Jul 28 2021 12:10:22 for gem5 by doxygen 1.8.17