218 lines
5.4 KiB
HTML
218 lines
5.4 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<!-- This HTML file has been created by texi2html 1.52
|
|
from ../texi/as.texinfo on 24 April 1999 -->
|
|
|
|
<TITLE>Using as - AMD 29K Dependent Features</TITLE>
|
|
</HEAD>
|
|
<BODY>
|
|
Go to the <A HREF="as_1.html">first</A>, <A HREF="as_9.html">previous</A>, <A HREF="as_11.html">next</A>, <A HREF="as_27.html">last</A> section, <A HREF="as_toc.html">table of contents</A>.
|
|
<P><HR><P>
|
|
|
|
|
|
<H1><A NAME="SEC143" HREF="as_toc.html#TOC143">AMD 29K Dependent Features</A></H1>
|
|
|
|
<P>
|
|
<A NAME="IDX433"></A>
|
|
<A NAME="IDX434"></A>
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC144" HREF="as_toc.html#TOC144">Options</A></H2>
|
|
<P>
|
|
<A NAME="IDX435"></A>
|
|
<A NAME="IDX436"></A>
|
|
<CODE>as</CODE> has no additional command-line options for the AMD
|
|
29K family.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC145" HREF="as_toc.html#TOC145">Syntax</A></H2>
|
|
|
|
|
|
|
|
<H3><A NAME="SEC146" HREF="as_toc.html#TOC146">Macros</A></H3>
|
|
|
|
<P>
|
|
<A NAME="IDX437"></A>
|
|
<A NAME="IDX438"></A>
|
|
The macro syntax used on the AMD 29K is like that described in the AMD
|
|
29K Family Macro Assembler Specification. Normal <CODE>as</CODE>
|
|
macros should still work.
|
|
|
|
</P>
|
|
|
|
|
|
<H3><A NAME="SEC147" HREF="as_toc.html#TOC147">Special Characters</A></H3>
|
|
|
|
<P>
|
|
<A NAME="IDX439"></A>
|
|
<A NAME="IDX440"></A>
|
|
<SAMP>`;'</SAMP> is the line comment character.
|
|
|
|
</P>
|
|
<P>
|
|
<A NAME="IDX441"></A>
|
|
<A NAME="IDX442"></A>
|
|
The character <SAMP>`?'</SAMP> is permitted in identifiers (but may not begin
|
|
an identifier).
|
|
|
|
</P>
|
|
|
|
|
|
<H3><A NAME="SEC148" HREF="as_toc.html#TOC148">Register Names</A></H3>
|
|
|
|
<P>
|
|
<A NAME="IDX443"></A>
|
|
<A NAME="IDX444"></A>
|
|
General-purpose registers are represented by predefined symbols of the
|
|
form <SAMP>`GR<VAR>nnn</VAR>'</SAMP> (for global registers) or <SAMP>`LR<VAR>nnn</VAR>'</SAMP>
|
|
(for local registers), where <VAR>nnn</VAR> represents a number between
|
|
<CODE>0</CODE> and <CODE>127</CODE>, written with no leading zeros. The leading
|
|
letters may be in either upper or lower case; for example, <SAMP>`gr13'</SAMP>
|
|
and <SAMP>`LR7'</SAMP> are both valid register names.
|
|
|
|
</P>
|
|
<P>
|
|
You may also refer to general-purpose registers by specifying the
|
|
register number as the result of an expression (prefixed with <SAMP>`%%'</SAMP>
|
|
to flag the expression as a register number):
|
|
|
|
<PRE>
|
|
%%<VAR>expression</VAR>
|
|
</PRE>
|
|
|
|
<P>
|
|
---where <VAR>expression</VAR> must be an absolute expression evaluating to a
|
|
number between <CODE>0</CODE> and <CODE>255</CODE>. The range [0, 127] refers to
|
|
global registers, and the range [128, 255] to local registers.
|
|
|
|
</P>
|
|
<P>
|
|
<A NAME="IDX445"></A>
|
|
<A NAME="IDX446"></A>
|
|
<A NAME="IDX447"></A>
|
|
<A NAME="IDX448"></A>
|
|
In addition, <CODE>as</CODE> understands the following protected
|
|
special-purpose register names for the AMD 29K family:
|
|
|
|
</P>
|
|
|
|
<PRE>
|
|
vab chd pc0
|
|
ops chc pc1
|
|
cps rbp pc2
|
|
cfg tmc mmu
|
|
cha tmr lru
|
|
</PRE>
|
|
|
|
<P>
|
|
These unprotected special-purpose register names are also recognized:
|
|
|
|
<PRE>
|
|
ipc alu fpe
|
|
ipa bp inte
|
|
ipb fc fps
|
|
q cr exop
|
|
</PRE>
|
|
|
|
|
|
|
|
<H2><A NAME="SEC149" HREF="as_toc.html#TOC149">Floating Point</A></H2>
|
|
|
|
<P>
|
|
<A NAME="IDX449"></A>
|
|
<A NAME="IDX450"></A>
|
|
The AMD 29K family uses IEEE floating-point numbers.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC150" HREF="as_toc.html#TOC150">AMD 29K Machine Directives</A></H2>
|
|
|
|
<P>
|
|
<A NAME="IDX451"></A>
|
|
<A NAME="IDX452"></A>
|
|
<DL COMPACT>
|
|
|
|
<DT><CODE>.block <VAR>size</VAR> , <VAR>fill</VAR></CODE>
|
|
<DD>
|
|
<A NAME="IDX453"></A>
|
|
|
|
This directive emits <VAR>size</VAR> bytes, each of value <VAR>fill</VAR>. Both
|
|
<VAR>size</VAR> and <VAR>fill</VAR> are absolute expressions. If the comma
|
|
and <VAR>fill</VAR> are omitted, <VAR>fill</VAR> is assumed to be zero.
|
|
|
|
In other versions of the GNU assembler, this directive is called
|
|
<SAMP>`.space'</SAMP>.
|
|
</DL>
|
|
|
|
<DL COMPACT>
|
|
|
|
<DT><CODE>.cputype</CODE>
|
|
<DD>
|
|
<A NAME="IDX454"></A>
|
|
|
|
This directive is ignored; it is accepted for compatibility with other
|
|
AMD 29K assemblers.
|
|
|
|
<A NAME="IDX455"></A>
|
|
<DT><CODE>.file</CODE>
|
|
<DD>
|
|
This directive is ignored; it is accepted for compatibility with other
|
|
AMD 29K assemblers.
|
|
|
|
|
|
<BLOCKQUOTE>
|
|
<P>
|
|
<EM>Warning:</EM> in other versions of the GNU assembler, <CODE>.file</CODE> is
|
|
used for the directive called <CODE>.app-file</CODE> in the AMD 29K support.
|
|
</BLOCKQUOTE>
|
|
|
|
<A NAME="IDX456"></A>
|
|
<DT><CODE>.line</CODE>
|
|
<DD>
|
|
This directive is ignored; it is accepted for compatibility with other
|
|
AMD 29K assemblers.
|
|
|
|
<A NAME="IDX457"></A>
|
|
<DT><CODE>.sect</CODE>
|
|
<DD>
|
|
This directive is ignored; it is accepted for compatibility with other
|
|
AMD 29K assemblers.
|
|
|
|
<A NAME="IDX458"></A>
|
|
<DT><CODE>.use <VAR>section name</VAR></CODE>
|
|
<DD>
|
|
Establishes the section and subsection for the following code;
|
|
<VAR>section name</VAR> may be one of <CODE>.text</CODE>, <CODE>.data</CODE>,
|
|
<CODE>.data1</CODE>, or <CODE>.lit</CODE>. With one of the first three <VAR>section
|
|
name</VAR> options, <SAMP>`.use'</SAMP> is equivalent to the machine directive
|
|
<VAR>section name</VAR>; the remaining case, <SAMP>`.use .lit'</SAMP>, is the same as
|
|
<SAMP>`.data 200'</SAMP>.
|
|
</DL>
|
|
|
|
|
|
|
|
<H2><A NAME="SEC151" HREF="as_toc.html#TOC151">Opcodes</A></H2>
|
|
|
|
<P>
|
|
<A NAME="IDX459"></A>
|
|
<A NAME="IDX460"></A>
|
|
<CODE>as</CODE> implements all the standard AMD 29K opcodes. No
|
|
additional pseudo-instructions are needed on this family.
|
|
|
|
</P>
|
|
<P>
|
|
For information on the 29K machine instruction set, see <CITE>Am29000
|
|
User's Manual</CITE>, Advanced Micro Devices, Inc.
|
|
|
|
</P>
|
|
|
|
<P><HR><P>
|
|
Go to the <A HREF="as_1.html">first</A>, <A HREF="as_9.html">previous</A>, <A HREF="as_11.html">next</A>, <A HREF="as_27.html">last</A> section, <A HREF="as_toc.html">table of contents</A>.
|
|
</BODY>
|
|
</HTML>
|