Go to the documentation of this file.
50 #include "debug/ExecAll.hh"
51 #include "debug/FmtTicksOff.hh"
52 #include "enums/OpClass.hh"
62 std::stringstream outs;
65 if (in_user_mode && !debug::ExecUser)
67 if (!in_user_mode && !debug::ExecKernel)
70 if (debug::ExecAsid) {
71 outs <<
"A" << std::dec <<
75 if (debug::ExecThread)
78 Addr cur_pc =
pc->instAddr();
81 if (debug::ExecSymbol && (!
FullSystem || !in_user_mode) &&
84 Addr delta = cur_pc - it->address;
86 ccprintf(outs,
" @%s+%d", it->name, delta);
103 outs << std::setw(26) << std::left;
109 if (debug::ExecOpClass) {
110 outs << enums::OpClassStrings[inst->
opClass()] <<
" : ";
114 outs <<
"Predicated False";
125 outs <<
" A=0x" << std::hex <<
addr;
128 outs <<
" FetchSeq=" << std::dec <<
fetch_seq;
131 outs <<
" CPSeq=" << std::dec <<
cp_seq;
133 if (debug::ExecFlags) {
162 ((debug::ExecMicro &&
164 (!debug::ExecMicro &&
virtual uint64_t getExecutingAsid() const
bool predicate
is the predicate for execution this inst true or false (not execed)?
virtual bool inUserMode() const =0
bool isFirstMicroop() const
void traceInst(const StaticInstPtr &inst, bool ran)
void ccprintf(cp::Print &print)
SymbolVector::const_iterator const_iterator
OpClass opClass() const
Operation class. Used to select appropriate function unit in issue.
virtual std::string name() const
std::string asString() const
enum gem5::trace::InstRecord::DataStatus dataStatus
void dprintf_flag(Tick when, const std::string &name, const std::string &flag, const char *fmt, const Args &...args)
Log a single message with a flag prefix.
StaticInstPtr macroStaticInst
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
bool isLastMicroop() const
Logger * getDebugLogger()
Get the current global debug logger.
union gem5::trace::InstRecord::Data data
bool FullSystem
The FullSystem variable can be used to determine the current mode of simulation.
virtual const std::string & disassemble(Addr pc, const loader::SymbolTable *symtab=nullptr) const
Return string representation of disassembled instruction.
std::unique_ptr< PCStateBase > pc
Addr addr
The address that was accessed.
virtual BaseCPU * getCpuPtr()=0
virtual int threadId() const =0
SymbolTable debugSymbolTable
Global unified debugging symbol table (for target).
virtual BaseISA * getIsaPtr() const =0
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
void printFlags(std::ostream &outs, const std::string &separator) const
Print a separator separated list of this instruction's set flag names on the given stream.
Generated on Sun Jul 30 2023 01:56:52 for gem5 by doxygen 1.8.17