summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/ld/emulparams/shelf.sh
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/binutils/ld/emulparams/shelf.sh')
-rw-r--r--gnu/usr.bin/binutils/ld/emulparams/shelf.sh16
1 files changed, 16 insertions, 0 deletions
diff --git a/gnu/usr.bin/binutils/ld/emulparams/shelf.sh b/gnu/usr.bin/binutils/ld/emulparams/shelf.sh
new file mode 100644
index 00000000000..a392e933c42
--- /dev/null
+++ b/gnu/usr.bin/binutils/ld/emulparams/shelf.sh
@@ -0,0 +1,16 @@
+SCRIPT_NAME=elf
+OUTPUT_FORMAT="elf32-sh"
+TEXT_START_ADDR=0x1000
+MAXPAGESIZE=128
+ARCH=sh
+TEMPLATE_NAME=elf32
+GENERATE_SHLIB_SCRIPT=yes
+EMBEDDED=yes
+
+# These are for compatibility with the COFF toolchain.
+ENTRY=start
+CTOR_START='___ctors = .;'
+CTOR_END='___ctors_end = .;'
+DTOR_START='___dtors = .;'
+DTOR_END='___dtors_end = .;'
+OTHER_RELOCATING_SECTIONS='.stack 0x30000 : { _stack = .; *(.stack) }'