summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/ld/emulparams/elf32_spu.sh
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/binutils/ld/emulparams/elf32_spu.sh')
-rw-r--r--contrib/binutils/ld/emulparams/elf32_spu.sh20
1 files changed, 20 insertions, 0 deletions
diff --git a/contrib/binutils/ld/emulparams/elf32_spu.sh b/contrib/binutils/ld/emulparams/elf32_spu.sh
new file mode 100644
index 0000000..4af608c
--- /dev/null
+++ b/contrib/binutils/ld/emulparams/elf32_spu.sh
@@ -0,0 +1,20 @@
+SCRIPT_NAME=elf
+TEMPLATE_NAME=elf32
+EXTRA_EM_FILE=spuelf
+OUTPUT_FORMAT="elf32-spu"
+ARCH=spu
+MACHINE=
+ALIGNMENT=16
+TEXT_START_ADDR=0
+INITIAL_READONLY_SECTIONS='.interrupt : { KEEP(*(.interrupt)) }'
+if test -z "${CREATE_SHLIB}"; then
+ INITIAL_READONLY_SECTIONS="${INITIAL_READONLY_SECTIONS}
+ .interp ${RELOCATING-0} : { *(.interp) }"
+fi
+OTHER_END_SYMBOLS='PROVIDE (__stack = 0x3fff0);'
+NO_SMALL_DATA=true
+EMBEDDED=true
+MAXPAGESIZE=0x80
+DATA_ADDR="ALIGN(${MAXPAGESIZE})"
+OTHER_BSS_SECTIONS=".toe ALIGN(128) : { *(.toe) } = 0"
+OTHER_SECTIONS=".note.spu_name 0 : { KEEP(*(.note.spu_name)) }"
OpenPOWER on IntegriCloud