diff options
author | Roland McGrath <roland@gnu.org> | 2012-12-11 22:23:14 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2012-12-11 22:23:14 +0000 |
commit | 8634c1b4cb6d2531d1a7f068543bb61850099a1e (patch) | |
tree | 50605e0be156302c753c9b989c89f3ab3bc55364 /ld | |
parent | 2960a434c3403a088a3491b12cd3e79cbd641966 (diff) | |
download | gdb-8634c1b4cb6d2531d1a7f068543bb61850099a1e.zip gdb-8634c1b4cb6d2531d1a7f068543bb61850099a1e.tar.gz gdb-8634c1b4cb6d2531d1a7f068543bb61850099a1e.tar.bz2 |
ld/
* emulparams/elf_nacl.sh (nacl_rodata_addr): New shell function.
(RODATA_ADDR, SHLIB_RODATA_ADDR): Use it to base the calculation
on SEGMENT_START("text-segment", ...) rather than ... alone.
* Makefile.am (earmelf_nacl.c, earmelfb_nacl.c): Add missing
dependency on $(srcdir)/emulparams/elf_nacl.sh.
* Makefile.in: Regenerate.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 9 | ||||
-rw-r--r-- | ld/Makefile.am | 2 | ||||
-rw-r--r-- | ld/Makefile.in | 2 | ||||
-rw-r--r-- | ld/emulparams/elf_nacl.sh | 12 |
4 files changed, 23 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 2ad7730..705c712 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,12 @@ +2012-12-11 Roland McGrath <mcgrathr@google.com> + + * emulparams/elf_nacl.sh (nacl_rodata_addr): New shell function. + (RODATA_ADDR, SHLIB_RODATA_ADDR): Use it to base the calculation + on SEGMENT_START("text-segment", ...) rather than ... alone. + * Makefile.am (earmelf_nacl.c, earmelfb_nacl.c): Add missing + dependency on $(srcdir)/emulparams/elf_nacl.sh. + * Makefile.in: Regenerate. + 2012-12-05 H.J. Lu <hongjiu.lu@intel.com> PR ld/14915 diff --git a/ld/Makefile.am b/ld/Makefile.am index 8c14295..32f3d51 100644 --- a/ld/Makefile.am +++ b/ld/Makefile.am @@ -725,6 +725,7 @@ earmelf_linux_eabi.c: $(srcdir)/emulparams/armelf_linux_eabi.sh \ earmelf_nacl.c: $(srcdir)/emulparams/armelf_nacl.sh \ $(srcdir)/emulparams/armelf_linux_eabi.sh \ $(srcdir)/emulparams/armelf_linux.sh \ + $(srcdir)/emulparams/elf_nacl.sh \ $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} armelf_nacl "$(tdir_armelf_nacl)" @@ -758,6 +759,7 @@ earmelfb_nacl.c: $(srcdir)/emulparams/armelfb_nacl.sh \ $(srcdir)/emulparams/armelf_nacl.sh \ $(srcdir)/emulparams/armelf_linux_eabi.sh \ $(srcdir)/emulparams/armelf_linux.sh \ + $(srcdir)/emulparams/elf_nacl.sh \ $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} armelfb_nacl "$(tdir_armelfb_nacl)" diff --git a/ld/Makefile.in b/ld/Makefile.in index 98e8f0d..ce31edf 100644 --- a/ld/Makefile.in +++ b/ld/Makefile.in @@ -2198,6 +2198,7 @@ earmelf_linux_eabi.c: $(srcdir)/emulparams/armelf_linux_eabi.sh \ earmelf_nacl.c: $(srcdir)/emulparams/armelf_nacl.sh \ $(srcdir)/emulparams/armelf_linux_eabi.sh \ $(srcdir)/emulparams/armelf_linux.sh \ + $(srcdir)/emulparams/elf_nacl.sh \ $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} armelf_nacl "$(tdir_armelf_nacl)" @@ -2231,6 +2232,7 @@ earmelfb_nacl.c: $(srcdir)/emulparams/armelfb_nacl.sh \ $(srcdir)/emulparams/armelf_nacl.sh \ $(srcdir)/emulparams/armelf_linux_eabi.sh \ $(srcdir)/emulparams/armelf_linux.sh \ + $(srcdir)/emulparams/elf_nacl.sh \ $(ELF_DEPS) $(srcdir)/emultempl/armelf.em \ $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} armelfb_nacl "$(tdir_armelfb_nacl)" diff --git a/ld/emulparams/elf_nacl.sh b/ld/emulparams/elf_nacl.sh index 0073c0f..657cd06 100644 --- a/ld/emulparams/elf_nacl.sh +++ b/ld/emulparams/elf_nacl.sh @@ -2,5 +2,13 @@ ENABLE_INITFINI_ARRAY=yes SEPARATE_CODE=yes TEXT_START_ADDR=0x20000 NACL_RODATA_DISTANCE=0x10000000 -RODATA_ADDR="${TEXT_START_ADDR} + ${NACL_RODATA_DISTANCE} + SIZEOF_HEADERS" -SHLIB_RODATA_ADDR="${NACL_RODATA_DISTANCE} + SIZEOF_HEADERS" + +nacl_rodata_addr() +{ + nacl_text_addr="SEGMENT_START(\"text-segment\", $1)" + nacl_rodata_addr="$nacl_text_addr + ${NACL_RODATA_DISTANCE} + SIZEOF_HEADERS" + echo "$nacl_rodata_addr" +} + +RODATA_ADDR=`nacl_rodata_addr "${TEXT_START_ADDR}"` +SHLIB_RODATA_ADDR=`nacl_rodata_addr 0` |