39 #include "debug/Loader.hh" 115 warn(
"loadGlobalSymbols: wrong magic on %s\n",
imageData->filename());
121 warn(
"loadGlobalSymbols: bad symbol header magic on %s\n",
130 (
const char *)(
imageData->data() + syms->cbSsExtOffset);
131 for (
int i = 0;
i < syms->iextMax;
i++) {
133 if (entry->
iss != -1)
148 warn(
"loadGlobalSymbols: wrong magic on %s\n",
imageData->filename());
154 warn(
"loadGlobalSymbols: bad symbol header magic on %s\n",
161 auto *local_strings = (
const char *)(
imageData->data() + syms->cbSsOffset);
164 for (
int i = 0;
i < syms->ifdMax;
i++) {
166 auto *strings = (
const char *)(local_strings + fdesc[
i].issBase);
167 for (
int j = 0;
j < fdesc[
i].csym;
j++) {
174 for (
int i = 0;
i < syms->isymMax;
i++) {
bool loadGlobalSymbols(SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=MaxAddr) override
ImageFileDataPtr imageData
EcoffObject(ImageFileDataPtr ifd)
#define ECOFF_MAGIC_ALPHA
Overload hash function for BasicBlockRange type.
MemoryImage buildImage() const override
ECOFF_PAD coff_ulong tsize
bool insert(Addr address, std::string symbol)
const ecoff_aouthdr * aoutHdr
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,16,32,64}_t.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
bool loadAllSymbols(SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=MaxAddr) override
const ecoff_exechdr * execHdr
std::shared_ptr< ImageFileData > ImageFileDataPtr
static const int NumArgumentRegs M5_VAR_USED
const ecoff_filehdr * fileHdr
bool loadLocalSymbols(SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=MaxAddr) override