The help document of as misses some many options

PR 29623
	* as.c (show_usage): Document the --dump-config,
	--gdwarf-cie-version, --hash-size, --multibyte-handling,
	and --reduce-memory-overheads options.
	* config/tc-i386.c (md_show_usage): Document the -O option.
	* doc/as.texi: Document the --dump-config, --emulation,
	--hash-size, and --reduce-memory-overheads options.
This commit is contained in:
Nick Clifton
2022-09-28 12:56:04 +01:00
parent 67d1991b78
commit 7ebd68d142
4 changed files with 90 additions and 34 deletions

View File

@ -1,3 +1,13 @@
2022-09-28 Nick Clifton <nickc@redhat.com>
PR 29623
* as.c (show_usage): Document the --dump-config,
--gdwarf-cie-version, --hash-size, --multibyte-handling,
and --reduce-memory-overheads options.
* config/tc-i386.c (md_show_usage): Document the -O option.
* doc/as.texi: Document the --dump-config, --emulation,
--hash-size, and --reduce-memory-overheads options.
2022-09-08 Nick Clifton <nickc@redhat.com> 2022-09-08 Nick Clifton <nickc@redhat.com>
PR 29559 PR 29559

View File

@ -268,6 +268,8 @@ Options:\n\
fprintf (stream, _("\ fprintf (stream, _("\
-D produce assembler debugging messages\n")); -D produce assembler debugging messages\n"));
fprintf (stream, _("\ fprintf (stream, _("\
--dump-config display how the assembler is configured and then exit\n"));
fprintf (stream, _("\
--debug-prefix-map OLD=NEW\n\ --debug-prefix-map OLD=NEW\n\
map OLD to NEW in debug information\n")); map OLD to NEW in debug information\n"));
fprintf (stream, _("\ fprintf (stream, _("\
@ -278,7 +280,7 @@ Options:\n\
const char *def_em; const char *def_em;
fprintf (stream, "\ fprintf (stream, "\
--em=["); --emulation=[");
for (i = 0; i < n_emulations - 1; i++) for (i = 0; i < n_emulations - 1; i++)
fprintf (stream, "%s | ", emulations[i]->name); fprintf (stream, "%s | ", emulations[i]->name);
fprintf (stream, "%s]\n", emulations[i]->name); fprintf (stream, "%s]\n", emulations[i]->name);
@ -331,8 +333,14 @@ Options:\n\
fprintf (stream, _("\ fprintf (stream, _("\
--gdwarf-<N> generate DWARF<N> debugging information. 2 <= <N> <= 5\n")); --gdwarf-<N> generate DWARF<N> debugging information. 2 <= <N> <= 5\n"));
fprintf (stream, _("\ fprintf (stream, _("\
--gdwarf-cie-version=<N> generate version 1, 3 or 4 DWARF CIEs\n"));
fprintf (stream, _("\
--gdwarf-sections generate per-function section names for DWARF line information\n")); --gdwarf-sections generate per-function section names for DWARF line information\n"));
fprintf (stream, _("\ fprintf (stream, _("\
--hash-size=<N> ignored\n"));
fprintf (stream, _("\
--help show all assembler options\n"));
fprintf (stream, _("\
--target-help show target specific options\n")); --target-help show target specific options\n"));
fprintf (stream, _("\ fprintf (stream, _("\
-I DIR add DIR to search list for .include directives\n")); -I DIR add DIR to search list for .include directives\n"));
@ -347,6 +355,9 @@ Options:\n\
fprintf (stream, _("\ fprintf (stream, _("\
--MD FILE write dependency information in FILE (default none)\n")); --MD FILE write dependency information in FILE (default none)\n"));
fprintf (stream, _("\ fprintf (stream, _("\
--multibyte-handling=<method>\n\
what to do with multibyte characters encountered in the input\n"));
fprintf (stream, _("\
-nocpp ignored\n")); -nocpp ignored\n"));
fprintf (stream, _("\ fprintf (stream, _("\
-no-pad-sections do not pad the end of sections to alignment boundaries\n")); -no-pad-sections do not pad the end of sections to alignment boundaries\n"));
@ -355,6 +366,8 @@ Options:\n\
fprintf (stream, _("\ fprintf (stream, _("\
-R fold data section into text section\n")); -R fold data section into text section\n"));
fprintf (stream, _("\ fprintf (stream, _("\
--reduce-memory-overheads ignored\n"));
fprintf (stream, _("\
--statistics print various measured statistics from execution\n")); --statistics print various measured statistics from execution\n"));
fprintf (stream, _("\ fprintf (stream, _("\
--strip-local-absolute strip local absolute symbols\n")); --strip-local-absolute strip local absolute symbols\n"));

View File

@ -13813,7 +13813,8 @@ md_show_usage (FILE *stream)
-k ignored\n")); -k ignored\n"));
#endif #endif
fprintf (stream, _("\ fprintf (stream, _("\
-n Do not optimize code alignment\n\ -n do not optimize code alignment\n\
-O{012s} attempt some code optimizations\n\
-q quieten some warnings\n")); -q quieten some warnings\n"));
#if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF) #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
fprintf (stream, _("\ fprintf (stream, _("\

View File

@ -226,27 +226,41 @@ gcc(1), ld(1), and the Info entries for @file{binutils} and @file{ld}.
@c to be limited to one line for the header. @c to be limited to one line for the header.
@smallexample @smallexample
@c man begin SYNOPSIS @c man begin SYNOPSIS
@value{AS} [@b{-a}[@b{cdghlns}][=@var{file}]] [@b{--alternate}] [@b{-D}] @value{AS} [@b{-a}[@b{cdghlns}][=@var{file}]]
[@b{--compress-debug-sections}] [@b{--nocompress-debug-sections}] [@b{--alternate}]
[@b{--compress-debug-sections}] [@b{--nocompress-debug-sections}]
[@b{-D}]
[@b{--dump-config}]
[@b{--debug-prefix-map} @var{old}=@var{new}] [@b{--debug-prefix-map} @var{old}=@var{new}]
[@b{--defsym} @var{sym}=@var{val}] [@b{-f}] [@b{-g}] [@b{--gstabs}] [@b{--defsym} @var{sym}=@var{val}]
[@b{--gstabs+}] [@b{--gdwarf-<N>}] [@b{--gdwarf-sections}] [@b{--elf-stt-common=[no|yes]}]
[@b{--emulation}=@var{name}]
[@b{-f}]
[@b{-g}] [@b{--gstabs}] [@b{--gstabs+}]
[@b{--gdwarf-<N>}] [@b{--gdwarf-sections}]
[@b{--gdwarf-cie-version}=@var{VERSION}] [@b{--gdwarf-cie-version}=@var{VERSION}]
[@b{--help}] [@b{-I} @var{dir}] [@b{-J}] [@b{--generate-missing-build-notes=[no|yes]}]
[@b{-K}] [@b{-L}] [@b{--listing-lhs-width}=@var{NUM}] [@b{--hash-size}=@var{N}]
[@b{--listing-lhs-width2}=@var{NUM}] [@b{--listing-rhs-width}=@var{NUM}] [@b{--help}] [@b{--target-help}]
[@b{--listing-cont-lines}=@var{NUM}] [@b{--keep-locals}] [@b{-I} @var{dir}]
[@b{-J}]
[@b{-K}]
[@b{--keep-locals}]
[@b{-L}]
[@b{--listing-lhs-width}=@var{NUM}]
[@b{--listing-lhs-width2}=@var{NUM}]
[@b{--listing-rhs-width}=@var{NUM}]
[@b{--listing-cont-lines}=@var{NUM}]
[@b{--multibyte-handling=[allow|warn|warn-sym-only]}]
[@b{--no-pad-sections}] [@b{--no-pad-sections}]
[@b{-o} @var{objfile}] [@b{-R}] [@b{-o} @var{objfile}] [@b{-R}]
[@b{--sectname-subst}]
[@b{--size-check=[error|warning]}]
[@b{--statistics}] [@b{--statistics}]
[@b{-v}] [@b{-version}] [@b{--version}] [@b{-v}] [@b{-version}] [@b{--version}]
[@b{-W}] [@b{--warn}] [@b{--fatal-warnings}] [@b{-w}] [@b{-x}] [@b{-W}] [@b{--warn}] [@b{--fatal-warnings}] [@b{-w}] [@b{-x}]
[@b{-Z}] [@b{@@@var{FILE}}] [@b{-Z}] [@b{@@@var{FILE}}]
[@b{--sectname-subst}] [@b{--size-check=[error|warning]}] [@var{target-options}]
[@b{--elf-stt-common=[no|yes]}]
[@b{--generate-missing-build-notes=[no|yes]}]
[@b{--multibyte-handling=[allow|warn|warn-sym-only]}]
[@b{--target-help}] [@var{target-options}]
[@b{--}|@var{files} @dots{}] [@b{--}|@var{files} @dots{}]
@c @c
@c man end @c man end
@ -733,7 +747,8 @@ targets except the x86/x86_64, but a configure time option can be used to
override this. override this.
@item -D @item -D
Ignored. This option is accepted for script compatibility with calls to Enable denugging in target specific backends, if supported. Otherwise ignored.
Even if ignored, this option is accepted for script compatibility with calls to
other assemblers. other assemblers.
@item --debug-prefix-map @var{old}=@var{new} @item --debug-prefix-map @var{old}=@var{new}
@ -747,6 +762,21 @@ indicates a hexadecimal value, and a leading @samp{0} indicates an octal
value. The value of the symbol can be overridden inside a source file via the value. The value of the symbol can be overridden inside a source file via the
use of a @code{.set} pseudo-op. use of a @code{.set} pseudo-op.
@item --dump-config
Displays how the assembler is configured and then exits.
@ifset ELF
@item --elf-stt-common=no
@itemx --elf-stt-common=yes
These options control whether the ELF assembler should generate common
symbols with the @code{STT_COMMON} type. The default can be controlled
by a configure option @option{--enable-elf-stt-common}.
@end ifset
@item --emulation=@var{name}
If the assembler is configured to support multiple different target
configurations then this option can be used to select the desired form.
@item -f @item -f
``fast''---skip whitespace and comment preprocessing (assume source is ``fast''---skip whitespace and comment preprocessing (assume source is
compiler output). compiler output).
@ -811,25 +841,17 @@ When this flag is not specificed the default is version 1, though some targets
can modify this default. Other possible values for @var{version} are 3 or 4. can modify this default. Other possible values for @var{version} are 3 or 4.
@ifset ELF @ifset ELF
@item --size-check=error
@itemx --size-check=warning
Issue an error or warning for invalid ELF .size directive.
@item --elf-stt-common=no
@itemx --elf-stt-common=yes
These options control whether the ELF assembler should generate common
symbols with the @code{STT_COMMON} type. The default can be controlled
by a configure option @option{--enable-elf-stt-common}.
@item --generate-missing-build-notes=yes @item --generate-missing-build-notes=yes
@itemx --generate-missing-build-notes=no @itemx --generate-missing-build-notes=no
These options control whether the ELF assembler should generate GNU Build These options control whether the ELF assembler should generate GNU Build
attribute notes if none are present in the input sources. attribute notes if none are present in the input sources.
The default can be controlled by the @option{--enable-generate-build-notes} The default can be controlled by the @option{--enable-generate-build-notes}
configure option. configure option.
@end ifset @end ifset
@item --hash-size @var{N}
Ignored. Supported for command line compatibility with other assemblers.
@item --help @item --help
Print a summary of the command-line options and exit. Print a summary of the command-line options and exit.
@ -878,6 +900,7 @@ to @var{number} + 1.
@item --multibyte-handling=allow @item --multibyte-handling=allow
@itemx --multibyte-handling=warn @itemx --multibyte-handling=warn
@itemx --multibyte-handling=warn-sym-only @itemx --multibyte-handling=warn-sym-only
@itemx --multibyte-handling=warn_sym_only
Controls how the assembler handles multibyte characters in the input. The Controls how the assembler handles multibyte characters in the input. The
default (which can be restored by using the @option{allow} argument) is to default (which can be restored by using the @option{allow} argument) is to
allow such characters without complaint. Using the @option{warn} argument will allow such characters without complaint. Using the @option{warn} argument will
@ -898,12 +921,20 @@ Name the object-file output from @command{@value{AS}} @var{objfile}.
@item -R @item -R
Fold the data section into the text section. Fold the data section into the text section.
@item --reduce-memory-overheads
Ignored. Supported for compatibility with tools that apss the same option to
both the assembler and the linker.
@ifset ELF @ifset ELF
@item --sectname-subst @item --sectname-subst
Honor substitution sequences in section names. Honor substitution sequences in section names.
@ifclear man @ifclear man
@xref{Section Name Substitutions,,@code{.section @var{name}}}. @xref{Section Name Substitutions,,@code{.section @var{name}}}.
@end ifclear @end ifclear
@item --size-check=error
@itemx --size-check=warning
Issue an error or warning for invalid ELF .size directive.
@end ifset @end ifset
@item --statistics @item --statistics
@ -2101,7 +2132,7 @@ If you use (or have used) the @sc{gnu} assembler on one architecture, you
should find a fairly similar environment when you use it on another should find a fairly similar environment when you use it on another
architecture. Each version has much in common with the others, architecture. Each version has much in common with the others,
including object file formats, most assembler directives (often called including object file formats, most assembler directives (often called
@dfn{pseudo-ops}) and assembler syntax.@refill @dfn{pseudo-ops}) and assembler syntax.
@cindex purpose of @sc{gnu} assembler @cindex purpose of @sc{gnu} assembler
@command{@value{AS}} is primarily intended to assemble the output of the @command{@value{AS}} is primarily intended to assemble the output of the
@ -2368,7 +2399,7 @@ assembler.)
@menu @menu
* a:: -a[cdghlns] enable listings * a:: -a[cdghlns] enable listings
* alternate:: --alternate enable alternate macro syntax * alternate:: --alternate enable alternate macro syntax
* D:: -D for compatibility * D:: -D for compatibility and debugging
* f:: -f to work faster * f:: -f to work faster
* I:: -I for .include search path * I:: -I for .include search path
@ifclear DIFF-TBL-KLUGE @ifclear DIFF-TBL-KLUGE
@ -2456,8 +2487,9 @@ Begin in alternate macro mode, see @ref{Altmacro,,@code{.altmacro}}.
@section @option{-D} @section @option{-D}
@kindex -D @kindex -D
This option has no effect whatsoever, but it is accepted to make it more This option enables debugging, if it is supported by the assembler's
likely that scripts written for other assemblers also work with configuration. Otherwise it does nothing as is ignored. This allows scripts
designed to work with other assemblers to also work with GAS.
@command{@value{AS}}. @command{@value{AS}}.
@node f @node f
@ -3013,7 +3045,7 @@ exception: they do not end statements.
@cindex newline, required at file end @cindex newline, required at file end
@cindex EOF, newline must precede @cindex EOF, newline must precede
It is an error to end any statement with end-of-file: the last It is an error to end any statement with end-of-file: the last
character of any input file should be a newline.@refill character of any input file should be a newline.
An empty statement is allowed, and may include whitespace. It is ignored. An empty statement is allowed, and may include whitespace. It is ignored.
@ -3033,7 +3065,7 @@ assembles into a machine language instruction.
Different versions of @command{@value{AS}} for different computers Different versions of @command{@value{AS}} for different computers
recognize different instructions. In fact, the same symbol may recognize different instructions. In fact, the same symbol may
represent a different instruction in a different computer's assembly represent a different instruction in a different computer's assembly
language.@refill language.
@end ifset @end ifset
@cindex @code{:} (label) @cindex @code{:} (label)
@ -3232,7 +3264,7 @@ immediately following an acute accent is taken as a literal character
and does not count as the end of a statement. The value of a character and does not count as the end of a statement. The value of a character
constant in a numeric expression is the machine's byte-wide code for constant in a numeric expression is the machine's byte-wide code for
that character. @command{@value{AS}} assumes your character code is ASCII: that character. @command{@value{AS}} assumes your character code is ASCII:
@kbd{'A} means 65, @kbd{'B} means 66, and so on. @refill @kbd{'A} means 65, @kbd{'B} means 66, and so on.
@node Numbers @node Numbers
@subsection Number Constants @subsection Number Constants