X-Git-Url: https://oss.titaniummirror.com/gitweb?p=msp430-binutils.git;a=blobdiff_plain;f=ld%2Femulparams%2Felf64mmix.sh;fp=ld%2Femulparams%2Felf64mmix.sh;h=bdb5d0abcd2367a347824c8f197a1b57ab9b891d;hp=7f867fb8cff4f7df927e36abba542bbd7376c78e;hb=d5da4f291af551c0b8b79e1d4a9b173d60e5c10e;hpb=7b5ea4fcdf2819e070665ab5610f8b48e3867c10 diff --git a/ld/emulparams/elf64mmix.sh b/ld/emulparams/elf64mmix.sh index 7f867fb..bdb5d0a 100644 --- a/ld/emulparams/elf64mmix.sh +++ b/ld/emulparams/elf64mmix.sh @@ -3,6 +3,7 @@ GENERATE_SHLIB_SCRIPT=yes ELFSIZE=64 SCRIPT_NAME=elf OUTPUT_FORMAT="elf64-mmix" +NO_REL_RELOCS=yes ENTRY=_start. # Default to 0 as mmixal does. @@ -34,11 +35,14 @@ EXTRA_EM_FILE=mmixelf # DEFINED wouldn't find the symbol if it was at the top; presumably # before the definition, if the definition is not in the first file. # FIXME: Arguably a linker bug. -OTHER_TEXT_SECTIONS=' +# Only do this for a final link, or else we'll mess up e.g. error +# messages. +OTHER_TEXT_SECTIONS=" +${RELOCATING+ _start. = (DEFINED (_start) ? _start : (DEFINED (Main) ? Main : (DEFINED (.text) ? .text : 0))); PROVIDE (Main = DEFINED (Main) ? Main : (DEFINED (_start) ? _start : _start.)); -' +}" OTHER_SECTIONS=' .MMIX.reg_contents :