From 582875bf3ae0a9e266fe9b49b93b8b8e1748c918 Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Wed, 27 Jun 2018 22:33:55 -0700 Subject: 4279 - load_elf() now working on teensy/test5 Turns out it was an open question I never got around to answering. --- subx/020elf.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'subx/020elf.cc') diff --git a/subx/020elf.cc b/subx/020elf.cc index 7bc6ded8..be6153fc 100644 --- a/subx/020elf.cc +++ b/subx/020elf.cc @@ -39,11 +39,11 @@ void load_elf_contents(uint8_t* elf_contents, size_t length) { uint32_t p_vaddr = u32_in(&elf_contents[e_phoff + 8]); uint32_t p_memsz = u32_in(&elf_contents[e_phoff + 20]); - Mem.resize(p_memsz); // TODO: not sure if this should be + p_vaddr + Mem.resize(p_vaddr + p_memsz); if (length > p_memsz - p_vaddr) length = p_memsz - p_vaddr; for (size_t i = 0; i < length; ++i) Mem.at(p_vaddr + i) = elf_contents[i]; - End_of_program = p_memsz; + End_of_program = p_vaddr + p_memsz; // TODO: need to set up real stack somewhere -- cgit 1.4.1-2-gfad0