-@c Copyright (C) 1997 Free Software Foundation, Inc.
+@c Copyright (C) 1997-2021 Free Software Foundation, Inc.
@c This is part of the GAS manual.
@c For copying conditions, see the file as.texinfo.
@ifset GENERIC
There are instruction names that can assemble to a short or long form opcode.
How does the assembler pick the correct form? @code{@value{AS}} will always pick the
smallest form if it can. When dealing with a symbol that is not defined yet when a
-line is being assembled, it will always use the long form. If you need to force the
+line is being assembled, it will always use the long form. If you need to force the
assembler to use either the short or long form of the instruction, you can append
-either @samp{.s} (short) or @samp{.l} (long) to it. For example, if you are writing
+either @samp{.s} (short) or @samp{.l} (long) to it. For example, if you are writing
an assembly program and you want to do a branch to a symbol that is defined later
-in your program, you can write @samp{bra.s foo}.
+in your program, you can write @samp{bra.s foo}.
Objdump and GDB will always append @samp{.s} or @samp{.l} to instructions which
have both short and long forms.
address will be valid. Nops are automatically inserted when necessary.
If you do not want the assembler automatically making these decisions, you can control
-the packaging and execution type (parallel or sequential) with the special execution
-symbols described in the next section.
+the packaging and execution type (parallel or sequential) with the special execution
+symbols described in the next section.
@node D30V-Chars
@subsection Special Characters
@cindex line comment character, D30V
@cindex D30V line comment character
-@samp{;} and @samp{#} are the line comment characters.
+A semicolon (@samp{;}) can be used anywhere on a line to start a
+comment that extends to the end of the line.
+
+If a @samp{#} appears as the first character of a line, the whole line
+is treated as a comment, but in this case the line could also be a
+logical line number directive (@pxref{Comments}) or a preprocessor
+control command (@pxref{Preprocessing}).
+
@cindex sub-instruction ordering, D30V
@cindex D30V sub-instruction ordering
Sub-instructions may be executed in order, in reverse-order, or in parallel.
Instructions listed in the standard one-per-line format will be executed
sequentially unless you use the @samp{-O} option.
-To specify the executing order, use the following symbols:
+To specify the executing order, use the following symbols:
@table @samp
@item ->
Sequential with instruction on the left first.
@item b
Same as flag 7 (carry/borrow flag)
@end table
-
+
@node D30V-Addressing
@subsection Addressing Modes
@cindex addressing modes, D30V
@item @@(@var{disp}, R@var{n})
Register indirect with displacement
@item @var{addr}
-PC relative address (for branch or rep).
+PC relative address (for branch or rep).
@item #@var{imm}
Immediate data (the @samp{#} is optional and ignored)
@end table
@cindex D30V floating point
The D30V has no hardware floating point, but the @code{.float} and @code{.double}
directives generates @sc{ieee} floating-point numbers for compatibility
-with other development tools.
+with other development tools.
@node D30V-Opcodes
@section Opcodes
@cindex mnemonics, D30V
@cindex instruction summary, D30V
For detailed information on the D30V machine instruction set, see
-@cite{D30V Architecture: A VLIW Microprocessor for Multimedia Applications}
+@cite{D30V Architecture: A VLIW Microprocessor for Multimedia Applications}
(Mitsubishi Electric Corp.).
@code{@value{AS}} implements all the standard D30V opcodes. The only changes are those
described in the section on size modifiers