summaryrefslogtreecommitdiff
path: root/ld/emulparams/armsymbian.sh
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2005-01-26 06:10:45 +0000
committerMark Mitchell <mark@codesourcery.com>2005-01-26 06:10:45 +0000
commitfe128ad163aada0497e643ed2207eace6cec6e27 (patch)
tree6624a34b7c1ed728a5195dd25420efb44526e891 /ld/emulparams/armsymbian.sh
parentcf702f687fd71ce190ac468eb85ff2611400170c (diff)
downloadbinutils-redhat-fe128ad163aada0497e643ed2207eace6cec6e27.tar.gz
* elf32-arm.c (elf_backend_default_use_rela_p): Define to zero for
SymbianOS. * emulparams/armsymbian.sh (OTHER_READONLY_SECTIONS): Define, so as to include .ARM.exidx$${Base,Limit}. * ld/scripttempl/armbpabi.sc: Move .plt to end of text segment. Define IMAGE$$ER_RO$${Base,Limit} and SHT$$INIT_ARRAY$${Base,Limit}. Put .init_array, .fini_array, etc. into the read-only data segment.
Diffstat (limited to 'ld/emulparams/armsymbian.sh')
-rw-r--r--ld/emulparams/armsymbian.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/ld/emulparams/armsymbian.sh b/ld/emulparams/armsymbian.sh
index a5c3eb52ab..a52d05b248 100644
--- a/ld/emulparams/armsymbian.sh
+++ b/ld/emulparams/armsymbian.sh
@@ -9,6 +9,16 @@ TARGET2_TYPE=abs
# On BPABI systems, program headers should not be mapped.
EMBEDDED=yes
+# As for armelf.sh, but add the SymbianOS-specific
+# .ARM.exidx$${Base,Limit} symbols.
+OTHER_READONLY_SECTIONS="
+ .ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) }
+ ${RELOCATING+ .ARM.exidx\$\$Base = . ; }
+ ${RELOCATING+ __exidx_start = .; }
+ .ARM.exidx ${RELOCATING-0} : { *(.ARM.exidx${RELOCATING+* .gnu.linkonce.armexidx.*}) }
+ ${RELOCATING+ __exidx_end = .; }
+ ${RELOCATING+ .ARM.exidx\$\$Limit = . ; }"
+
# This value should match ELF_MAXPAGESIZE in BFD. Otherwise, elf.c
# will not place read-write sections in a separate ELF segment from
# the read-only sections.