From 715727bfb035ceb91b98fa52922c98eabf921c5d Mon Sep 17 00:00:00 2001 From: brolley Date: Tue, 5 Feb 2002 16:33:02 +0000 Subject: [PATCH] 2002-02-05 Dave Brolley * elfload.c (readElfFile): Obtain the load address from offset 24 for elf64 and from offset 12 for elf32. --- sid/component/loader/ChangeLog | 5 +++++ sid/component/loader/elfload.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/sid/component/loader/ChangeLog b/sid/component/loader/ChangeLog index 3a966c5e22..5150acf3e1 100644 --- a/sid/component/loader/ChangeLog +++ b/sid/component/loader/ChangeLog @@ -1,3 +1,8 @@ +2002-02-05 Dave Brolley + + * elfload.c (readElfFile): Obtain the load address from offset 24 for + elf64 and from offset 12 for elf32. + 2001-08-15 John Healy * sw-load-elf.xml: Changed "set loader file" to "set cpu-loader file". diff --git a/sid/component/loader/elfload.c b/sid/component/loader/elfload.c index 52b3015cc4..746031c9d5 100644 --- a/sid/component/loader/elfload.c +++ b/sid/component/loader/elfload.c @@ -93,7 +93,7 @@ readElfFile (PFLOAD func, unsigned* entry_point, int* little_endian) } if (fetchWord (psymHdr, littleEndian) == PT_LOAD) { - loadAreas[loadAreaCount].loadAddr = fetchQuad(psymHdr+16, + loadAreas[loadAreaCount].loadAddr = fetchQuad(psymHdr+24, littleEndian); loadAreas[loadAreaCount].offset = fetchQuad(psymHdr+8, littleEndian); loadAreas[loadAreaCount].filesize = fetchQuad(psymHdr+32, @@ -111,7 +111,7 @@ readElfFile (PFLOAD func, unsigned* entry_point, int* little_endian) } if (fetchWord (psymHdr, littleEndian) == PT_LOAD) { - loadAreas[loadAreaCount].loadAddr = fetchWord(psymHdr+8, + loadAreas[loadAreaCount].loadAddr = fetchWord(psymHdr+12, littleEndian); loadAreas[loadAreaCount].offset = fetchWord(psymHdr+4, littleEndian); loadAreas[loadAreaCount].filesize = fetchWord(psymHdr+16, -- 2.11.0