Some bare metal build flows seem to build binaries that we aren't necessarily
expecting. Initialize everything to 0, so we don't make any assumptions about
what is or isn't in the binary.
// initialize segment sizes to 0 in case they're not present
text.size = data.size = bss.size = 0;
+ text.baseAddr = data.baseAddr = bss.baseAddr = 0;
int secIdx = 1;
Elf_Scn *section;
size_t _len, uint8_t *_data,
Arch _arch, OpSys _opSys)
: filename(_filename), descriptor(_fd), fileData(_data), len(_len),
- arch(_arch), opSys(_opSys)
+ arch(_arch), opSys(_opSys), globalPtr(0)
{
}