* emulparams/elf32bmipn32.sh (OTHER_RELOCATING_SECTIONS): Add
[binutils-gdb.git] / ld / emulparams / elf64bmip.sh
1 # This is an ELF platform.
2 SCRIPT_NAME=elf
3
4 # Handle both big- and little-ended 32-bit MIPS objects.
5 ARCH=mips
6 OUTPUT_FORMAT="elf64-bigmips"
7 BIG_OUTPUT_FORMAT="elf64-bigmips"
8 LITTLE_OUTPUT_FORMAT="elf64-littlemips"
9
10 # Note that the elf32 template is used for 64-bit emulations as well
11 # as 32-bit emulations.
12 ELFSIZE=64
13 TEMPLATE_NAME=elf32
14
15 TEXT_START_ADDR=0x10000000
16 MAXPAGESIZE=0x100000
17 ENTRY=__start
18
19 # GOT-related settings.
20 OTHER_GOT_SYMBOLS='
21 _gp = ALIGN(16) + 0x7ff0;
22 '
23 OTHER_GOT_SECTIONS='
24 .lit8 : { *(.lit8) }
25 .lit4 : { *(.lit4) }
26 .srdata : { *(.srdata) }
27 '
28
29 # Magic symbols.
30 TEXT_START_SYMBOLS='_ftext = . ;'
31 DATA_START_SYMBOLS='_fdata = . ;'
32 OTHER_BSS_SYMBOLS='_fbss = .;'
33 # IRIX6 defines these symbols. 0x40 is the size of the ELF header.
34 EXECUTABLE_SYMBOLS="
35 __dso_displacement = 0;
36 __elf_header = ${TEXT_START_ADDR};
37 __program_header_table = ${TEXT_START_ADDR} + 0x40;
38 "
39
40 # There are often dynamic relocations against the .rodata section.
41 # Setting DT_TEXTREL in the .dynamic section does not convince the
42 # IRIX6 linker to permit relocations against the text segment.
43 # Following the IRIX linker, we simply put .rodata in the data
44 # segment.
45 WRITABLE_RODATA=
46
47
48 OTHER_RELOCATING_SECTIONS='
49 .MIPS.events.text :
50 {
51 *(.MIPS.events.text)
52 *(.MIPS.events.gnu.linkonce.t*)
53 }
54 .MIPS.content.text :
55 {
56 *(.MIPS.content.text)
57 *(.MIPS.content.gnu.linkonce.t*)
58 }
59 .MIPS.events.data :
60 {
61 *(.MIPS.events.data)
62 *(.MIPS.events.gnu.linkonce.d*)
63 }
64 .MIPS.content.data :
65 {
66 *(.MIPS.content.data)
67 *(.MIPS.content.gnu.linkonce.d*)
68 }
69 .MIPS.events.rodata :
70 {
71 *(.MIPS.events.rodata)
72 *(.MIPS.events.gnu.linkonce.r*)
73 }
74 .MIPS.content.rodata :
75 {
76 *(.MIPS.content.rodata)
77 *(.MIPS.content.gnu.linkonce.r*)
78 }
79 '