![]() |
The GNU Assembler |
This part of the documentation is a modified version of the GNU Assembler Manual.
Therefore it is licensed under the GNU Free Documentation License.
The GNU assembler as
is primarily intended to assemble the output
of the GNU C compiler for use by the linker, so it may be regarded as an internal
part of TIGCC package.
However, it may be called as a standalone program, and the GNU team
tried to make as
assemble everything correctly that other assemblers
for the same machine would assemble. Any exceptions are documented explicitly.
This doesn't mean as
always uses the same syntax as other
assemblers for the same architecture; for example, there exist several
incompatible versions of the MC 68000 assembly language syntax, so the syntax used
in the GNU assembler is not exactly the same as in some other assemblers
(like the A68k Assembler, which is the most frequently
used assembler for the TI-89 and TI-92+, and which is also included in the TIGCC
package as a standalone program).
This documentation will cover as
features which are applicable
to TIGCC. The most frequent use of as
is probably as
an inline assembler, which allows mixing assembly
statements with C code using the asm
keyword.
This documentation is not
intended as an introduction to programming in assembly language. In a similar
vein, you will not find here details about machine architecture: here you can not
expect detailed description of the instruction set, standard mnemonics, registers
or addressing modes. You may want to consult the Motorola manufacturer's machine
architecture manual for such information.
Note: It is possible to use source files for the GNU Assembler
together with C source files in TIGCC projects.
Original author: Free Software Foundation, Inc.
Authors of the modifications: Zeljko Juric, Sebastian Reichelt, and Kevin Kofler
Published by the TIGCC Team.
See the History section for details and copyright information.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1 or any
later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts. A copy of the license is included in the
section entitled "GNU Free Documentation License".