]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gas/doc/c-d10v.texi
Update year range in copyright notice of binutils files
[thirdparty/binutils-gdb.git] / gas / doc / c-d10v.texi
index 0db379cb6daa1253b67d5ae31154a02926806d5d..b0b7a5267ae87d90f1a642ffff7aa62d3254f8bb 100644 (file)
@@ -1,4 +1,4 @@
-@c Copyright 1996, 2000 Free Software Foundation, Inc.
+@c Copyright (C) 1996-2021 Free Software Foundation, Inc.
 @c This is part of the GAS manual.
 @c For copying conditions, see the file as.texinfo.
 @ifset GENERIC
@@ -33,10 +33,10 @@ is used, @code{@value{AS}} will attempt to optimize its output by detecting when
 instructions can be executed in parallel.
 @item --nowarnswap
 To optimize execution performance, @code{@value{AS}} will sometimes swap the
-order of instructions. Normally this generates a warning. When this option 
+order of instructions. Normally this generates a warning. When this option
 is used, no warning will be generated when instructions are swapped.
 @item --gstabs-packing
-@item --no-gstabs-packing
+@itemx --no-gstabs-packing
 @code{@value{AS}} packs adjacent short instructions into a single packed
 instruction. @samp{--no-gstabs-packing} turns instruction packing off if
 @samp{--gstabs} is specified as well; @samp{--gstabs-packing} (the
@@ -71,11 +71,11 @@ Architecture Manual.  However, the names in the manual are sometimes ambiguous.
 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.
 
@@ -93,19 +93,26 @@ instruction is called, it will not be packaged with the next instruction so the
 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 D10V-Chars
 @subsection Special Characters
 @cindex line comment character, D10V
 @cindex D10V 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, D10V
 @cindex D10V 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.
-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.
@@ -125,17 +132,17 @@ Execute these reverse-sequentially.  The instruction on the right is in the righ
 container, and is executed first.
 @item ld2w    r2,@@r8+         ||      mac     a0,r0,r7
 Execute these in parallel.
-@item ld2w    r2,@@r8+         ||      
+@item ld2w    r2,@@r8+         ||
 @itemx mac     a0,r0,r7
 Two-line format. Execute these in parallel.
-@item ld2w    r2,@@r8+         
+@item ld2w    r2,@@r8+
 @itemx mac     a0,r0,r7
 Two-line format. Execute these sequentially.  Assembler will
 put them in the proper containers.
 @item ld2w    r2,@@r8+         ->
 @itemx mac     a0,r0,r7
 Two-line format. Execute these sequentially.  Same as above but
-second instruction will always go into right container.  
+second instruction will always go into right container.
 @end table
 @cindex symbol names, @samp{$} in
 @cindex @code{$} in symbol names
@@ -145,11 +152,11 @@ Since @samp{$} has no special meaning, you may use it in symbol names.
 @subsection Register Names
 @cindex D10V registers
 @cindex registers, D10V
-You can use the predefined symbols @samp{r0} through @samp{r15} to refer to the D10V 
+You can use the predefined symbols @samp{r0} through @samp{r15} to refer to the D10V
 registers.  You can also use @samp{sp} as an alias for @samp{r15}.  The accumulators
-are @samp{a0} and @samp{a1}.  There are special register-pair names that may 
-optionally be used in opcodes that require even-numbered registers. Register names are 
-not case sensitive.  
+are @samp{a0} and @samp{a1}.  There are special register-pair names that may
+optionally be used in opcodes that require even-numbered registers. Register names are
+not case sensitive.
 
 Register Pairs
 @table @code
@@ -192,7 +199,7 @@ Flag 1
 @item c
 Carry flag
 @end table
-        
+
 @node D10V-Addressing
 @subsection Addressing Modes
 @cindex addressing modes, D10V
@@ -214,7 +221,7 @@ Register indirect with pre-decrement
 @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
@@ -241,7 +248,7 @@ jmp     r2
 @cindex D10V floating point
 The D10V 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 D10V-Opcodes
 @section Opcodes
@@ -250,7 +257,7 @@ with other development tools.
 @cindex mnemonics, D10V
 @cindex instruction summary, D10V
 For detailed information on the D10V machine instruction set, see
-@cite{D10V Architecture: A VLIW Microprocessor for Multimedia Applications} 
+@cite{D10V Architecture: A VLIW Microprocessor for Multimedia Applications}
 (Mitsubishi Electric Corp.).
 @code{@value{AS}} implements all the standard D10V opcodes.  The only changes are those
 described in the section on size modifiers