X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=ld%2FNEWS;h=47d06c981c72b6266cc3a0c9cccaea26eec91a27;hb=cbb09508e4b515501273288aaa11a8ef5e15e0ff;hp=b373f7cc97deb2b8b9604ae7fa6f53a2c8913b3a;hpb=647e4d46495f2bfb0950fd1066c8a660173cca40;p=deliverable%2Fbinutils-gdb.git diff --git a/ld/NEWS b/ld/NEWS index b373f7cc97..47d06c981c 100644 --- a/ld/NEWS +++ b/ld/NEWS @@ -1,8 +1,96 @@ -*- text -*- +Changes in 2.31: + +* Speed up direct linking with DLLs for Cygwin and Mingw targets. + +* Add a configure option --enable-separate-code to decide whether + -z separate-code should be enabled in ELF linker by default. Default + to yes for Linux/x86 targets. Note that -z separate-code can increase + disk and memory size. + +Changes in 2.30: + +* Add -z separate-code to generate separate code PT_LOAD segment. + +* Add "-z undefs" command-line option as the inverse of the "-z defs" option. + +* Add -z globalaudit command-line option to force audit libraries to be run + for every dynamic object loaded by an executable - provided that the loader + supports this functionality. + +* Tighten linker script grammar around file name specifiers to prevent the use + of SORT_BY_ALIGNMENT and SORT_BY_INIT_PRIORITY on filenames. These would + previously be accepted but had no effect. + +* The EXCLUDE_FILE directive can now be placed within any SORT_* directive + within input section lists. + +Changes in 2.29: + +* Support for -z shstk in the x86 ELF linker to generate + GNU_PROPERTY_X86_FEATURE_1_SHSTK in ELF GNU program properties. + +* Add support for GNU_PROPERTY_X86_FEATURE_1_SHSTK in ELF GNU program + properties in the x86 ELF linker. + +* Add support for GNU_PROPERTY_X86_FEATURE_1_IBT in ELF GNU program + properties in the x86 ELF linker. + +* Support for -z ibtplt in the x86 ELF linker to generate IBT-enabled + PLT. + +* Support for -z ibt in the x86 ELF linker to generate IBT-enabled + PLT as well as GNU_PROPERTY_X86_FEATURE_1_IBT in ELF GNU program + properties. + +* Add support for ELF SHF_GNU_MBIND and PT_GNU_MBIND_XXX. + +* Add support for ELF GNU program properties. + +* Add support for the Texas Instruments PRU processor. + +* When configuring for arc*-*-linux* targets the default linker emulation will + change if --with-cpu=nps400 is used at configure time. + +* Improve assignment of LMAs to orphan sections in some edge cases where a + mixture of both AT>LMA_REGION and AT(LMA) are used. + +* Orphan sections placed after an empty section that has an AT(LMA) will now + take an load memory address starting from LMA. + +* Section groups can now be resolved (the group deleted and the group members + placed like normal sections) at partial link time either using the new linker + option --force-group-allocation or by placing FORCE_GROUP_ALLOCATION into the + linker script. + +Changes in 2.28: + +* The EXCLUDE_FILE linker script construct can now be applied outside of the + section list in order for the exclusions to apply over all input sections in + the list. + +* Add support for the RISC-V architecture. + +* The command-line option --no-eh-frame-hdr can now be used in ELF based + linkers to disable the automatic generation of .eh_frame_hdr sections. + +* Add --in-implib= to the ARM linker to enable specifying a set of + Secure Gateway veneers that must exist in the output import library specified + by --out-implib= and the address they must have. As such, + --in-implib is only supported in combination with --cmse-implib. + +* Extended the --out-implib= option, previously restricted to x86 PE + targets, to any ELF based target. This allows the generation of an import + library for an ELF executable, which can then be used by another application + to link against the executable. + +Changes in 2.27: + * Add a configure option --enable-relro to decide whether -z relro should be enabled in ELF linker by default. Default to yes for all Linux - targets except FRV, HPPA, IA64 and MIPS. + targets except FRV, HPPA, IA64 and MIPS. Note that -z relro can increase + disk and memory size. * Support for -z noreloc-overflow in the x86-64 ELF linker to disable relocation overflow check. @@ -32,10 +120,10 @@ Changes in 2.26: * Experimental support for linker garbage collection (--gc-sections) has been enabled for COFF and PE based targets. -* New command line option for ELF targets to compress DWARF debug +* New command-line option for ELF targets to compress DWARF debug sections, --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi]. -* New command line option, --orphan-handling=[place|warn|error|discard], to +* New command-line option, --orphan-handling=[place|warn|error|discard], to adjust how orphan sections are handled. The default is 'place' which gives the current behaviour, 'warn' and 'error' issue a warning or error respectively when orphan sections are found, and 'discard' will discard all @@ -52,11 +140,11 @@ Changes in 2.25: * PE binaries now once again contain real timestamps by default. To disable the inclusion of a timestamp in a PE binary, use the --no-insert-timestamp - command line option. + command-line option. * Replace support for openrisc and or32 with support for or1k. -* Add support for the --build-id command line option to COFF based targets. +* Add support for the --build-id command-line option to COFF based targets. * x86/x86_64 pe-coff now supports the --build-id option. @@ -182,7 +270,7 @@ Changes in 2.20: latter case the library is not linked if it is found in a DT_NEEDED entry of one of the libraries already linked. -* Add a new command line option, -Ttext-segment ADDR, for ELF targets +* Add a new command-line option, -Ttext-segment ADDR, for ELF targets to set the address of the first byte of the text segment. * Add support for Sunplus score architecture. @@ -217,11 +305,11 @@ Changes in 2.19: direction of sorting. * The M68K linker now supports multiple GOT generation schemes controlled via - the --got= command line option. + the --got= command-line option. * The ARM EABI linker will now generate stubs for function calls to symbols that are too far away. The placement of the stubs is controlled by a new - linker command line option: --stub-group-size=N. + linker command-line option: --stub-group-size=N. Changes in 2.18: @@ -236,7 +324,7 @@ Changes in 2.18: * -l:foo now searches the library path for a filename called foo, without converting it to libfoo.a or libfoo.so. -* Add a new command line option '--default-script=FILE' or '-dT FILE' +* Add a new command-line option '--default-script=FILE' or '-dT FILE' which specifies a replacement for the built in, default linker script. @@ -310,7 +398,7 @@ Changes in 2.16: language to permit sorting sections by section name or section maximum alignment. -* Added a new linker command line switch, --sort-section name|alignment, +* Added a new linker command-line switch, --sort-section name|alignment, to sort sections by section name or maximum alignment. * ELF: --add-needed/--no-add-needed options to control if a DT_NEEDED tag @@ -320,7 +408,7 @@ Changes in 2.16: * Support for the sh-symbianelf target added. -* A new linker command line switch has been added which allows the hash table +* A new linker command-line switch has been added which allows the hash table size to be set to a suitable prime value near to its argument. This switch is --hash-size=. Also if the switch --reduce-memory-overheads is used, and --hash-size has not been used, then the default value will be set @@ -420,7 +508,7 @@ Changes in version 2.11: * TI C54x support, by Timothy Wall. -* Added command line switch --section-start to set the start address of any +* Added command-line switch --section-start to set the start address of any specified section. * Added ability to emit full relocation information in linked executables, @@ -640,7 +728,7 @@ Changes in version 2.1: other utilities should work on Risc/Ultrix and Irix. -Copyright (C) 2012-2016 Free Software Foundation, Inc. +Copyright (C) 2012-2018 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright