diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-07-08 00:22:51 +0000 |
---|---|---|
committer | Mark Mitchell <mark@codesourcery.com> | 1999-07-08 00:22:51 +0000 |
commit | 22c675a780d55d7d527e849acc2993a85f2b3e50 (patch) | |
tree | a413071bfcbb6e5490962d797c5eab947b4ff662 /ld/emulparams | |
parent | c5aa993b1f4add48fbdc6cc3117059f616e49875 (diff) | |
download | gdb-22c675a780d55d7d527e849acc2993a85f2b3e50.zip gdb-22c675a780d55d7d527e849acc2993a85f2b3e50.tar.gz gdb-22c675a780d55d7d527e849acc2993a85f2b3e50.tar.bz2 |
* Makefile.am (ALL_64_EMULATIONS): Add eelf64bmip.
(eelf64bmip): New target.
* Makefile.in: Regenerated.
* configure.tgt (mips-sgi-irix6*): Add 64-bit emulation.
* emulparams/elf64bmip.sh: New file.
Diffstat (limited to 'ld/emulparams')
-rwxr-xr-x | ld/emulparams/elf64bmip.sh | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/ld/emulparams/elf64bmip.sh b/ld/emulparams/elf64bmip.sh new file mode 100755 index 0000000..c77cee4 --- /dev/null +++ b/ld/emulparams/elf64bmip.sh @@ -0,0 +1,47 @@ +# This is an ELF platform. +SCRIPT_NAME=elf + +# Handle both big- and little-ended 32-bit MIPS objects. +ARCH=mips +OUTPUT_FORMAT="elf64-bigmips" +BIG_OUTPUT_FORMAT="elf64-bigmips" +LITTLE_OUTPUT_FORMAT="elf64-littlemips" + +# Note that the elf32 template is used for 64-bit emulations as well +# as 32-bit emulations. +ELFSIZE=64 +TEMPLATE_NAME=elf32 + +TEXT_START_ADDR=0x10000000 +MAXPAGESIZE=0x100000 +ENTRY=__start + +# GOT-related settings. +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } + .srdata : { *(.srdata) } +' + +# Magic symbols. +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +# IRIX6 defines these symbols. 0x40 is the size of the ELF header. +EXECUTABLE_SYMBOLS=" + __dso_displacement = 0; + __elf_header = ${TEXT_START_ADDR}; + __program_header_table = ${TEXT_START_ADDR} + 0x40; +" + +# There are often dynamic relocations against the .rodata section. +# Setting DT_TEXTREL in the .dynamic section does not convince the +# IRIX6 linker to permit relocations against the text segment. +# Following the IRIX linker, we simply put .rodata in the data +# segment. +WRITABLE_RODATA= + + |