Merge branch 'vendor/GCC44'
[dragonfly.git] / contrib / binutils-2.21 / gas / doc / as.1
1 .\" Automatically generated by Pod::Man 2.16 (Pod::Simple 3.05)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sh \" Subsection heading
6 .br
7 .if t .Sp
8 .ne 5
9 .PP
10 \fB\\$1\fR
11 .PP
12 ..
13 .de Sp \" Vertical space (when we can't use .PP)
14 .if t .sp .5v
15 .if n .sp
16 ..
17 .de Vb \" Begin verbatim text
18 .ft CW
19 .nf
20 .ne \\$1
21 ..
22 .de Ve \" End verbatim text
23 .ft R
24 .fi
25 ..
26 .\" Set up some character translations and predefined strings.  \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
31 .\" nothing in troff, for use with C<>.
32 .tr \(*W-
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34 .ie n \{\
35 .    ds -- \(*W-
36 .    ds PI pi
37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
39 .    ds L" ""
40 .    ds R" ""
41 .    ds C` ""
42 .    ds C' ""
43 'br\}
44 .el\{\
45 .    ds -- \|\(em\|
46 .    ds PI \(*p
47 .    ds L" ``
48 .    ds R" ''
49 'br\}
50 .\"
51 .\" Escape single quotes in literal strings from groff's Unicode transform.
52 .ie \n(.g .ds Aq \(aq
53 .el       .ds Aq '
54 .\"
55 .\" If the F register is turned on, we'll generate index entries on stderr for
56 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
57 .\" entries marked with X<> in POD.  Of course, you'll have to process the
58 .\" output yourself in some meaningful fashion.
59 .ie \nF \{\
60 .    de IX
61 .    tm Index:\\$1\t\\n%\t"\\$2"
62 ..
63 .    nr % 0
64 .    rr F
65 .\}
66 .el \{\
67 .    de IX
68 ..
69 .\}
70 .\"
71 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
72 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
73 .    \" fudge factors for nroff and troff
74 .if n \{\
75 .    ds #H 0
76 .    ds #V .8m
77 .    ds #F .3m
78 .    ds #[ \f1
79 .    ds #] \fP
80 .\}
81 .if t \{\
82 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
83 .    ds #V .6m
84 .    ds #F 0
85 .    ds #[ \&
86 .    ds #] \&
87 .\}
88 .    \" simple accents for nroff and troff
89 .if n \{\
90 .    ds ' \&
91 .    ds ` \&
92 .    ds ^ \&
93 .    ds , \&
94 .    ds ~ ~
95 .    ds /
96 .\}
97 .if t \{\
98 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
99 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
100 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
101 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
102 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
103 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
104 .\}
105 .    \" troff and (daisy-wheel) nroff accents
106 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
107 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
108 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
109 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
110 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
111 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
112 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
113 .ds ae a\h'-(\w'a'u*4/10)'e
114 .ds Ae A\h'-(\w'A'u*4/10)'E
115 .    \" corrections for vroff
116 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
117 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
118 .    \" for low resolution devices (crt and lpr)
119 .if \n(.H>23 .if \n(.V>19 \
120 \{\
121 .    ds : e
122 .    ds 8 ss
123 .    ds o a
124 .    ds d- d\h'-1'\(ga
125 .    ds D- D\h'-1'\(hy
126 .    ds th \o'bp'
127 .    ds Th \o'LP'
128 .    ds ae ae
129 .    ds Ae AE
130 .\}
131 .rm #[ #] #H #V #F C
132 .\" ========================================================================
133 .\"
134 .IX Title "AS 1"
135 .TH AS 1 "2011-06-27" "binutils-2.21.1" "GNU Development Tools"
136 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
137 .\" way too many mistakes in technical documents.
138 .if n .ad l
139 .nh
140 .SH "NAME"
141 AS \- the portable GNU assembler.
142 .SH "SYNOPSIS"
143 .IX Header "SYNOPSIS"
144 as [\fB\-a\fR[\fBcdghlns\fR][=\fIfile\fR]] [\fB\-\-alternate\fR] [\fB\-D\fR]
145  [\fB\-\-compress\-debug\-sections\fR]  [\fB\-\-nocompress\-debug\-sections\fR]
146  [\fB\-\-debug\-prefix\-map\fR \fIold\fR=\fInew\fR]
147  [\fB\-\-defsym\fR \fIsym\fR=\fIval\fR] [\fB\-f\fR] [\fB\-g\fR] [\fB\-\-gstabs\fR]
148  [\fB\-\-gstabs+\fR] [\fB\-\-gdwarf\-2\fR] [\fB\-\-help\fR] [\fB\-I\fR \fIdir\fR] [\fB\-J\fR]
149  [\fB\-K\fR] [\fB\-L\fR] [\fB\-\-listing\-lhs\-width\fR=\fI\s-1NUM\s0\fR]
150  [\fB\-\-listing\-lhs\-width2\fR=\fI\s-1NUM\s0\fR] [\fB\-\-listing\-rhs\-width\fR=\fI\s-1NUM\s0\fR]
151  [\fB\-\-listing\-cont\-lines\fR=\fI\s-1NUM\s0\fR] [\fB\-\-keep\-locals\fR] [\fB\-o\fR
152  \fIobjfile\fR] [\fB\-R\fR] [\fB\-\-reduce\-memory\-overheads\fR] [\fB\-\-statistics\fR]
153  [\fB\-v\fR] [\fB\-version\fR] [\fB\-\-version\fR] [\fB\-W\fR] [\fB\-\-warn\fR]
154  [\fB\-\-fatal\-warnings\fR] [\fB\-w\fR] [\fB\-x\fR] [\fB\-Z\fR] [\fB@\fR\fI\s-1FILE\s0\fR]
155  [\fB\-\-size\-check=[error|warning]\fR]
156  [\fB\-\-target\-help\fR] [\fItarget-options\fR]
157  [\fB\-\-\fR|\fIfiles\fR ...]
158 .PP
159 \&\fITarget Alpha options:\fR
160    [\fB\-m\fR\fIcpu\fR]
161    [\fB\-mdebug\fR | \fB\-no\-mdebug\fR]
162    [\fB\-replace\fR | \fB\-noreplace\fR]
163    [\fB\-relax\fR] [\fB\-g\fR] [\fB\-G\fR\fIsize\fR]
164    [\fB\-F\fR] [\fB\-32addr\fR]
165 .PP
166 \&\fITarget \s-1ARC\s0 options:\fR
167    [\fB\-marc[5|6|7|8]\fR]
168    [\fB\-EB\fR|\fB\-EL\fR]
169 .PP
170 \&\fITarget \s-1ARM\s0 options:\fR
171    [\fB\-mcpu\fR=\fIprocessor\fR[+\fIextension\fR...]]
172    [\fB\-march\fR=\fIarchitecture\fR[+\fIextension\fR...]]
173    [\fB\-mfpu\fR=\fIfloating-point-format\fR]
174    [\fB\-mfloat\-abi\fR=\fIabi\fR]
175    [\fB\-meabi\fR=\fIver\fR]
176    [\fB\-mthumb\fR]
177    [\fB\-EB\fR|\fB\-EL\fR]
178    [\fB\-mapcs\-32\fR|\fB\-mapcs\-26\fR|\fB\-mapcs\-float\fR|
179     \fB\-mapcs\-reentrant\fR]
180    [\fB\-mthumb\-interwork\fR] [\fB\-k\fR]
181 .PP
182 \&\fITarget Blackfin options:\fR
183    [\fB\-mcpu\fR=\fIprocessor\fR[\-\fIsirevision\fR]]
184    [\fB\-mfdpic\fR]
185    [\fB\-mno\-fdpic\fR]
186    [\fB\-mnopic\fR]
187 .PP
188 \&\fITarget \s-1CRIS\s0 options:\fR
189    [\fB\-\-underscore\fR | \fB\-\-no\-underscore\fR]
190    [\fB\-\-pic\fR] [\fB\-N\fR]
191    [\fB\-\-emulation=criself\fR | \fB\-\-emulation=crisaout\fR]
192    [\fB\-\-march=v0_v10\fR | \fB\-\-march=v10\fR | \fB\-\-march=v32\fR | \fB\-\-march=common_v10_v32\fR]
193 .PP
194 \&\fITarget D10V options:\fR
195    [\fB\-O\fR]
196 .PP
197 \&\fITarget D30V options:\fR
198    [\fB\-O\fR|\fB\-n\fR|\fB\-N\fR]
199 .PP
200 \&\fITarget H8/300 options:\fR
201    [\-h\-tick\-hex]
202 .PP
203 \&\fITarget i386 options:\fR
204    [\fB\-\-32\fR|\fB\-\-64\fR] [\fB\-n\fR]
205    [\fB\-march\fR=\fI\s-1CPU\s0\fR[+\fI\s-1EXTENSION\s0\fR...]] [\fB\-mtune\fR=\fI\s-1CPU\s0\fR]
206 .PP
207 \&\fITarget i960 options:\fR
208    [\fB\-ACA\fR|\fB\-ACA_A\fR|\fB\-ACB\fR|\fB\-ACC\fR|\fB\-AKA\fR|\fB\-AKB\fR|
209     \fB\-AKC\fR|\fB\-AMC\fR]
210    [\fB\-b\fR] [\fB\-no\-relax\fR]
211 .PP
212 \&\fITarget \s-1IA\-64\s0 options:\fR
213    [\fB\-mconstant\-gp\fR|\fB\-mauto\-pic\fR]
214    [\fB\-milp32\fR|\fB\-milp64\fR|\fB\-mlp64\fR|\fB\-mp64\fR]
215    [\fB\-mle\fR|\fBmbe\fR]
216    [\fB\-mtune=itanium1\fR|\fB\-mtune=itanium2\fR]
217    [\fB\-munwind\-check=warning\fR|\fB\-munwind\-check=error\fR]
218    [\fB\-mhint.b=ok\fR|\fB\-mhint.b=warning\fR|\fB\-mhint.b=error\fR]
219    [\fB\-x\fR|\fB\-xexplicit\fR] [\fB\-xauto\fR] [\fB\-xdebug\fR]
220 .PP
221 \&\fITarget \s-1IP2K\s0 options:\fR
222    [\fB\-mip2022\fR|\fB\-mip2022ext\fR]
223 .PP
224 \&\fITarget M32C options:\fR
225    [\fB\-m32c\fR|\fB\-m16c\fR] [\-relax] [\-h\-tick\-hex]
226 .PP
227 \&\fITarget M32R options:\fR
228    [\fB\-\-m32rx\fR|\fB\-\-[no\-]warn\-explicit\-parallel\-conflicts\fR|
229    \fB\-\-W[n]p\fR]
230 .PP
231 \&\fITarget M680X0 options:\fR
232    [\fB\-l\fR] [\fB\-m68000\fR|\fB\-m68010\fR|\fB\-m68020\fR|...]
233 .PP
234 \&\fITarget M68HC11 options:\fR
235    [\fB\-m68hc11\fR|\fB\-m68hc12\fR|\fB\-m68hcs12\fR]
236    [\fB\-mshort\fR|\fB\-mlong\fR]
237    [\fB\-mshort\-double\fR|\fB\-mlong\-double\fR]
238    [\fB\-\-force\-long\-branches\fR] [\fB\-\-short\-branches\fR]
239    [\fB\-\-strict\-direct\-mode\fR] [\fB\-\-print\-insn\-syntax\fR]
240    [\fB\-\-print\-opcodes\fR] [\fB\-\-generate\-example\fR]
241 .PP
242 \&\fITarget \s-1MCORE\s0 options:\fR
243    [\fB\-jsri2bsr\fR] [\fB\-sifilter\fR] [\fB\-relax\fR]
244    [\fB\-mcpu=[210|340]\fR]
245 \&\fITarget \s-1MICROBLAZE\s0 options:\fR
246 .PP
247 \&\fITarget \s-1MIPS\s0 options:\fR
248    [\fB\-nocpp\fR] [\fB\-EL\fR] [\fB\-EB\fR] [\fB\-O\fR[\fIoptimization level\fR]]
249    [\fB\-g\fR[\fIdebug level\fR]] [\fB\-G\fR \fInum\fR] [\fB\-KPIC\fR] [\fB\-call_shared\fR]
250    [\fB\-non_shared\fR] [\fB\-xgot\fR [\fB\-mvxworks\-pic\fR]
251    [\fB\-mabi\fR=\fI\s-1ABI\s0\fR] [\fB\-32\fR] [\fB\-n32\fR] [\fB\-64\fR] [\fB\-mfp32\fR] [\fB\-mgp32\fR]
252    [\fB\-march\fR=\fI\s-1CPU\s0\fR] [\fB\-mtune\fR=\fI\s-1CPU\s0\fR] [\fB\-mips1\fR] [\fB\-mips2\fR]
253    [\fB\-mips3\fR] [\fB\-mips4\fR] [\fB\-mips5\fR] [\fB\-mips32\fR] [\fB\-mips32r2\fR]
254    [\fB\-mips64\fR] [\fB\-mips64r2\fR]
255    [\fB\-construct\-floats\fR] [\fB\-no\-construct\-floats\fR]
256    [\fB\-trap\fR] [\fB\-no\-break\fR] [\fB\-break\fR] [\fB\-no\-trap\fR]
257    [\fB\-mips16\fR] [\fB\-no\-mips16\fR]
258    [\fB\-msmartmips\fR] [\fB\-mno\-smartmips\fR]
259    [\fB\-mips3d\fR] [\fB\-no\-mips3d\fR]
260    [\fB\-mdmx\fR] [\fB\-no\-mdmx\fR]
261    [\fB\-mdsp\fR] [\fB\-mno\-dsp\fR]
262    [\fB\-mdspr2\fR] [\fB\-mno\-dspr2\fR]
263    [\fB\-mmt\fR] [\fB\-mno\-mt\fR]
264    [\fB\-mfix7000\fR] [\fB\-mno\-fix7000\fR]
265    [\fB\-mfix\-vr4120\fR] [\fB\-mno\-fix\-vr4120\fR]
266    [\fB\-mfix\-vr4130\fR] [\fB\-mno\-fix\-vr4130\fR]
267    [\fB\-mdebug\fR] [\fB\-no\-mdebug\fR]
268    [\fB\-mpdr\fR] [\fB\-mno\-pdr\fR]
269 .PP
270 \&\fITarget \s-1MMIX\s0 options:\fR
271    [\fB\-\-fixed\-special\-register\-names\fR] [\fB\-\-globalize\-symbols\fR]
272    [\fB\-\-gnu\-syntax\fR] [\fB\-\-relax\fR] [\fB\-\-no\-predefined\-symbols\fR]
273    [\fB\-\-no\-expand\fR] [\fB\-\-no\-merge\-gregs\fR] [\fB\-x\fR]
274    [\fB\-\-linker\-allocated\-gregs\fR]
275 .PP
276 \&\fITarget \s-1PDP11\s0 options:\fR
277    [\fB\-mpic\fR|\fB\-mno\-pic\fR] [\fB\-mall\fR] [\fB\-mno\-extensions\fR]
278    [\fB\-m\fR\fIextension\fR|\fB\-mno\-\fR\fIextension\fR]
279    [\fB\-m\fR\fIcpu\fR] [\fB\-m\fR\fImachine\fR]
280 .PP
281 \&\fITarget picoJava options:\fR
282    [\fB\-mb\fR|\fB\-me\fR]
283 .PP
284 \&\fITarget PowerPC options:\fR
285    [\fB\-a32\fR|\fB\-a64\fR]
286    [\fB\-mpwrx\fR|\fB\-mpwr2\fR|\fB\-mpwr\fR|\fB\-m601\fR|\fB\-mppc\fR|\fB\-mppc32\fR|\fB\-m603\fR|\fB\-m604\fR|\fB\-m403\fR|\fB\-m405\fR|
287     \fB\-m440\fR|\fB\-m464\fR|\fB\-m476\fR|\fB\-m7400\fR|\fB\-m7410\fR|\fB\-m7450\fR|\fB\-m7455\fR|\fB\-m750cl\fR|\fB\-mppc64\fR|
288     \fB\-m620\fR|\fB\-me500\fR|\fB\-e500x2\fR|\fB\-me500mc\fR|\fB\-me500mc64\fR|\fB\-mppc64bridge\fR|\fB\-mbooke\fR|
289     \fB\-mpower4\fR|\fB\-mpr4\fR|\fB\-mpower5\fR|\fB\-mpwr5\fR|\fB\-mpwr5x\fR|\fB\-mpower6\fR|\fB\-mpwr6\fR|
290     \fB\-mpower7\fR|\fB\-mpw7\fR|\fB\-ma2\fR|\fB\-mcell\fR|\fB\-mspe\fR|\fB\-mtitan\fR|\fB\-me300\fR|\fB\-mcom\fR]
291    [\fB\-many\fR] [\fB\-maltivec\fR|\fB\-mvsx\fR]
292    [\fB\-mregnames\fR|\fB\-mno\-regnames\fR]
293    [\fB\-mrelocatable\fR|\fB\-mrelocatable\-lib\fR|\fB\-K \s-1PIC\s0\fR] [\fB\-memb\fR]
294    [\fB\-mlittle\fR|\fB\-mlittle\-endian\fR|\fB\-le\fR|\fB\-mbig\fR|\fB\-mbig\-endian\fR|\fB\-be\fR]
295    [\fB\-msolaris\fR|\fB\-mno\-solaris\fR]
296    [\fB\-nops=\fR\fIcount\fR]
297 .PP
298 \&\fITarget \s-1RX\s0 options:\fR
299    [\fB\-mlittle\-endian\fR|\fB\-mbig\-endian\fR]
300    [\fB\-m32bit\-ints\fR|\fB\-m16bit\-ints\fR]
301    [\fB\-m32bit\-doubles\fR|\fB\-m64bit\-doubles\fR]
302 .PP
303 \&\fITarget s390 options:\fR
304    [\fB\-m31\fR|\fB\-m64\fR] [\fB\-mesa\fR|\fB\-mzarch\fR] [\fB\-march\fR=\fI\s-1CPU\s0\fR]
305    [\fB\-mregnames\fR|\fB\-mno\-regnames\fR]
306    [\fB\-mwarn\-areg\-zero\fR]
307 .PP
308 \&\fITarget \s-1SCORE\s0 options:\fR
309    [\fB\-EB\fR][\fB\-EL\fR][\fB\-FIXDD\fR][\fB\-NWARN\fR]
310    [\fB\-SCORE5\fR][\fB\-SCORE5U\fR][\fB\-SCORE7\fR][\fB\-SCORE3\fR]
311    [\fB\-march=score7\fR][\fB\-march=score3\fR]
312    [\fB\-USE_R1\fR][\fB\-KPIC\fR][\fB\-O0\fR][\fB\-G\fR \fInum\fR][\fB\-V\fR]
313 .PP
314 \&\fITarget \s-1SPARC\s0 options:\fR
315    [\fB\-Av6\fR|\fB\-Av7\fR|\fB\-Av8\fR|\fB\-Asparclet\fR|\fB\-Asparclite\fR
316     \fB\-Av8plus\fR|\fB\-Av8plusa\fR|\fB\-Av9\fR|\fB\-Av9a\fR]
317    [\fB\-xarch=v8plus\fR|\fB\-xarch=v8plusa\fR] [\fB\-bump\fR]
318    [\fB\-32\fR|\fB\-64\fR]
319 .PP
320 \&\fITarget \s-1TIC54X\s0 options:\fR
321  [\fB\-mcpu=54[123589]\fR|\fB\-mcpu=54[56]lp\fR] [\fB\-mfar\-mode\fR|\fB\-mf\fR]
322  [\fB\-merrors\-to\-file\fR \fI<filename>\fR|\fB\-me\fR \fI<filename>\fR]
323 .PP
324 \&\fITarget \s-1TIC6X\s0 options:\fR
325    [\fB\-march=\fR\fIarch\fR] [\fB\-matomic\fR|\fB\-mno\-atomic\fR]
326    [\fB\-mbig\-endian\fR|\fB\-mlittle\-endian\fR] [\fB\-mdsbt\fR|\fB\-mno\-dsbt\fR]
327    [\fB\-mpid=no\fR|\fB\-mpid=near\fR|\fB\-mpid=far\fR] [\fB\-mpic\fR|\fB\-mno\-pic\fR]
328 .PP
329 \&\fITarget Z80 options:\fR
330   [\fB\-z80\fR] [\fB\-r800\fR]
331   [ \fB\-ignore\-undocumented\-instructions\fR] [\fB\-Wnud\fR]
332   [ \fB\-ignore\-unportable\-instructions\fR] [\fB\-Wnup\fR]
333   [ \fB\-warn\-undocumented\-instructions\fR] [\fB\-Wud\fR]
334   [ \fB\-warn\-unportable\-instructions\fR] [\fB\-Wup\fR]
335   [ \fB\-forbid\-undocumented\-instructions\fR] [\fB\-Fud\fR]
336   [ \fB\-forbid\-unportable\-instructions\fR] [\fB\-Fup\fR]
337 .PP
338 \&\fITarget Xtensa options:\fR
339  [\fB\-\-[no\-]text\-section\-literals\fR] [\fB\-\-[no\-]absolute\-literals\fR]
340  [\fB\-\-[no\-]target\-align\fR] [\fB\-\-[no\-]longcalls\fR]
341  [\fB\-\-[no\-]transform\fR]
342  [\fB\-\-rename\-section\fR \fIoldname\fR=\fInewname\fR]
343 .SH "DESCRIPTION"
344 .IX Header "DESCRIPTION"
345 \&\s-1GNU\s0 \fBas\fR is really a family of assemblers.
346 If you use (or have used) the \s-1GNU\s0 assembler on one architecture, you
347 should find a fairly similar environment when you use it on another
348 architecture.  Each version has much in common with the others,
349 including object file formats, most assembler directives (often called
350 \&\fIpseudo-ops\fR) and assembler syntax.
351 .PP
352 \&\fBas\fR is primarily intended to assemble the output of the
353 \&\s-1GNU\s0 C compiler \f(CW\*(C`gcc\*(C'\fR for use by the linker
354 \&\f(CW\*(C`ld\*(C'\fR.  Nevertheless, we've tried to make \fBas\fR
355 assemble correctly everything that other assemblers for the same
356 machine would assemble.
357 Any exceptions are documented explicitly.
358 This doesn't mean \fBas\fR always uses the same syntax as another
359 assembler for the same architecture; for example, we know of several
360 incompatible versions of 680x0 assembly language syntax.
361 .PP
362 Each time you run \fBas\fR it assembles exactly one source
363 program.  The source program is made up of one or more files.
364 (The standard input is also a file.)
365 .PP
366 You give \fBas\fR a command line that has zero or more input file
367 names.  The input files are read (from left file name to right).  A
368 command line argument (in any position) that has no special meaning
369 is taken to be an input file name.
370 .PP
371 If you give \fBas\fR no file names it attempts to read one input file
372 from the \fBas\fR standard input, which is normally your terminal.  You
373 may have to type \fBctl-D\fR to tell \fBas\fR there is no more program
374 to assemble.
375 .PP
376 Use \fB\-\-\fR if you need to explicitly name the standard input file
377 in your command line.
378 .PP
379 If the source is empty, \fBas\fR produces a small, empty object
380 file.
381 .PP
382 \&\fBas\fR may write warnings and error messages to the standard error
383 file (usually your terminal).  This should not happen when  a compiler
384 runs \fBas\fR automatically.  Warnings report an assumption made so
385 that \fBas\fR could keep assembling a flawed program; errors report a
386 grave problem that stops the assembly.
387 .PP
388 If you are invoking \fBas\fR via the \s-1GNU\s0 C compiler,
389 you can use the \fB\-Wa\fR option to pass arguments through to the assembler.
390 The assembler arguments must be separated from each other (and the \fB\-Wa\fR)
391 by commas.  For example:
392 .PP
393 .Vb 1
394 \&        gcc \-c \-g \-O \-Wa,\-alh,\-L file.c
395 .Ve
396 .PP
397 This passes two options to the assembler: \fB\-alh\fR (emit a listing to
398 standard output with high-level and assembly source) and \fB\-L\fR (retain
399 local symbols in the symbol table).
400 .PP
401 Usually you do not need to use this \fB\-Wa\fR mechanism, since many compiler
402 command-line options are automatically passed to the assembler by the compiler.
403 (You can call the \s-1GNU\s0 compiler driver with the \fB\-v\fR option to see
404 precisely what options it passes to each compilation pass, including the
405 assembler.)
406 .SH "OPTIONS"
407 .IX Header "OPTIONS"
408 .IP "\fB@\fR\fIfile\fR" 4
409 .IX Item "@file"
410 Read command-line options from \fIfile\fR.  The options read are
411 inserted in place of the original @\fIfile\fR option.  If \fIfile\fR
412 does not exist, or cannot be read, then the option will be treated
413 literally, and not removed.
414 .Sp
415 Options in \fIfile\fR are separated by whitespace.  A whitespace
416 character may be included in an option by surrounding the entire
417 option in either single or double quotes.  Any character (including a
418 backslash) may be included by prefixing the character to be included
419 with a backslash.  The \fIfile\fR may itself contain additional
420 @\fIfile\fR options; any such options will be processed recursively.
421 .IP "\fB\-a[cdghlmns]\fR" 4
422 .IX Item "-a[cdghlmns]"
423 Turn on listings, in any of a variety of ways:
424 .RS 4
425 .IP "\fB\-ac\fR" 4
426 .IX Item "-ac"
427 omit false conditionals
428 .IP "\fB\-ad\fR" 4
429 .IX Item "-ad"
430 omit debugging directives
431 .IP "\fB\-ag\fR" 4
432 .IX Item "-ag"
433 include general information, like as version and options passed
434 .IP "\fB\-ah\fR" 4
435 .IX Item "-ah"
436 include high-level source
437 .IP "\fB\-al\fR" 4
438 .IX Item "-al"
439 include assembly
440 .IP "\fB\-am\fR" 4
441 .IX Item "-am"
442 include macro expansions
443 .IP "\fB\-an\fR" 4
444 .IX Item "-an"
445 omit forms processing
446 .IP "\fB\-as\fR" 4
447 .IX Item "-as"
448 include symbols
449 .IP "\fB=file\fR" 4
450 .IX Item "=file"
451 set the name of the listing file
452 .RE
453 .RS 4
454 .Sp
455 You may combine these options; for example, use \fB\-aln\fR for assembly
456 listing without forms processing.  The \fB=file\fR option, if used, must be
457 the last one.  By itself, \fB\-a\fR defaults to \fB\-ahls\fR.
458 .RE
459 .IP "\fB\-\-alternate\fR" 4
460 .IX Item "--alternate"
461 Begin in alternate macro mode.
462 .IP "\fB\-\-compress\-debug\-sections\fR" 4
463 .IX Item "--compress-debug-sections"
464 Compress \s-1DWARF\s0 debug sections using zlib.  The debug sections are renamed
465 to begin with \fB.zdebug\fR, and the resulting object file may not be
466 compatible with older linkers and object file utilities.
467 .IP "\fB\-\-nocompress\-debug\-sections\fR" 4
468 .IX Item "--nocompress-debug-sections"
469 Do not compress \s-1DWARF\s0 debug sections.  This is the default.
470 .IP "\fB\-D\fR" 4
471 .IX Item "-D"
472 Ignored.  This option is accepted for script compatibility with calls to
473 other assemblers.
474 .IP "\fB\-\-debug\-prefix\-map\fR \fIold\fR\fB=\fR\fInew\fR" 4
475 .IX Item "--debug-prefix-map old=new"
476 When assembling files in directory \fI\fIold\fI\fR, record debugging
477 information describing them as in \fI\fInew\fI\fR instead.
478 .IP "\fB\-\-defsym\fR \fIsym\fR\fB=\fR\fIvalue\fR" 4
479 .IX Item "--defsym sym=value"
480 Define the symbol \fIsym\fR to be \fIvalue\fR before assembling the input file.
481 \&\fIvalue\fR must be an integer constant.  As in C, a leading \fB0x\fR
482 indicates a hexadecimal value, and a leading \fB0\fR indicates an octal
483 value.  The value of the symbol can be overridden inside a source file via the
484 use of a \f(CW\*(C`.set\*(C'\fR pseudo-op.
485 .IP "\fB\-f\fR" 4
486 .IX Item "-f"
487 \&\*(L"fast\*(R"\-\-\-skip whitespace and comment preprocessing (assume source is
488 compiler output).
489 .IP "\fB\-g\fR" 4
490 .IX Item "-g"
491 .PD 0
492 .IP "\fB\-\-gen\-debug\fR" 4
493 .IX Item "--gen-debug"
494 .PD
495 Generate debugging information for each assembler source line using whichever
496 debug format is preferred by the target.  This currently means either \s-1STABS\s0,
497 \&\s-1ECOFF\s0 or \s-1DWARF2\s0.
498 .IP "\fB\-\-gstabs\fR" 4
499 .IX Item "--gstabs"
500 Generate stabs debugging information for each assembler line.  This
501 may help debugging assembler code, if the debugger can handle it.
502 .IP "\fB\-\-gstabs+\fR" 4
503 .IX Item "--gstabs+"
504 Generate stabs debugging information for each assembler line, with \s-1GNU\s0
505 extensions that probably only gdb can handle, and that could make other
506 debuggers crash or refuse to read your program.  This
507 may help debugging assembler code.  Currently the only \s-1GNU\s0 extension is
508 the location of the current working directory at assembling time.
509 .IP "\fB\-\-gdwarf\-2\fR" 4
510 .IX Item "--gdwarf-2"
511 Generate \s-1DWARF2\s0 debugging information for each assembler line.  This
512 may help debugging assembler code, if the debugger can handle it.  Note\-\-\-this
513 option is only supported by some targets, not all of them.
514 .IP "\fB\-\-size\-check=error\fR" 4
515 .IX Item "--size-check=error"
516 .PD 0
517 .IP "\fB\-\-size\-check=warning\fR" 4
518 .IX Item "--size-check=warning"
519 .PD
520 Issue an error or warning for invalid \s-1ELF\s0 .size directive.
521 .IP "\fB\-\-help\fR" 4
522 .IX Item "--help"
523 Print a summary of the command line options and exit.
524 .IP "\fB\-\-target\-help\fR" 4
525 .IX Item "--target-help"
526 Print a summary of all target specific options and exit.
527 .IP "\fB\-I\fR \fIdir\fR" 4
528 .IX Item "-I dir"
529 Add directory \fIdir\fR to the search list for \f(CW\*(C`.include\*(C'\fR directives.
530 .IP "\fB\-J\fR" 4
531 .IX Item "-J"
532 Don't warn about signed overflow.
533 .IP "\fB\-K\fR" 4
534 .IX Item "-K"
535 Issue warnings when difference tables altered for long displacements.
536 .IP "\fB\-L\fR" 4
537 .IX Item "-L"
538 .PD 0
539 .IP "\fB\-\-keep\-locals\fR" 4
540 .IX Item "--keep-locals"
541 .PD
542 Keep (in the symbol table) local symbols.  These symbols start with
543 system-specific local label prefixes, typically \fB.L\fR for \s-1ELF\s0 systems
544 or \fBL\fR for traditional a.out systems.
545 .IP "\fB\-\-listing\-lhs\-width=\fR\fInumber\fR" 4
546 .IX Item "--listing-lhs-width=number"
547 Set the maximum width, in words, of the output data column for an assembler
548 listing to \fInumber\fR.
549 .IP "\fB\-\-listing\-lhs\-width2=\fR\fInumber\fR" 4
550 .IX Item "--listing-lhs-width2=number"
551 Set the maximum width, in words, of the output data column for continuation
552 lines in an assembler listing to \fInumber\fR.
553 .IP "\fB\-\-listing\-rhs\-width=\fR\fInumber\fR" 4
554 .IX Item "--listing-rhs-width=number"
555 Set the maximum width of an input source line, as displayed in a listing, to
556 \&\fInumber\fR bytes.
557 .IP "\fB\-\-listing\-cont\-lines=\fR\fInumber\fR" 4
558 .IX Item "--listing-cont-lines=number"
559 Set the maximum number of lines printed in a listing for a single line of input
560 to \fInumber\fR + 1.
561 .IP "\fB\-o\fR \fIobjfile\fR" 4
562 .IX Item "-o objfile"
563 Name the object-file output from \fBas\fR \fIobjfile\fR.
564 .IP "\fB\-R\fR" 4
565 .IX Item "-R"
566 Fold the data section into the text section.
567 .Sp
568 Set the default size of \s-1GAS\s0's hash tables to a prime number close to
569 \&\fInumber\fR.  Increasing this value can reduce the length of time it takes the
570 assembler to perform its tasks, at the expense of increasing the assembler's
571 memory requirements.  Similarly reducing this value can reduce the memory
572 requirements at the expense of speed.
573 .IP "\fB\-\-reduce\-memory\-overheads\fR" 4
574 .IX Item "--reduce-memory-overheads"
575 This option reduces \s-1GAS\s0's memory requirements, at the expense of making the
576 assembly processes slower.  Currently this switch is a synonym for
577 \&\fB\-\-hash\-size=4051\fR, but in the future it may have other effects as well.
578 .IP "\fB\-\-statistics\fR" 4
579 .IX Item "--statistics"
580 Print the maximum space (in bytes) and total time (in seconds) used by
581 assembly.
582 .IP "\fB\-\-strip\-local\-absolute\fR" 4
583 .IX Item "--strip-local-absolute"
584 Remove local absolute symbols from the outgoing symbol table.
585 .IP "\fB\-v\fR" 4
586 .IX Item "-v"
587 .PD 0
588 .IP "\fB\-version\fR" 4
589 .IX Item "-version"
590 .PD
591 Print the \fBas\fR version.
592 .IP "\fB\-\-version\fR" 4
593 .IX Item "--version"
594 Print the \fBas\fR version and exit.
595 .IP "\fB\-W\fR" 4
596 .IX Item "-W"
597 .PD 0
598 .IP "\fB\-\-no\-warn\fR" 4
599 .IX Item "--no-warn"
600 .PD
601 Suppress warning messages.
602 .IP "\fB\-\-fatal\-warnings\fR" 4
603 .IX Item "--fatal-warnings"
604 Treat warnings as errors.
605 .IP "\fB\-\-warn\fR" 4
606 .IX Item "--warn"
607 Don't suppress warning messages or treat them as errors.
608 .IP "\fB\-w\fR" 4
609 .IX Item "-w"
610 Ignored.
611 .IP "\fB\-x\fR" 4
612 .IX Item "-x"
613 Ignored.
614 .IP "\fB\-Z\fR" 4
615 .IX Item "-Z"
616 Generate an object file even after errors.
617 .IP "\fB\-\- |\fR \fIfiles\fR \fB...\fR" 4
618 .IX Item "-- | files ..."
619 Standard input, or source files to assemble.
620 .PP
621 The following options are available when as is configured for
622 an \s-1ARC\s0 processor.
623 .IP "\fB\-marc[5|6|7|8]\fR" 4
624 .IX Item "-marc[5|6|7|8]"
625 This option selects the core processor variant.
626 .IP "\fB\-EB | \-EL\fR" 4
627 .IX Item "-EB | -EL"
628 Select either big-endian (\-EB) or little-endian (\-EL) output.
629 .PP
630 The following options are available when as is configured for the \s-1ARM\s0
631 processor family.
632 .IP "\fB\-mcpu=\fR\fIprocessor\fR\fB[+\fR\fIextension\fR\fB...]\fR" 4
633 .IX Item "-mcpu=processor[+extension...]"
634 Specify which \s-1ARM\s0 processor variant is the target.
635 .IP "\fB\-march=\fR\fIarchitecture\fR\fB[+\fR\fIextension\fR\fB...]\fR" 4
636 .IX Item "-march=architecture[+extension...]"
637 Specify which \s-1ARM\s0 architecture variant is used by the target.
638 .IP "\fB\-mfpu=\fR\fIfloating-point-format\fR" 4
639 .IX Item "-mfpu=floating-point-format"
640 Select which Floating Point architecture is the target.
641 .IP "\fB\-mfloat\-abi=\fR\fIabi\fR" 4
642 .IX Item "-mfloat-abi=abi"
643 Select which floating point \s-1ABI\s0 is in use.
644 .IP "\fB\-mthumb\fR" 4
645 .IX Item "-mthumb"
646 Enable Thumb only instruction decoding.
647 .IP "\fB\-mapcs\-32 | \-mapcs\-26 | \-mapcs\-float | \-mapcs\-reentrant\fR" 4
648 .IX Item "-mapcs-32 | -mapcs-26 | -mapcs-float | -mapcs-reentrant"
649 Select which procedure calling convention is in use.
650 .IP "\fB\-EB | \-EL\fR" 4
651 .IX Item "-EB | -EL"
652 Select either big-endian (\-EB) or little-endian (\-EL) output.
653 .IP "\fB\-mthumb\-interwork\fR" 4
654 .IX Item "-mthumb-interwork"
655 Specify that the code has been generated with interworking between Thumb and
656 \&\s-1ARM\s0 code in mind.
657 .IP "\fB\-k\fR" 4
658 .IX Item "-k"
659 Specify that \s-1PIC\s0 code has been generated.
660 .PP
661 The following options are available when as is configured for
662 the Blackfin processor family.
663 .IP "\fB\-mcpu=\fR\fIprocessor\fR[\fB\-\fR\fIsirevision\fR]" 4
664 .IX Item "-mcpu=processor[-sirevision]"
665 This option specifies the target processor.  The optional \fIsirevision\fR
666 is not used in assembler.
667 .IP "\fB\-mfdpic\fR" 4
668 .IX Item "-mfdpic"
669 Assemble for the \s-1FDPIC\s0 \s-1ABI\s0.
670 .IP "\fB\-mno\-fdpic\fR" 4
671 .IX Item "-mno-fdpic"
672 .PD 0
673 .IP "\fB\-mnopic\fR" 4
674 .IX Item "-mnopic"
675 .PD
676 Disable \-mfdpic.
677 .PP
678 See the info pages for documentation of the CRIS-specific options.
679 .PP
680 The following options are available when as is configured for
681 a D10V processor.
682 .IP "\fB\-O\fR" 4
683 .IX Item "-O"
684 Optimize output by parallelizing instructions.
685 .PP
686 The following options are available when as is configured for a D30V
687 processor.
688 .IP "\fB\-O\fR" 4
689 .IX Item "-O"
690 Optimize output by parallelizing instructions.
691 .IP "\fB\-n\fR" 4
692 .IX Item "-n"
693 Warn when nops are generated.
694 .IP "\fB\-N\fR" 4
695 .IX Item "-N"
696 Warn when a nop after a 32\-bit multiply instruction is generated.
697 .PP
698 The following options are available when as is configured for the
699 Intel 80960 processor.
700 .IP "\fB\-ACA | \-ACA_A | \-ACB | \-ACC | \-AKA | \-AKB | \-AKC | \-AMC\fR" 4
701 .IX Item "-ACA | -ACA_A | -ACB | -ACC | -AKA | -AKB | -AKC | -AMC"
702 Specify which variant of the 960 architecture is the target.
703 .IP "\fB\-b\fR" 4
704 .IX Item "-b"
705 Add code to collect statistics about branches taken.
706 .IP "\fB\-no\-relax\fR" 4
707 .IX Item "-no-relax"
708 Do not alter compare-and-branch instructions for long displacements;
709 error if necessary.
710 .PP
711 The following options are available when as is configured for the
712 Ubicom \s-1IP2K\s0 series.
713 .IP "\fB\-mip2022ext\fR" 4
714 .IX Item "-mip2022ext"
715 Specifies that the extended \s-1IP2022\s0 instructions are allowed.
716 .IP "\fB\-mip2022\fR" 4
717 .IX Item "-mip2022"
718 Restores the default behaviour, which restricts the permitted instructions to
719 just the basic \s-1IP2022\s0 ones.
720 .PP
721 The following options are available when as is configured for the
722 Renesas M32C and M16C processors.
723 .IP "\fB\-m32c\fR" 4
724 .IX Item "-m32c"
725 Assemble M32C instructions.
726 .IP "\fB\-m16c\fR" 4
727 .IX Item "-m16c"
728 Assemble M16C instructions (the default).
729 .IP "\fB\-relax\fR" 4
730 .IX Item "-relax"
731 Enable support for link-time relaxations.
732 .IP "\fB\-h\-tick\-hex\fR" 4
733 .IX Item "-h-tick-hex"
734 Support H'00 style hex constants in addition to 0x00 style.
735 .PP
736 The following options are available when as is configured for the
737 Renesas M32R (formerly Mitsubishi M32R) series.
738 .IP "\fB\-\-m32rx\fR" 4
739 .IX Item "--m32rx"
740 Specify which processor in the M32R family is the target.  The default
741 is normally the M32R, but this option changes it to the M32RX.
742 .IP "\fB\-\-warn\-explicit\-parallel\-conflicts or \-\-Wp\fR" 4
743 .IX Item "--warn-explicit-parallel-conflicts or --Wp"
744 Produce warning messages when questionable parallel constructs are
745 encountered.
746 .IP "\fB\-\-no\-warn\-explicit\-parallel\-conflicts or \-\-Wnp\fR" 4
747 .IX Item "--no-warn-explicit-parallel-conflicts or --Wnp"
748 Do not produce warning messages when questionable parallel constructs are
749 encountered.
750 .PP
751 The following options are available when as is configured for the
752 Motorola 68000 series.
753 .IP "\fB\-l\fR" 4
754 .IX Item "-l"
755 Shorten references to undefined symbols, to one word instead of two.
756 .IP "\fB\-m68000 | \-m68008 | \-m68010 | \-m68020 | \-m68030\fR" 4
757 .IX Item "-m68000 | -m68008 | -m68010 | -m68020 | -m68030"
758 .PD 0
759 .IP "\fB| \-m68040 | \-m68060 | \-m68302 | \-m68331 | \-m68332\fR" 4
760 .IX Item "| -m68040 | -m68060 | -m68302 | -m68331 | -m68332"
761 .IP "\fB| \-m68333 | \-m68340 | \-mcpu32 | \-m5200\fR" 4
762 .IX Item "| -m68333 | -m68340 | -mcpu32 | -m5200"
763 .PD
764 Specify what processor in the 68000 family is the target.  The default
765 is normally the 68020, but this can be changed at configuration time.
766 .IP "\fB\-m68881 | \-m68882 | \-mno\-68881 | \-mno\-68882\fR" 4
767 .IX Item "-m68881 | -m68882 | -mno-68881 | -mno-68882"
768 The target machine does (or does not) have a floating-point coprocessor.
769 The default is to assume a coprocessor for 68020, 68030, and cpu32.  Although
770 the basic 68000 is not compatible with the 68881, a combination of the
771 two can be specified, since it's possible to do emulation of the
772 coprocessor instructions with the main processor.
773 .IP "\fB\-m68851 | \-mno\-68851\fR" 4
774 .IX Item "-m68851 | -mno-68851"
775 The target machine does (or does not) have a memory-management
776 unit coprocessor.  The default is to assume an \s-1MMU\s0 for 68020 and up.
777 .PP
778 For details about the \s-1PDP\-11\s0 machine dependent features options,
779 see \fBPDP\-11\-Options\fR.
780 .IP "\fB\-mpic | \-mno\-pic\fR" 4
781 .IX Item "-mpic | -mno-pic"
782 Generate position-independent (or position-dependent) code.  The
783 default is \fB\-mpic\fR.
784 .IP "\fB\-mall\fR" 4
785 .IX Item "-mall"
786 .PD 0
787 .IP "\fB\-mall\-extensions\fR" 4
788 .IX Item "-mall-extensions"
789 .PD
790 Enable all instruction set extensions.  This is the default.
791 .IP "\fB\-mno\-extensions\fR" 4
792 .IX Item "-mno-extensions"
793 Disable all instruction set extensions.
794 .IP "\fB\-m\fR\fIextension\fR \fB| \-mno\-\fR\fIextension\fR" 4
795 .IX Item "-mextension | -mno-extension"
796 Enable (or disable) a particular instruction set extension.
797 .IP "\fB\-m\fR\fIcpu\fR" 4
798 .IX Item "-mcpu"
799 Enable the instruction set extensions supported by a particular \s-1CPU\s0, and
800 disable all other extensions.
801 .IP "\fB\-m\fR\fImachine\fR" 4
802 .IX Item "-mmachine"
803 Enable the instruction set extensions supported by a particular machine
804 model, and disable all other extensions.
805 .PP
806 The following options are available when as is configured for
807 a picoJava processor.
808 .IP "\fB\-mb\fR" 4
809 .IX Item "-mb"
810 Generate \*(L"big endian\*(R" format output.
811 .IP "\fB\-ml\fR" 4
812 .IX Item "-ml"
813 Generate \*(L"little endian\*(R" format output.
814 .PP
815 The following options are available when as is configured for the
816 Motorola 68HC11 or 68HC12 series.
817 .IP "\fB\-m68hc11 | \-m68hc12 | \-m68hcs12\fR" 4
818 .IX Item "-m68hc11 | -m68hc12 | -m68hcs12"
819 Specify what processor is the target.  The default is
820 defined by the configuration option when building the assembler.
821 .IP "\fB\-mshort\fR" 4
822 .IX Item "-mshort"
823 Specify to use the 16\-bit integer \s-1ABI\s0.
824 .IP "\fB\-mlong\fR" 4
825 .IX Item "-mlong"
826 Specify to use the 32\-bit integer \s-1ABI\s0.
827 .IP "\fB\-mshort\-double\fR" 4
828 .IX Item "-mshort-double"
829 Specify to use the 32\-bit double \s-1ABI\s0.
830 .IP "\fB\-mlong\-double\fR" 4
831 .IX Item "-mlong-double"
832 Specify to use the 64\-bit double \s-1ABI\s0.
833 .IP "\fB\-\-force\-long\-branches\fR" 4
834 .IX Item "--force-long-branches"
835 Relative branches are turned into absolute ones. This concerns
836 conditional branches, unconditional branches and branches to a
837 sub routine.
838 .IP "\fB\-S | \-\-short\-branches\fR" 4
839 .IX Item "-S | --short-branches"
840 Do not turn relative branches into absolute ones
841 when the offset is out of range.
842 .IP "\fB\-\-strict\-direct\-mode\fR" 4
843 .IX Item "--strict-direct-mode"
844 Do not turn the direct addressing mode into extended addressing mode
845 when the instruction does not support direct addressing mode.
846 .IP "\fB\-\-print\-insn\-syntax\fR" 4
847 .IX Item "--print-insn-syntax"
848 Print the syntax of instruction in case of error.
849 .IP "\fB\-\-print\-opcodes\fR" 4
850 .IX Item "--print-opcodes"
851 print the list of instructions with syntax and then exit.
852 .IP "\fB\-\-generate\-example\fR" 4
853 .IX Item "--generate-example"
854 print an example of instruction for each possible instruction and then exit.
855 This option is only useful for testing \fBas\fR.
856 .PP
857 The following options are available when \fBas\fR is configured
858 for the \s-1SPARC\s0 architecture:
859 .IP "\fB\-Av6 | \-Av7 | \-Av8 | \-Asparclet | \-Asparclite\fR" 4
860 .IX Item "-Av6 | -Av7 | -Av8 | -Asparclet | -Asparclite"
861 .PD 0
862 .IP "\fB\-Av8plus | \-Av8plusa | \-Av9 | \-Av9a\fR" 4
863 .IX Item "-Av8plus | -Av8plusa | -Av9 | -Av9a"
864 .PD
865 Explicitly select a variant of the \s-1SPARC\s0 architecture.
866 .Sp
867 \&\fB\-Av8plus\fR and \fB\-Av8plusa\fR select a 32 bit environment.
868 \&\fB\-Av9\fR and \fB\-Av9a\fR select a 64 bit environment.
869 .Sp
870 \&\fB\-Av8plusa\fR and \fB\-Av9a\fR enable the \s-1SPARC\s0 V9 instruction set with
871 UltraSPARC extensions.
872 .IP "\fB\-xarch=v8plus | \-xarch=v8plusa\fR" 4
873 .IX Item "-xarch=v8plus | -xarch=v8plusa"
874 For compatibility with the Solaris v9 assembler.  These options are
875 equivalent to \-Av8plus and \-Av8plusa, respectively.
876 .IP "\fB\-bump\fR" 4
877 .IX Item "-bump"
878 Warn when the assembler switches to another architecture.
879 .PP
880 The following options are available when as is configured for the 'c54x
881 architecture.
882 .IP "\fB\-mfar\-mode\fR" 4
883 .IX Item "-mfar-mode"
884 Enable extended addressing mode.  All addresses and relocations will assume
885 extended addressing (usually 23 bits).
886 .IP "\fB\-mcpu=\fR\fI\s-1CPU_VERSION\s0\fR" 4
887 .IX Item "-mcpu=CPU_VERSION"
888 Sets the \s-1CPU\s0 version being compiled for.
889 .IP "\fB\-merrors\-to\-file\fR \fI\s-1FILENAME\s0\fR" 4
890 .IX Item "-merrors-to-file FILENAME"
891 Redirect error output to a file, for broken systems which don't support such
892 behaviour in the shell.
893 .PP
894 The following options are available when as is configured for
895 a \s-1MIPS\s0 processor.
896 .IP "\fB\-G\fR \fInum\fR" 4
897 .IX Item "-G num"
898 This option sets the largest size of an object that can be referenced
899 implicitly with the \f(CW\*(C`gp\*(C'\fR register.  It is only accepted for targets that
900 use \s-1ECOFF\s0 format, such as a DECstation running Ultrix.  The default value is 8.
901 .IP "\fB\-EB\fR" 4
902 .IX Item "-EB"
903 Generate \*(L"big endian\*(R" format output.
904 .IP "\fB\-EL\fR" 4
905 .IX Item "-EL"
906 Generate \*(L"little endian\*(R" format output.
907 .IP "\fB\-mips1\fR" 4
908 .IX Item "-mips1"
909 .PD 0
910 .IP "\fB\-mips2\fR" 4
911 .IX Item "-mips2"
912 .IP "\fB\-mips3\fR" 4
913 .IX Item "-mips3"
914 .IP "\fB\-mips4\fR" 4
915 .IX Item "-mips4"
916 .IP "\fB\-mips5\fR" 4
917 .IX Item "-mips5"
918 .IP "\fB\-mips32\fR" 4
919 .IX Item "-mips32"
920 .IP "\fB\-mips32r2\fR" 4
921 .IX Item "-mips32r2"
922 .IP "\fB\-mips64\fR" 4
923 .IX Item "-mips64"
924 .IP "\fB\-mips64r2\fR" 4
925 .IX Item "-mips64r2"
926 .PD
927 Generate code for a particular \s-1MIPS\s0 Instruction Set Architecture level.
928 \&\fB\-mips1\fR is an alias for \fB\-march=r3000\fR, \fB\-mips2\fR is an
929 alias for \fB\-march=r6000\fR, \fB\-mips3\fR is an alias for
930 \&\fB\-march=r4000\fR and \fB\-mips4\fR is an alias for \fB\-march=r8000\fR.
931 \&\fB\-mips5\fR, \fB\-mips32\fR, \fB\-mips32r2\fR, \fB\-mips64\fR, and
932 \&\fB\-mips64r2\fR
933 correspond to generic
934 \&\fB\s-1MIPS\s0 V\fR, \fB\s-1MIPS32\s0\fR, \fB\s-1MIPS32\s0 Release 2\fR, \fB\s-1MIPS64\s0\fR,
935 and \fB\s-1MIPS64\s0 Release 2\fR
936 \&\s-1ISA\s0 processors, respectively.
937 .IP "\fB\-march=\fR\fI\s-1CPU\s0\fR" 4
938 .IX Item "-march=CPU"
939 Generate code for a particular \s-1MIPS\s0 cpu.
940 .IP "\fB\-mtune=\fR\fIcpu\fR" 4
941 .IX Item "-mtune=cpu"
942 Schedule and tune for a particular \s-1MIPS\s0 cpu.
943 .IP "\fB\-mfix7000\fR" 4
944 .IX Item "-mfix7000"
945 .PD 0
946 .IP "\fB\-mno\-fix7000\fR" 4
947 .IX Item "-mno-fix7000"
948 .PD
949 Cause nops to be inserted if the read of the destination register
950 of an mfhi or mflo instruction occurs in the following two instructions.
951 .IP "\fB\-mdebug\fR" 4
952 .IX Item "-mdebug"
953 .PD 0
954 .IP "\fB\-no\-mdebug\fR" 4
955 .IX Item "-no-mdebug"
956 .PD
957 Cause stabs-style debugging output to go into an ECOFF-style .mdebug
958 section instead of the standard \s-1ELF\s0 .stabs sections.
959 .IP "\fB\-mpdr\fR" 4
960 .IX Item "-mpdr"
961 .PD 0
962 .IP "\fB\-mno\-pdr\fR" 4
963 .IX Item "-mno-pdr"
964 .PD
965 Control generation of \f(CW\*(C`.pdr\*(C'\fR sections.
966 .IP "\fB\-mgp32\fR" 4
967 .IX Item "-mgp32"
968 .PD 0
969 .IP "\fB\-mfp32\fR" 4
970 .IX Item "-mfp32"
971 .PD
972 The register sizes are normally inferred from the \s-1ISA\s0 and \s-1ABI\s0, but these
973 flags force a certain group of registers to be treated as 32 bits wide at
974 all times.  \fB\-mgp32\fR controls the size of general-purpose registers
975 and \fB\-mfp32\fR controls the size of floating-point registers.
976 .IP "\fB\-mips16\fR" 4
977 .IX Item "-mips16"
978 .PD 0
979 .IP "\fB\-no\-mips16\fR" 4
980 .IX Item "-no-mips16"
981 .PD
982 Generate code for the \s-1MIPS\s0 16 processor.  This is equivalent to putting
983 \&\f(CW\*(C`.set mips16\*(C'\fR at the start of the assembly file.  \fB\-no\-mips16\fR
984 turns off this option.
985 .IP "\fB\-msmartmips\fR" 4
986 .IX Item "-msmartmips"
987 .PD 0
988 .IP "\fB\-mno\-smartmips\fR" 4
989 .IX Item "-mno-smartmips"
990 .PD
991 Enables the SmartMIPS extension to the \s-1MIPS32\s0 instruction set. This is
992 equivalent to putting \f(CW\*(C`.set smartmips\*(C'\fR at the start of the assembly file.
993 \&\fB\-mno\-smartmips\fR turns off this option.
994 .IP "\fB\-mips3d\fR" 4
995 .IX Item "-mips3d"
996 .PD 0
997 .IP "\fB\-no\-mips3d\fR" 4
998 .IX Item "-no-mips3d"
999 .PD
1000 Generate code for the \s-1MIPS\-3D\s0 Application Specific Extension.
1001 This tells the assembler to accept \s-1MIPS\-3D\s0 instructions.
1002 \&\fB\-no\-mips3d\fR turns off this option.
1003 .IP "\fB\-mdmx\fR" 4
1004 .IX Item "-mdmx"
1005 .PD 0
1006 .IP "\fB\-no\-mdmx\fR" 4
1007 .IX Item "-no-mdmx"
1008 .PD
1009 Generate code for the \s-1MDMX\s0 Application Specific Extension.
1010 This tells the assembler to accept \s-1MDMX\s0 instructions.
1011 \&\fB\-no\-mdmx\fR turns off this option.
1012 .IP "\fB\-mdsp\fR" 4
1013 .IX Item "-mdsp"
1014 .PD 0
1015 .IP "\fB\-mno\-dsp\fR" 4
1016 .IX Item "-mno-dsp"
1017 .PD
1018 Generate code for the \s-1DSP\s0 Release 1 Application Specific Extension.
1019 This tells the assembler to accept \s-1DSP\s0 Release 1 instructions.
1020 \&\fB\-mno\-dsp\fR turns off this option.
1021 .IP "\fB\-mdspr2\fR" 4
1022 .IX Item "-mdspr2"
1023 .PD 0
1024 .IP "\fB\-mno\-dspr2\fR" 4
1025 .IX Item "-mno-dspr2"
1026 .PD
1027 Generate code for the \s-1DSP\s0 Release 2 Application Specific Extension.
1028 This option implies \-mdsp.
1029 This tells the assembler to accept \s-1DSP\s0 Release 2 instructions.
1030 \&\fB\-mno\-dspr2\fR turns off this option.
1031 .IP "\fB\-mmt\fR" 4
1032 .IX Item "-mmt"
1033 .PD 0
1034 .IP "\fB\-mno\-mt\fR" 4
1035 .IX Item "-mno-mt"
1036 .PD
1037 Generate code for the \s-1MT\s0 Application Specific Extension.
1038 This tells the assembler to accept \s-1MT\s0 instructions.
1039 \&\fB\-mno\-mt\fR turns off this option.
1040 .IP "\fB\-\-construct\-floats\fR" 4
1041 .IX Item "--construct-floats"
1042 .PD 0
1043 .IP "\fB\-\-no\-construct\-floats\fR" 4
1044 .IX Item "--no-construct-floats"
1045 .PD
1046 The \fB\-\-no\-construct\-floats\fR option disables the construction of
1047 double width floating point constants by loading the two halves of the
1048 value into the two single width floating point registers that make up
1049 the double width register.  By default \fB\-\-construct\-floats\fR is
1050 selected, allowing construction of these floating point constants.
1051 .IP "\fB\-\-emulation=\fR\fIname\fR" 4
1052 .IX Item "--emulation=name"
1053 This option causes \fBas\fR to emulate \fBas\fR configured
1054 for some other target, in all respects, including output format (choosing
1055 between \s-1ELF\s0 and \s-1ECOFF\s0 only), handling of pseudo-opcodes which may generate
1056 debugging information or store symbol table information, and default
1057 endianness.  The available configuration names are: \fBmipsecoff\fR,
1058 \&\fBmipself\fR, \fBmipslecoff\fR, \fBmipsbecoff\fR, \fBmipslelf\fR,
1059 \&\fBmipsbelf\fR.  The first two do not alter the default endianness from that
1060 of the primary target for which the assembler was configured; the others change
1061 the default to little\- or big-endian as indicated by the \fBb\fR or \fBl\fR
1062 in the name.  Using \fB\-EB\fR or \fB\-EL\fR will override the endianness
1063 selection in any case.
1064 .Sp
1065 This option is currently supported only when the primary target
1066 \&\fBas\fR is configured for is a \s-1MIPS\s0 \s-1ELF\s0 or \s-1ECOFF\s0 target.
1067 Furthermore, the primary target or others specified with
1068 \&\fB\-\-enable\-targets=...\fR at configuration time must include support for
1069 the other format, if both are to be available.  For example, the Irix 5
1070 configuration includes support for both.
1071 .Sp
1072 Eventually, this option will support more configurations, with more
1073 fine-grained control over the assembler's behavior, and will be supported for
1074 more processors.
1075 .IP "\fB\-nocpp\fR" 4
1076 .IX Item "-nocpp"
1077 \&\fBas\fR ignores this option.  It is accepted for compatibility with
1078 the native tools.
1079 .IP "\fB\-\-trap\fR" 4
1080 .IX Item "--trap"
1081 .PD 0
1082 .IP "\fB\-\-no\-trap\fR" 4
1083 .IX Item "--no-trap"
1084 .IP "\fB\-\-break\fR" 4
1085 .IX Item "--break"
1086 .IP "\fB\-\-no\-break\fR" 4
1087 .IX Item "--no-break"
1088 .PD
1089 Control how to deal with multiplication overflow and division by zero.
1090 \&\fB\-\-trap\fR or \fB\-\-no\-break\fR (which are synonyms) take a trap exception
1091 (and only work for Instruction Set Architecture level 2 and higher);
1092 \&\fB\-\-break\fR or \fB\-\-no\-trap\fR (also synonyms, and the default) take a
1093 break exception.
1094 .IP "\fB\-n\fR" 4
1095 .IX Item "-n"
1096 When this option is used, \fBas\fR will issue a warning every
1097 time it generates a nop instruction from a macro.
1098 .PP
1099 The following options are available when as is configured for
1100 an MCore processor.
1101 .IP "\fB\-jsri2bsr\fR" 4
1102 .IX Item "-jsri2bsr"
1103 .PD 0
1104 .IP "\fB\-nojsri2bsr\fR" 4
1105 .IX Item "-nojsri2bsr"
1106 .PD
1107 Enable or disable the \s-1JSRI\s0 to \s-1BSR\s0 transformation.  By default this is enabled.
1108 The command line option \fB\-nojsri2bsr\fR can be used to disable it.
1109 .IP "\fB\-sifilter\fR" 4
1110 .IX Item "-sifilter"
1111 .PD 0
1112 .IP "\fB\-nosifilter\fR" 4
1113 .IX Item "-nosifilter"
1114 .PD
1115 Enable or disable the silicon filter behaviour.  By default this is disabled.
1116 The default can be overridden by the \fB\-sifilter\fR command line option.
1117 .IP "\fB\-relax\fR" 4
1118 .IX Item "-relax"
1119 Alter jump instructions for long displacements.
1120 .IP "\fB\-mcpu=[210|340]\fR" 4
1121 .IX Item "-mcpu=[210|340]"
1122 Select the cpu type on the target hardware.  This controls which instructions
1123 can be assembled.
1124 .IP "\fB\-EB\fR" 4
1125 .IX Item "-EB"
1126 Assemble for a big endian target.
1127 .IP "\fB\-EL\fR" 4
1128 .IX Item "-EL"
1129 Assemble for a little endian target.
1130 .PP
1131 See the info pages for documentation of the MMIX-specific options.
1132 .PP
1133 See the info pages for documentation of the RX-specific options.
1134 .PP
1135 The following options are available when as is configured for the s390
1136 processor family.
1137 .IP "\fB\-m31\fR" 4
1138 .IX Item "-m31"
1139 .PD 0
1140 .IP "\fB\-m64\fR" 4
1141 .IX Item "-m64"
1142 .PD
1143 Select the word size, either 31/32 bits or 64 bits.
1144 .IP "\fB\-mesa\fR" 4
1145 .IX Item "-mesa"
1146 .PD 0
1147 .IP "\fB\-mzarch\fR" 4
1148 .IX Item "-mzarch"
1149 .PD
1150 Select the architecture mode, either the Enterprise System
1151 Architecture (esa) or the z/Architecture mode (zarch).
1152 .IP "\fB\-march=\fR\fIprocessor\fR" 4
1153 .IX Item "-march=processor"
1154 Specify which s390 processor variant is the target, \fBg6\fR, \fBg6\fR,
1155 \&\fBz900\fR, \fBz990\fR, \fBz9\-109\fR, \fBz9\-ec\fR, or \fBz10\fR.
1156 .IP "\fB\-mregnames\fR" 4
1157 .IX Item "-mregnames"
1158 .PD 0
1159 .IP "\fB\-mno\-regnames\fR" 4
1160 .IX Item "-mno-regnames"
1161 .PD
1162 Allow or disallow symbolic names for registers.
1163 .IP "\fB\-mwarn\-areg\-zero\fR" 4
1164 .IX Item "-mwarn-areg-zero"
1165 Warn whenever the operand for a base or index register has been specified
1166 but evaluates to zero.
1167 .PP
1168 The following options are available when as is configured for a
1169 \&\s-1TMS320C6000\s0 processor.
1170 .IP "\fB\-march=\fR\fIarch\fR" 4
1171 .IX Item "-march=arch"
1172 Enable (only) instructions from architecture \fIarch\fR.  By default,
1173 all instructions are permitted.
1174 .Sp
1175 The following values of \fIarch\fR are accepted: \f(CW\*(C`c62x\*(C'\fR,
1176 \&\f(CW\*(C`c64x\*(C'\fR, \f(CW\*(C`c64x+\*(C'\fR, \f(CW\*(C`c67x\*(C'\fR, \f(CW\*(C`c67x+\*(C'\fR, \f(CW\*(C`c674x\*(C'\fR.
1177 .IP "\fB\-matomic\fR" 4
1178 .IX Item "-matomic"
1179 .PD 0
1180 .IP "\fB\-mno\-atomic\fR" 4
1181 .IX Item "-mno-atomic"
1182 .PD
1183 Enable or disable the optional C64x+ atomic operation instructions.
1184 By default, they are enabled if no \fB\-march\fR option is given, or
1185 if an architecture is specified with \fB\-march\fR that implies
1186 these instructions are present (currently, there are no such
1187 architectures); they are disabled if an architecture is specified with
1188 \&\fB\-march\fR on which the instructions are optional or not
1189 present.  This option overrides such a default from the architecture,
1190 independent of the order in which the \fB\-march\fR or
1191 \&\fB\-matomic\fR or \fB\-mno\-atomic\fR options are passed.
1192 .IP "\fB\-mdsbt\fR" 4
1193 .IX Item "-mdsbt"
1194 .PD 0
1195 .IP "\fB\-mno\-dsbt\fR" 4
1196 .IX Item "-mno-dsbt"
1197 .PD
1198 The \fB\-mdsbt\fR option causes the assembler to generate the
1199 \&\f(CW\*(C`Tag_ABI_DSBT\*(C'\fR attribute with a value of 1, indicating that the
1200 code is using \s-1DSBT\s0 addressing.  The \fB\-mno\-dsbt\fR option, the
1201 default, causes the tag to have a value of 0, indicating that the code
1202 does not use \s-1DSBT\s0 addressing.  The linker will emit a warning if
1203 objects of different type (\s-1DSBT\s0 and non-DSBT) are linked together.
1204 .IP "\fB\-mpid=no\fR" 4
1205 .IX Item "-mpid=no"
1206 .PD 0
1207 .IP "\fB\-mpid=near\fR" 4
1208 .IX Item "-mpid=near"
1209 .IP "\fB\-mpid=far\fR" 4
1210 .IX Item "-mpid=far"
1211 .PD
1212 The \fB\-mpid=\fR option causes the assembler to generate the
1213 \&\f(CW\*(C`Tag_ABI_PID\*(C'\fR attribute with a value indicating the form of data
1214 addressing used by the code.  \fB\-mpid=no\fR, the default,
1215 indicates position-dependent data addressing, \fB\-mpid=near\fR
1216 indicates position-independent addressing with \s-1GOT\s0 accesses using near
1217 \&\s-1DP\s0 addressing, and \fB\-mpid=far\fR indicates position-independent
1218 addressing with \s-1GOT\s0 accesses using far \s-1DP\s0 addressing.  The linker will
1219 emit a warning if objects built with different settings of this option
1220 are linked together.
1221 .IP "\fB\-mpic\fR" 4
1222 .IX Item "-mpic"
1223 .PD 0
1224 .IP "\fB\-mno\-pic\fR" 4
1225 .IX Item "-mno-pic"
1226 .PD
1227 The \fB\-mpic\fR option causes the assembler to generate the
1228 \&\f(CW\*(C`Tag_ABI_PIC\*(C'\fR attribute with a value of 1, indicating that the
1229 code is using position-independent code addressing,  The
1230 \&\f(CW\*(C`\-mno\-pic\*(C'\fR option, the default, causes the tag to have a value of
1231 0, indicating position-dependent code addressing.  The linker will
1232 emit a warning if objects of different type (position-dependent and
1233 position-independent) are linked together.
1234 .IP "\fB\-mbig\-endian\fR" 4
1235 .IX Item "-mbig-endian"
1236 .PD 0
1237 .IP "\fB\-mlittle\-endian\fR" 4
1238 .IX Item "-mlittle-endian"
1239 .PD
1240 Generate code for the specified endianness.  The default is
1241 little-endian.
1242 .PP
1243 The following options are available when as is configured for
1244 an Xtensa processor.
1245 .IP "\fB\-\-text\-section\-literals | \-\-no\-text\-section\-literals\fR" 4
1246 .IX Item "--text-section-literals | --no-text-section-literals"
1247 With \fB\-\-text\-section\-literals\fR, literal pools are interspersed
1248 in the text section.  The default is
1249 \&\fB\-\-no\-text\-section\-literals\fR, which places literals in a
1250 separate section in the output file.  These options only affect literals
1251 referenced via PC-relative \f(CW\*(C`L32R\*(C'\fR instructions; literals for
1252 absolute mode \f(CW\*(C`L32R\*(C'\fR instructions are handled separately.
1253 .IP "\fB\-\-absolute\-literals | \-\-no\-absolute\-literals\fR" 4
1254 .IX Item "--absolute-literals | --no-absolute-literals"
1255 Indicate to the assembler whether \f(CW\*(C`L32R\*(C'\fR instructions use absolute
1256 or PC-relative addressing.  The default is to assume absolute addressing
1257 if the Xtensa processor includes the absolute \f(CW\*(C`L32R\*(C'\fR addressing
1258 option.  Otherwise, only the PC-relative \f(CW\*(C`L32R\*(C'\fR mode can be used.
1259 .IP "\fB\-\-target\-align | \-\-no\-target\-align\fR" 4
1260 .IX Item "--target-align | --no-target-align"
1261 Enable or disable automatic alignment to reduce branch penalties at the
1262 expense of some code density.  The default is \fB\-\-target\-align\fR.
1263 .IP "\fB\-\-longcalls | \-\-no\-longcalls\fR" 4
1264 .IX Item "--longcalls | --no-longcalls"
1265 Enable or disable transformation of call instructions to allow calls
1266 across a greater range of addresses.  The default is
1267 \&\fB\-\-no\-longcalls\fR.
1268 .IP "\fB\-\-transform | \-\-no\-transform\fR" 4
1269 .IX Item "--transform | --no-transform"
1270 Enable or disable all assembler transformations of Xtensa instructions.
1271 The default is \fB\-\-transform\fR;
1272 \&\fB\-\-no\-transform\fR should be used only in the rare cases when the
1273 instructions must be exactly as specified in the assembly source.
1274 .IP "\fB\-\-rename\-section\fR \fIoldname\fR\fB=\fR\fInewname\fR" 4
1275 .IX Item "--rename-section oldname=newname"
1276 When generating output sections, rename the \fIoldname\fR section to
1277 \&\fInewname\fR.
1278 .PP
1279 The following options are available when as is configured for
1280 a Z80 family processor.
1281 .IP "\fB\-z80\fR" 4
1282 .IX Item "-z80"
1283 Assemble for Z80 processor.
1284 .IP "\fB\-r800\fR" 4
1285 .IX Item "-r800"
1286 Assemble for R800 processor.
1287 .IP "\fB\-ignore\-undocumented\-instructions\fR" 4
1288 .IX Item "-ignore-undocumented-instructions"
1289 .PD 0
1290 .IP "\fB\-Wnud\fR" 4
1291 .IX Item "-Wnud"
1292 .PD
1293 Assemble undocumented Z80 instructions that also work on R800 without warning.
1294 .IP "\fB\-ignore\-unportable\-instructions\fR" 4
1295 .IX Item "-ignore-unportable-instructions"
1296 .PD 0
1297 .IP "\fB\-Wnup\fR" 4
1298 .IX Item "-Wnup"
1299 .PD
1300 Assemble all undocumented Z80 instructions without warning.
1301 .IP "\fB\-warn\-undocumented\-instructions\fR" 4
1302 .IX Item "-warn-undocumented-instructions"
1303 .PD 0
1304 .IP "\fB\-Wud\fR" 4
1305 .IX Item "-Wud"
1306 .PD
1307 Issue a warning for undocumented Z80 instructions that also work on R800.
1308 .IP "\fB\-warn\-unportable\-instructions\fR" 4
1309 .IX Item "-warn-unportable-instructions"
1310 .PD 0
1311 .IP "\fB\-Wup\fR" 4
1312 .IX Item "-Wup"
1313 .PD
1314 Issue a warning for undocumented Z80 instructions that do not work on R800.
1315 .IP "\fB\-forbid\-undocumented\-instructions\fR" 4
1316 .IX Item "-forbid-undocumented-instructions"
1317 .PD 0
1318 .IP "\fB\-Fud\fR" 4
1319 .IX Item "-Fud"
1320 .PD
1321 Treat all undocumented instructions as errors.
1322 .IP "\fB\-forbid\-unportable\-instructions\fR" 4
1323 .IX Item "-forbid-unportable-instructions"
1324 .PD 0
1325 .IP "\fB\-Fup\fR" 4
1326 .IX Item "-Fup"
1327 .PD
1328 Treat undocumented Z80 instructions that do not work on R800 as errors.
1329 .SH "SEE ALSO"
1330 .IX Header "SEE ALSO"
1331 \&\fIgcc\fR\|(1), \fIld\fR\|(1), and the Info entries for \fIbinutils\fR and \fIld\fR.
1332 .SH "COPYRIGHT"
1333 .IX Header "COPYRIGHT"
1334 Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
1335 2000, 2001, 2002, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
1336 Inc.
1337 .PP
1338 Permission is granted to copy, distribute and/or modify this document
1339 under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3
1340 or any later version published by the Free Software Foundation;
1341 with no Invariant Sections, with no Front-Cover Texts, and with no
1342 Back-Cover Texts.  A copy of the license is included in the
1343 section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".