-@c Copyright 2002, 2003
-@c Free Software Foundation, Inc.
+@c Copyright (C) 2002-2020 Free Software Foundation, Inc.
@c This is part of the GAS manual.
@c For copying conditions, see the file as.texinfo.
+@c man end
@ifset GENERIC
@page
@cindex Alpha options
@cindex options for Alpha
-@table @option
-@cindex @code{-m@var{cpu}} command line option, Alpha
+@c man begin OPTIONS
+@table @gcctabopt
+@cindex @code{-m@var{cpu}} command-line option, Alpha
@item -m@var{cpu}
This option specifies the target processor. If an attempt is made to
assemble an instruction which will not execute on the target processor,
the assembler may either expand the instruction as a macro or issue an
error message. This option is equivalent to the @code{.arch} directive.
-The following processor names are recognized:
+The following processor names are recognized:
@code{21064},
@code{21064a},
@code{21066},
numbered processor names (e.g.@: 21064) enable the processor-specific PALcode
instructions, while the ``electro-vlasic'' names (e.g.@: @code{ev4}) do not.
-@cindex @code{-mdebug} command line option, Alpha
-@cindex @code{-no-mdebug} command line option, Alpha
+@cindex @code{-mdebug} command-line option, Alpha
+@cindex @code{-no-mdebug} command-line option, Alpha
@item -mdebug
@itemx -no-mdebug
Enables or disables the generation of @code{.mdebug} encapsulation for
stabs directives and procedure descriptors. The default is to automatically
enable @code{.mdebug} when the first stabs directive is seen.
-@cindex @code{-relax} command line option, Alpha
+@cindex @code{-relax} command-line option, Alpha
@item -relax
This option forces all relocations to be put into the object file, instead
of saving space and resolving some relocations at assembly time. Note that
because not all symbol arithmetic can be represented. However, the option
can still be useful in specific applications.
-@cindex @code{-g} command line option, Alpha
+@cindex @code{-replace} command-line option, Alpha
+@cindex @code{-noreplace} command-line option, Alpha
+@item -replace
+@itemx -noreplace
+Enables or disables the optimization of procedure calls, both at assemblage
+and at link time. These options are only available for VMS targets and
+@code{-replace} is the default. See section 1.4.1 of the OpenVMS Linker
+Utility Manual.
+
+@cindex @code{-g} command-line option, Alpha
@item -g
This option is used when the compiler generates debug information. When
@command{gcc} is using @command{mips-tfile} to generate debug
information for ECOFF, local labels must be passed through to the object
file. Otherwise this option has no effect.
-@cindex @code{-G} command line option, Alpha
+@cindex @code{-G} command-line option, Alpha
@item -G@var{size}
A local common symbol larger than @var{size} is placed in @code{.bss},
while smaller symbols are placed in @code{.sbss}.
-@cindex @code{-F} command line option, Alpha
-@cindex @code{-32addr} command line option, Alpha
+@cindex @code{-F} command-line option, Alpha
+@cindex @code{-32addr} command-line option, Alpha
@item -F
@itemx -32addr
These options are ignored for backward compatibility.
@end table
+@c man end
@cindex Alpha Syntax
@node Alpha Syntax
@cindex line comment character, Alpha
@cindex Alpha line comment character
-@samp{#} is the line comment character.
+@samp{#} is the line comment character. Note that if @samp{#} is the
+first character on a line then it can also be a logical line number
+directive (@pxref{Comments}) or a preprocessor control
+command (@pxref{Preprocessing}).
@cindex line separator, Alpha
@cindex statement separator, Alpha
@cindex relocations, Alpha
Some of these relocations are available for ECOFF, but mostly
-only for ELF. They are modeled after the relocation format
+only for ELF. They are modeled after the relocation format
introduced in Digital Unix 4.0, but there are additions.
The format is @samp{!@var{tag}} or @samp{!@var{tag}!@var{number}}
@item !lituse_tlsgd!@var{N}
Used with a register branch format instruction to indicate that the
-literal is the call to @code{__tls_get_addr} used to compute the
+literal is the call to @code{__tls_get_addr} used to compute the
address of the thread-local storage variable whose descriptor was
loaded with @code{!tlsgd!@var{N}}.
@item !lituse_tlsldm!@var{N}
Used with a register branch format instruction to indicate that the
-literal is the call to @code{__tls_get_addr} used to compute the
+literal is the call to @code{__tls_get_addr} used to compute the
address of the base of the thread-local storage block for the current
module. The descriptor for the module must have been loaded with
@code{!tlsldm!@var{N}}.
address, a-la the @code{ldgp} macro. The source register for the
@code{ldah} instruction must contain the address of the @code{ldah}
instruction. There must be exactly one @code{lda} instruction paired
-with the @code{ldah} instruction, though it may appear anywhere in
+with the @code{ldah} instruction, though it may appear anywhere in
the instruction stream. The immediate operands must be zero.
@example
the procedure vector during relaxation.
@item .usepv @var{function}, @var{which}
-Used to indicate the use of the @code{$27} register, similar to
-@code{.prologue}, but without the other semantics of needing to
+Used to indicate the use of the @code{$27} register, similar to
+@code{.prologue}, but without the other semantics of needing to
be inside an open @code{.ent}/@code{.end} block.
The @var{which} argument should be either @code{no}, indicating that