forked from len0rd/rockbox
imxtools/sbtools: "fix" address handling in ELF
This is a common problem that proprietary tools don't handle ELF files correctly. ELF sections use a virtual address and the virtual -> physical translation is done though segments. This allows to have a load (physical) address different from the virtual one. Here is the trick: proprietary tools usually don't take the pain to do the translation and just grab the virtual address. This commit implements proper translation in elftosb1 knowing that this introduce a deviation from the behaviour of the proprietary tool. Change-Id: I91721a3a8dead382a0603f84ae3b35c5eb9704eb
This commit is contained in:
parent
1e2e79d668
commit
47f6d77690
1 changed files with 1 additions and 1 deletions
|
|
@ -377,7 +377,7 @@ static int load_elf(struct sb1_file_t *sb, const char *filename, int act)
|
|||
fclose(fd);
|
||||
if(!loaded)
|
||||
bug("error loading elf file '%s'\n", filename);
|
||||
//elf_translate_addresses(&elf);
|
||||
elf_translate_addresses(&elf);
|
||||
elf_sort_by_address(&elf);
|
||||
|
||||
struct elf_section_t *esec = elf.first_section;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue