-@c Copyright 2000, 2003 Free Software Foundation, Inc.
+@c Copyright (C) 2000-2016 Free Software Foundation, Inc.
@c This is part of the GAS manual.
@c For copying conditions, see the file as.texinfo.
@ifset GENERIC
* Options-i860:: i860 Command-line Options
* Directives-i860:: i860 Machine Directives
* Opcodes for i860:: i860 Opcodes
+* Syntax of i860:: i860 Syntax
@end menu
@node Notes-i860
-@section i860 Notes
+@section i860 Notes
This is a fairly complete i860 assembler which is compatible with the
UNIX System V/860 Release 4 assembler. However, it does not currently
support SVR4 PIC (i.e., @code{@@GOT, @@GOTOFF, @@PLT}).
(and similarly for the "l" and "h" selectors).
@node Options-i860
@section i860 Command-line Options
-@subsection SVR4 compatibility options
+@subsection SVR4 compatibility options
@table @code
@item -V
Print assembler version.
@item -Qn
Ignored.
@end table
-@subsection Other options
+@subsection Other options
@table @code
@item -EL
Select little endian output (this is the default).
The @code{.dual}, @code{.enddual}, and @code{.atmp} directives are available only in the Intel syntax mode.
+Both syntaxes allow for the standard @code{.align} directive. However,
+the Intel syntax additionally allows keywords for the alignment
+parameter: "@code{.align type}", where `type' is one of @code{.short}, @code{.long},
+@code{.quad}, @code{.single}, @code{.double} representing alignments of 2, 4,
+16, 4, and 8, respectively.
+
@node Opcodes for i860
@section i860 Opcodes
@end smallexample
@item Load/store with relocatable address expression:
-For example, the pseudo-instruction @code{ld.b addr,%rn}
+For example, the pseudo-instruction @code{ld.b addr_exp(%rx),%rn}
will be expanded into:
@smallexample
-orh addr_exp@@ha,%r0,%r31
+orh addr_exp@@ha,%rx,%r31
ld.l addr_exp@@l(%r31),%rn
@end smallexample
If any of the arithmetic operations @code{adds, addu, subs, subu} are used
with an immediate larger than 16-bits (signed), then they will be expanded.
For instance, the pseudo-instruction @code{adds large_imm,%rx,%rn} expands to:
-@smallexample
+@smallexample
orh large_imm@@h,%r0,%r31
or large_imm@@l,%r31,%r31
adds %r31,%rx,%rn
@end smallexample
@end itemize
+@node Syntax of i860
+@section i860 Syntax
+@menu
+* i860-Chars:: Special Characters
+@end menu
+
+@node i860-Chars
+@subsection Special Characters
+
+@cindex line comment character, i860
+@cindex i860 line comment character
+The presence of a @samp{#} appearing anywhere on a line indicates the
+start of a comment that extends to the end of that line.
+
+If a @samp{#} appears as the first character of a line then the whole
+line is treated as a comment, but in this case the line can also be a
+logical line number directive (@pxref{Comments}) or a preprocessor
+control command (@pxref{Preprocessing}).
+
+@cindex line separator, i860
+@cindex statement separator, i860
+@cindex i860 line separator
+The @samp{;} character can be used to separate statements on the same
+line.