where this happens appear next. Finally any files that reference the
symbol are listed.
+@cindex ctf variables
+@kindex --ctf-variables
+@kindex --no-ctf-variables
+@item --ctf-variables
+@item --no-ctf-variables
+The CTF debuginfo format supports a section which encodes the names and
+types of variables found in the program which do not appear in any symbol
+table. These variables clearly cannot be looked up by address by
+conventional debuggers, so the space used for their types and names is
+usually wasted: the types are usually small but the names are often not.
+@option{--ctf-variables} causes the generation of such a section.
+The default behaviour can be restored with @option{--no-ctf-variables}.
+
+@cindex ctf type sharing
+@kindex --ctf-share-types
+@item --ctf-share-types=@var{method}
+Adjust the method used to share types between translation units in CTF.
+
+@table @samp
+@item share-unconflicted
+Put all types that do not have ambiguous definitions into the shared dictionary,
+where debuggers can easily access them, even if they only occur in one
+translation unit. This is the default.
+
+@item share-duplicated
+Put only types that occur in multiple translation units into the shared
+dictionary: types with only one definition go into per-translation-unit
+dictionaries. Types with ambiguous definitions in multiple translation units
+always go into per-translation-unit dictionaries. This tends to make the CTF
+larger, but may reduce the amount of CTF in the shared dictionary. For very
+large projects this may speed up opening the CTF and save memory in the CTF
+consumer at runtime.
+@end table
+
@cindex common allocation
@kindex --no-define-common
@item --no-define-common
@xref{PowerPC ELF32,,@command{ld} and PowerPC 32-bit ELF Support}.
@end ifset
-On some platforms the @samp{--relax} option performs target-specific,
+On some platforms the @option{--relax} option performs target specific,
global optimizations that become possible when the linker resolves
addressing in the program, such as relaxing address modes,
synthesizing new instructions, selecting shorter version of current
family of processors.
@end ifset
-@ifset GENERIC
-On platforms where this is not supported, @samp{--relax} is accepted,
-but ignored.
-@end ifset
-
-On platforms where @samp{--relax} is accepted the option
-@samp{--no-relax} can be used to disable the feature.
+On platforms where the feature is supported, the option
+@option{--no-relax} will disable it.
+On platforms where the feature is not supported, both @option{--relax}
+and @option{--no-relax} are accepted, but ignored.
+
@cindex retaining specified symbols
@cindex stripping all but some symbols
@cindex symbols, retaining selectively
@kindex --high-entropy-va
@item --high-entropy-va
+@itemx --disable-high-entropy-va
Image is compatible with 64-bit address space layout randomization
-(ASLR).
+(ASLR). This option is enabled by default for 64-bit PE images.
+
This option also implies @option{--dynamicbase} and
@option{--enable-reloc-section}.
@kindex --dynamicbase
@item --dynamicbase
+@itemx --disable-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.
+Vista for i386 PE targets. This option is enabled by default but
+can be disabled via the @option{--disable-dynamicbase} option.
This option also implies @option{--enable-reloc-section}.
@kindex --forceinteg
@item --forceinteg
-Code integrity checks are enforced.
+@itemx --disable-forceinteg
+Code integrity checks are enforced. This option is disabled by
+default.
@kindex --nxcompat
@item --nxcompat
+@item --disable-nxcompat
The image is compatible with the Data Execution Prevention.
-This feature was introduced with MS Windows XP SP2 for i386 PE targets.
+This feature was introduced with MS Windows XP SP2 for i386 PE
+targets. The option is enabled by default.
@kindex --no-isolation
@item --no-isolation
+@itemx --disable-no-isolation
Although the image understands isolation, do not isolate the image.
+This option is disabled by default.
@kindex --no-seh
@item --no-seh
+@itemx --disable-no-seh
The image does not use SEH. No SE handler may be called from
-this image.
+this image. This option is disabled by default.
@kindex --no-bind
@item --no-bind
-Do not bind this image.
+@itemx --disable-no-bind
+Do not bind this image. This option is disabled by default.
@kindex --wdmdriver
@item --wdmdriver
-The driver uses the MS Windows Driver Model.
+@itemx --disable-wdmdriver
+The driver uses the MS Windows Driver Model. This option is disabled
+by default.
@kindex --tsaware
@item --tsaware
-The image is Terminal Server aware.
+@itemx --disable-tsaware
+The image is Terminal Server aware. This option is disabled by
+default.
@kindex --insert-timestamp
@item --insert-timestamp
@kindex --enable-reloc-section
@item --enable-reloc-section
+@itemx --disable-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.
+This option is enabled by default.
@end table
@c man end