+* TYPE=<type> is now supported in an output section description to set the
+ section type value.
+
+Changes in 2.38:
+
+* Add -z pack-relative-relocs/-z no pack-relative-relocs to x86 ELF
+ linker to pack relative relocations in the DT_RELR section.
+
+* Add support for the LoongArch architecture.
+
+* Add -z indirect-extern-access/-z noindirect-extern-access to x86 ELF
+ linker to control canonical function pointers and copy relocation.
+
+* Add --max-cache-size=SIZE to set the the maximum cache size to SIZE
+ bytes.
+
+Changes in 2.37:
+
+* arm-symbianelf support removed.
+
+* Add -z report-relative-reloc to x86 ELF linker to report dynamic
+ relative relocations.
+
+* Add -z start-stop-gc to disable special treatment of __start_*/__stop_*
+ references when --gc-sections.
+
+* Add -Bno-symbolic to cancel -Bsymbolic and -Bsymbolic-functions.
+
+Changes in 2.36:
+
+* Add libdep plugin, for linking dependencies of static libraries that
+ were recorded by ar in the __.LIBDEP archive member.
+
+* Add --error-handling-script=<NAME> command line option to allow a helper
+ script to be invoked when an undefined symbol or a missing library is
+ encountered. This option can be suppressed via the configure time
+ switch: --enable-error-handling-script=no.
+
+* Add -z lam-u48 to x86-64 ELF linker to generate LAM_U48 property.
+
+* Add -z lam-u57 to x86-64 ELF linker to enerate LAM_U57 property.
+
+* Add -z lam-u48-report=[none|warning|error] to report missing LAM_U48
+ property.
+
+* Add -z lam-u57-report=[none|warning|error] to report missing LAM_U57
+ property.
+
+* Add -z lam-report=[none|warning|error] to report missing LAM_U48 and
+ LAM_U57 properties.
+
+* Add -z x86-64-{baseline|v[234]} to the x86 ELF linker to mark
+ x86-64-{baseline|v[234]} ISA level as needed.
+
+* Add -z unique-symbol to avoid duplicated local symbol names.
+
+* The creation of PE format DLLs now defaults to using a more secure set of DLL
+ characteristics.
+
+* The linker now deduplicates the types in .ctf sections. The new
+ command-line option --ctf-share-types describes how to do this:
+ its default value, share-unconflicted, produces the most compact
+ output.
+
+* The linker now omits the "variable section" from .ctf sections by
+ default, saving space. This is almost certainly what you want
+ unless you are working on a project that has its own analogue
+ of symbol tables that are not reflected in the ELF symtabs.
+
+* Add support for the SHF_GNU_RETAIN ELF section flag.
+ This flag specifies that the section should not be garbage collected by the
+ linker.
+
+Changes in 2.35:
+
+* X86 NaCl target support is removed.
+
+* Add ELF linker command-line options, --export-dynamic-symbol and
+ --export-dynamic-symbol-list, to make symbols dynamic.
+
+* Add a configure option, --enable-textrel-check=[no|yes|warning|error],
+ to decide what ELF linker should do by default with DT_TEXTREL in an
+ executable or shared library. Default to yes for Linux/x86 targets.
+
+* The -Map=<filename> command line option has been extended so that if
+ <filename> is a directory then <filename>/<output-filename>.map will be
+ created.
+
+* Add a command-line option for ELF linker, --warn-textrel, to warn that
+ DT_TEXTREL is set in a position-independent executable or shared object.
+
+* Add command-line options --enable-non-contiguous-regions and
+ --enable-non-contiguous-regions-warnings.
+
+* Add command-line option --imagic for the pdp11-aout target to output format
+ IMAGIC (0411) for separate instruction and data spaces, and change the
+ default format option for pdp11-aout to be --omagic.
+
+* Relative pathnames in INPUT() and GROUP() directives in linker scripts are
+ searched relative to the directory of the linker script before other search
+ paths.
+
+* Add ELF linker command-line option `-z start-stop-visibility=...' to control
+ the visibility of synthetic `__start_SECNAME` and `__stop_SECNAME` symbols.
+
+* Add command-line option --dependency-file to write a Make-style dependency
+ file listing the input files consulted by the linker, like the files written
+ by the compiler's -M -MP options.
+
+Changes in 2.34:
+
+* The ld check for "PHDR segment not covered by LOAD segment" is more
+ effective, catching cases that were wrongly allowed by previous versions of
+ ld. If you see this error it is likely you are linking with a bad linker
+ script or the binary you are building is not intended to be loaded by a
+ dynamic loader. In the latter case --no-dynamic-linker is appropriate.
+
+* cr16c support removed.
+
+* Add support for z80-elf.
+
+* Add support for relocation of each byte or word of multibyte value to Z80
+ targets.
+
+* Add support for Zilog eZ80 (both ADL and Z80 mode) and Zilog Z180 CPUs.
+
+Changes in 2.33:
+
+* Add command-line option --no-print-map-discarded.
+
+* The Cortex-A53 Erratum 843419 workaround now supports a choice of which
+ workaround to use. The option --fix-cortex-a53-843419 now takes an
+ optional argument --fix-cortex-a53-843419[=full|adr|adrp] which can be
+ used to force a particular workaround to be used. See --help for AArch64
+ for more details.
+
+* Add target handlers for AArch64 for ELF GNU program properties.
+
+* Add support for GNU_PROPERTY_AARCH64_FEATURE_1_BTI in ELF GNU program
+ properties in the AArch64 ELF linker.
+
+* Add support for GNU_PROPERTY_AARCH64_FEATURE_1_PAC in ELF GNU program
+ properties in the AArch64 ELF linker.
+
+* Add -z force-bti for AArch64 to enable GNU_PROPERTY_AARCH64_FEATURE_1_BTI
+ on output while warning about missing GNU_PROPERTY_AARCH64_FEATURE_1_BTI
+ on inputs and use PLTs protected with BTI.
+
+* Add -z pac-plt for AArch64 to pick PAC enabled PLTs.
+
+Changes in 2.32:
+
+* Report property change in linker map file when merging GNU properties.
+
+* Add support for the C-SKY processor series.
+
+* -t now doesn't report members within archives, unless -t is given twice.
+ A single -t is now more useful when generating a list of files that should be
+ packaged for a linker bug report. For example:
+ gcc hello.c -save-temps -Wl,-t | xargs realpath | sort | uniq > files
+ tar cJf test.tar.xz `cat files`
+
+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:
+