diff --git a/ld/ChangeLog b/ld/ChangeLog index f12b6bd27e..070e21d2a4 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,12 @@ +2018-06-07 Alan Modra + + * emulparams/elf64bmip.sh (EXECUTABLE_SYMBOLS): Don't define. + (OTHER_SYMBOLS): Define this instead. + * emulparams/elf32bmipn32.sh (EXECUTABLE_SYMBOLS): Don't define. + (OTHER_SYMBOLS): Define similarly to elf64bmip.sh. + * emulparams/elf64hppa.sh (EXECUTABLE_SYMBOLS): Don't define. + (OTHER_SYMBOLS): Define instead. + 2018-06-07 Alan Modra * emulparams/elf32_tic6x_le.sh (EXECUTABLE_SYMBOLS): Don't define. diff --git a/ld/emulparams/elf32bmipn32.sh b/ld/emulparams/elf32bmipn32.sh index c26b6b3dcb..4ad6681055 100644 --- a/ld/emulparams/elf32bmipn32.sh +++ b/ld/emulparams/elf32bmipn32.sh @@ -6,10 +6,12 @@ SHLIB_TEXT_START_ADDR=0x5ffe0000 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)" # IRIX6 defines these symbols. 0x34 is the size of the ELF header. -EXECUTABLE_SYMBOLS=" +OTHER_SYMBOLS=" __dso_displacement = 0; - __elf_header = ${TEXT_START_ADDR}; - __program_header_table = ${TEXT_START_ADDR} + 0x34; + ${CREATE_SHLIB-${CREATE_PIE-__elf_header = ${TEXT_START_ADDR};}} + ${CREATE_SHLIB+__elf_header = ${SHLIB_TEXT_START_ADDR};} + ${CREATE_PIE+__elf_header = ${SHLIB_TEXT_START_ADDR};} + __program_header_table = __elf_header + 0x34; " # There are often dynamic relocations against the .rodata section. diff --git a/ld/emulparams/elf64bmip.sh b/ld/emulparams/elf64bmip.sh index 0df65285f5..281f516916 100644 --- a/ld/emulparams/elf64bmip.sh +++ b/ld/emulparams/elf64bmip.sh @@ -5,7 +5,7 @@ LITTLE_OUTPUT_FORMAT="elf64-littlemips" SHLIB_TEXT_START_ADDR=0x3ffffe0000 # IRIX6 defines these symbols. 0x40 is the size of the ELF header. -EXECUTABLE_SYMBOLS=" +OTHER_SYMBOLS=" __dso_displacement = 0; ${CREATE_SHLIB-${CREATE_PIE-__elf_header = ${TEXT_START_ADDR};}} ${CREATE_SHLIB+__elf_header = ${SHLIB_TEXT_START_ADDR};} diff --git a/ld/emulparams/elf64hppa.sh b/ld/emulparams/elf64hppa.sh index eeeadeafca..1ed32f9721 100644 --- a/ld/emulparams/elf64hppa.sh +++ b/ld/emulparams/elf64hppa.sh @@ -67,7 +67,7 @@ PLT_BEFORE_GOT= TEXT_DYNAMIC= # The linker is required to define these two symbols. -EXECUTABLE_SYMBOLS='PROVIDE (__SYSTEM_ID = 0x214); PROVIDE (_FPU_STATUS = 0x0);' +OTHER_SYMBOLS='PROVIDE (__SYSTEM_ID = 0x214); PROVIDE (_FPU_STATUS = 0x0);' # The PA64 ELF port needs two additional initializer sections and also wants # a start/end symbol pair for the .init and .fini sections. INIT_START='KEEP (*(.HP.init)); PROVIDE (__preinit_start = .); KEEP (*(.preinit)); PROVIDE (__preinit_end = .); PROVIDE (__init_start = .);'