39 #include "debug/Loader.hh"
68 :
ObjectFile(_filename, _len, _data, _arch, _opSys)
88 DPRINTFR(Loader,
"text: 0x%x %d\ndata: 0x%x %d\nbss: 0x%x %d\n",
110 warn(
"loadGlobalSymbols: wrong magic on %s\n",
filename);
116 warn(
"loadGlobalSymbols: bad symbol header magic on %s\n",
filename);
125 if (entry->
iss != -1)
140 warn(
"loadGlobalSymbols: wrong magic on %s\n",
filename);
146 warn(
"loadGlobalSymbols: bad symbol header magic on %s\n",
filename);
156 char *strings = (
char *)(local_strings + fdesc[
i].issBase);
157 for (
int j = 0;
j < fdesc[
i].
csym;
j++) {
159 if (entry[
j].iss != -1)
160 symtab->
insert(entry[
j].value, strings + entry[
j].iss);
#define ECOFF_MAGIC_ALPHA
static ObjectFile * tryFile(const std::string &fname, size_t len, uint8_t *data)
ECOFF_PAD coff_ulong tsize
const std::string filename
bool insert(Addr address, std::string symbol)
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.
virtual bool loadGlobalSymbols(SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=maxAddr)
virtual bool loadAllSymbols(SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=maxAddr)
EcoffObject(const std::string &_filename, size_t _len, uint8_t *_data, Arch _arch, OpSys _opSys)
virtual bool loadLocalSymbols(SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=maxAddr)