The GNU Assembler
=================
GNU `as' is really a family of assemblers. If you use (or have
used) the GNU assembler on one architecture, you should find a fairly
similar environment when you use it on another architecture. Each
version has much in common with the others, including object file
formats, most assembler directives (often called "pseudo-ops") and
assembler syntax.
`as' is primarily intended to assemble the output of the GNU C
compiler `gcc' for use by the linker `ld'. Nevertheless, we've tried
to make `as' assemble correctly everything that other assemblers for
the same machine would assemble. Any exceptions are documented
explicitly (Note:Machine Dependencies). This doesn't mean `as'
always uses the same syntax as another assembler for the same
architecture; for example, we know of several incompatible versions of
680x0 assembly language syntax.
Unlike older assemblers, `as' is designed to assemble a source
program in one pass of the source file. This has a subtle impact on the
`.org' directive (Note:`.org'.).