updateBias();
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
std::vector<AuxVector<uint64_t>> auxv;
// load object file into target memory
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
//Setup the auxilliary vectors. These will already have endian conversion.
//Auxilliary vectors are loaded only for elf formatted executables.
// load object file into target memory
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
std::vector<AuxVector<IntType>> auxv;
// load object file into target memory
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
//Setup the auxilliary vectors. These will already have endian conversion.
//Auxilliary vectors are loaded only for elf formatted executables.
updateBias();
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
ElfObject* elfObject = dynamic_cast<ElfObject*>(objFile);
memState->setStackMin(memState->getStackBase());
// load object file into target memory
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
enum hardwareCaps
{
// load object file into target memory
objFile->loadSegments(initVirtMem);
+ if (objFile->getInterpreter())
+ objFile->getInterpreter()->loadSegments(initVirtMem);
enum X86CpuFeature {
X86_OnboardFPU = 1 << 0,
return loadSomeSymbols(symtab, STB_WEAK, addr_mask, base, offset);
}
-bool
-ElfObject::loadSegments(const PortProxy &mem_proxy)
-{
- if (!ObjectFile::loadSegments(mem_proxy))
- return false;
-
- if (interpreter)
- interpreter->loadSegments(mem_proxy);
-
- return true;
-}
-
void
ElfObject::getSections()
{
public:
virtual ~ElfObject() {}
- bool loadSegments(const PortProxy &mem_proxy) override;
-
virtual bool loadAllSymbols(SymbolTable *symtab, Addr base = 0,
Addr offset = 0, Addr addr_mask = maxAddr)
override;