55 panic(
"thread info not compiled into kernel\n");
73 if (base ==
ULL(0xfffffc0000000000))
200 for (
int i = 0, size =
stack.size();
i < size; ++
i) {
209 symtab->findSymbol(addr, symbol);
211 DPRINTFN(
"%#x: %s\n", addr, symbol);
#define panic(...)
This implements a cprintf based panic() function.
virtual System * getSystemPtr()=0
const std::string & name()
ProcessInfo(ThreadContext *_tc)
Addr task(Addr ksp) const
const ByteOrder GuestByteOrder
virtual PortProxy & getVirtProxy()=0
T read(Addr address) const
Read sizeof(T) bytes from address and return as object T.
virtual BaseCPU * getCpuPtr()=0
ThreadContext is the external interface to all thread state for anything outside of the CPU...
bool decodePrologue(Addr sp, Addr callpc, Addr func, int &size, Addr &ra)
const int ReturnAddressReg
bool decodeStack(MachInst inst, int &disp)
bool findAddress(const std::string &symbol, Addr &address) const
std::string name(Addr ksp) const
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
#define ULL(N)
uint64_t constant
virtual const std::string name() const
bool decodeSave(MachInst inst, int ®, int &disp)
SymbolTable * kernelSymtab
kernel symbol table
This object is a proxy for a port or other object which implements the functional response protocol...
void trace(ThreadContext *tc, bool is_call)
void readString(std::string &str, Addr addr) const
Same as tryReadString, but insists on success.
This is exposed globally, independent of the ISA.
TranslatingPortProxy Object Declaration for FS.
void dump()
Dump all statistics data to the registered outputs.
static int32_t readSymbol(ThreadContext *tc, const std::string name)
std::vector< Addr > stack