1 @c Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
2 @c This is part of the GAS manual.
3 @c For copying conditions, see the file as.texinfo.
7 @chapter AMD 29K Dependent Features
10 @node Machine Dependencies
11 @chapter AMD 29K Dependent Features
14 @cindex AMD 29K support
17 * AMD29K Options:: Options
18 * AMD29K Syntax:: Syntax
19 * AMD29K Floating Point:: Floating Point
20 * AMD29K Directives:: AMD 29K Machine Directives
21 * AMD29K Opcodes:: Opcodes
26 @cindex AMD 29K options (none)
27 @cindex options for AMD29K (none)
28 @code{@value{AS}} has no additional command-line options for the AMD
34 * AMD29K-Chars:: Special Characters
35 * AMD29K-Regs:: Register Names
39 @subsection Special Characters
41 @cindex line comment character, AMD 29K
42 @cindex AMD 29K line comment character
43 @samp{;} is the line comment character.
45 @cindex line separator, AMD 29K
46 @cindex AMD 29K line separator
47 @cindex statement separator, AMD 29K
48 @cindex AMD 29K statement separator
49 @samp{@@} can be used instead of a newline to separate statements.
51 @cindex identifiers, AMD 29K
52 @cindex AMD 29K identifiers
53 The character @samp{?} is permitted in identifiers (but may not begin
57 @subsection Register Names
59 @cindex AMD 29K register names
60 @cindex register names, AMD 29K
61 General-purpose registers are represented by predefined symbols of the
62 form @samp{GR@var{nnn}} (for global registers) or @samp{LR@var{nnn}}
63 (for local registers), where @var{nnn} represents a number between
64 @code{0} and @code{127}, written with no leading zeros. The leading
65 letters may be in either upper or lower case; for example, @samp{gr13}
66 and @samp{LR7} are both valid register names.
68 You may also refer to general-purpose registers by specifying the
69 register number as the result of an expression (prefixed with @samp{%%}
70 to flag the expression as a register number):
75 ---where @var{expression} must be an absolute expression evaluating to a
76 number between @code{0} and @code{255}. The range [0, 127] refers to
77 global registers, and the range [128, 255] to local registers.
79 @cindex special purpose registers, AMD 29K
80 @cindex AMD 29K special purpose registers
81 @cindex protected registers, AMD 29K
82 @cindex AMD 29K protected registers
83 In addition, @code{@value{AS}} understands the following protected
84 special-purpose register names for the AMD 29K family:
94 These unprotected special-purpose register names are also recognized:
102 @node AMD29K Floating Point
103 @section Floating Point
105 @cindex floating point, AMD 29K (@sc{ieee})
106 @cindex AMD 29K floating point (@sc{ieee})
107 The AMD 29K family uses @sc{ieee} floating-point numbers.
109 @node AMD29K Directives
110 @section AMD 29K Machine Directives
112 @cindex machine directives, AMD 29K
113 @cindex AMD 29K machine directives
115 @item .block @var{size} , @var{fill}
116 @cindex @code{block} directive, AMD 29K
117 This directive emits @var{size} bytes, each of value @var{fill}. Both
118 @var{size} and @var{fill} are absolute expressions. If the comma
119 and @var{fill} are omitted, @var{fill} is assumed to be zero.
121 In other versions of the @sc{gnu} assembler, this directive is called
127 @cindex @code{cputype} directive, AMD 29K
128 This directive is ignored; it is accepted for compatibility with other
132 @cindex @code{file} directive, AMD 29K
133 This directive is ignored; it is accepted for compatibility with other
137 @emph{Warning:} in other versions of the @sc{gnu} assembler, @code{.file} is
138 used for the directive called @code{.app-file} in the AMD 29K support.
142 @cindex @code{line} directive, AMD 29K
143 This directive is ignored; it is accepted for compatibility with other
147 @c since we're ignoring .lsym...
148 @item .reg @var{symbol}, @var{expression}
149 @cindex @code{reg} directive, AMD 29K
150 @code{.reg} has the same effect as @code{.lsym}; @pxref{Lsym,,@code{.lsym}}.
154 @cindex @code{sect} directive, AMD 29K
155 This directive is ignored; it is accepted for compatibility with other
158 @item .use @var{section name}
159 @cindex @code{use} directive, AMD 29K
160 Establishes the section and subsection for the following code;
161 @var{section name} may be one of @code{.text}, @code{.data},
162 @code{.data1}, or @code{.lit}. With one of the first three @var{section
163 name} options, @samp{.use} is equivalent to the machine directive
164 @var{section name}; the remaining case, @samp{.use .lit}, is the same as
171 @cindex AMD 29K opcodes
172 @cindex opcodes for AMD 29K
173 @code{@value{AS}} implements all the standard AMD 29K opcodes. No
174 additional pseudo-instructions are needed on this family.
176 For information on the 29K machine instruction set, see @cite{Am29000
177 User's Manual}, Advanced Micro Devices, Inc.