X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=ld%2Fld.texi;h=9bb3d55587bcb9722f7b4e28cebec7074cd716a2;hb=cb001c0d283dd884efe06770d033a50fb1bc6c7d;hp=ed538fbfe2b18ade20f46a857b33acb31e763395;hpb=a2e098c378a96e7d7760aa52c1b49680c67674be;p=deliverable%2Fbinutils-gdb.git diff --git a/ld/ld.texi b/ld/ld.texi index ed538fbfe2..9bb3d55587 100644 --- a/ld/ld.texi +++ b/ld/ld.texi @@ -1,6 +1,6 @@ \input texinfo @setfilename ld.info -@c Copyright (C) 1991-2019 Free Software Foundation, Inc. +@c Copyright (C) 1991-2020 Free Software Foundation, Inc. @syncodeindex ky cp @c man begin INCLUDE @include configdoc.texi @@ -56,7 +56,7 @@ This file documents the @sc{gnu} linker LD @end ifset version @value{VERSION}. -Copyright @copyright{} 1991-2019 Free Software Foundation, Inc. +Copyright @copyright{} 1991-2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 @@ -93,7 +93,7 @@ section entitled ``GNU Free Documentation License''. @vskip 0pt plus 1filll @c man begin COPYRIGHT -Copyright @copyright{} 1991-2019 Free Software Foundation, Inc. +Copyright @copyright{} 1991-2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 @@ -2995,12 +2995,15 @@ of the PE file header: @item --high-entropy-va Image is compatible with 64-bit address space layout randomization (ASLR). +This option also implies @option{--dynamicbase} and +@option{--enable-reloc-section}. @kindex --dynamicbase @item --dynamicbase The image base address may be relocated using address space layout randomization (ASLR). This feature was introduced with MS Windows Vista for i386 PE targets. +This option also implies @option{--enable-reloc-section}. @kindex --forceinteg @item --forceinteg @@ -3043,6 +3046,11 @@ same sources are linked. The option @option{--no-insert-timestamp} can be used to insert a zero value for the timestamp, this ensuring that binaries produced from identical sources will compare identically. + +@kindex --enable-reloc-section +@item --enable-reloc-section +Create the base relocation table, which is necessary if the image +is loaded at a different image base than specified in the PE header. @end table @c man end @@ -7587,18 +7595,27 @@ disable the optimization. @cindex PowerPC64 __tls_get_addr optimization @kindex --tls-get-addr-optimize @kindex --no-tls-get-addr-optimize +@kindex --tls-get-addr-regsave +@kindex --no-tls-get-addr-regsave @item --tls-get-addr-optimize @itemx --no-tls-get-addr-optimize -These options control whether PowerPC64 @command{ld} uses a special +These options control how PowerPC64 @command{ld} uses a special stub to call __tls_get_addr. PowerPC64 glibc 2.22 and later support an optimization that allows the second and subsequent calls to @code{__tls_get_addr} for a given symbol to be resolved by the special -stub without calling in to glibc. By default the linker enables this -option when glibc advertises the availability of __tls_get_addr_opt. -Forcing this option on when using an older glibc won't do much besides -slow down your applications, but may be useful if linking an -application against an older glibc with the expectation that it will -normally be used on systems having a newer glibc. +stub without calling in to glibc. By default the linker enables +generation of the stub when glibc advertises the availability of +__tls_get_addr_opt. +Using @option{--tls-get-addr-optimize} with an older glibc won't do +much besides slow down your applications, but may be useful if linking +an application against an older glibc with the expectation that it +will normally be used on systems having a newer glibc. +@option{--tls-get-addr-regsave} forces generation of a stub that saves +and restores volatile registers around the call into glibc. Normally, +this is done when the linker detects a call to __tls_get_addr_desc. +Such calls then go via the register saving stub to __tls_get_addr_opt. +@option{--no-tls-get-addr-regsave} disables generation of the +register saves. @cindex PowerPC64 OPD optimization @kindex --no-opd-optimize