Add --gdwarf2 support to ARM toolchain
[deliverable/binutils-gdb.git] / gas / doc / as.1
CommitLineData
252b5132
RH
1.\" Copyright (c) 1991, 1992, 1996, 1997, 1998 Free Software Foundation
2.\" See section COPYING for conditions for redistribution
3.TH as 1 "29 March 1996" "cygnus support" "GNU Development Tools"
4
5.SH NAME
6GNU as \- the portable GNU assembler.
7
8.SH SYNOPSIS
9.na
10.B as
11.RB "[\|" \-a "[\|" dhlns "\|]" \c
d9b7d820 12\&[\|\=\c
252b5132
RH
13.I file\c
14\&\|]\|]
15.RB "[\|" \-D "\|]"
16.RB "[\|" \-\-defsym\ SYM=VAL "\|]"
17.RB "[\|" \-f "\|]"
18.RB "[\|" \-\-gstabs "\|]"
19.RB "[\|" \-I
20.I path\c
21\&\|]
22.RB "[\|" \-K "\|]"
23.RB "[\|" \-L "\|]"
24.RB "[\|" \-M\ |\ \-\-mri "\|]"
25.RB "[\|" \-o
26.I objfile\c
27\&\|]
28.RB "[\|" \-R "\|]"
29.RB "[\|" \-\-traditional\-format "\|]"
30.RB "[\|" \-v "\|]"
31.RB "[\|" \-w "\|]"
32.RB "[\|" \-\^\- "\ |\ " \c
33.I files\c
34\&\|.\|.\|.\|]
35
36.I i960-only options:
37.br
38.RB "[\|" \-ACA "\||\|" \-ACA_A "\||\|" \-ACB\c
39.RB "\||\|" \-ACC "\||\|" \-AKA "\||\|" \-AKB\c
40.RB "\||\|" \-AKC "\||\|" \-AMC "\|]"
41.RB "[\|" \-b "\|]"
42.RB "[\|" \-no-relax "\|]"
43
44.I m680x0-only options:
45.br
46.RB "[\|" \-l "\|]"
47.RB "[\|" \-mc68000 "\||\|" \-mc68010 "\||\|" \-mc68020 "\|]"
48.ad b
49
50.SH DESCRIPTION
51GNU \c
52.B as\c
53\& is really a family of assemblers.
54If you use (or have used) the GNU assembler on one architecture, you
55should find a fairly similar environment when you use it on another
56architecture. Each version has much in common with the others,
57including object file formats, most assembler directives (often called
58\c
59.I pseudo-ops)\c
60\& and assembler syntax.
61
62For information on the syntax and pseudo-ops used by GNU \c
63.B as\c
64\&, see `\|\c
65.B as\c
66\|' entry in \c
67.B info \c
68(or the manual \c
69.I
70.I
71Using as: The GNU Assembler\c
72\&).
73
74\c
75.B as\c
76\& is primarily intended to assemble the output of the GNU C
77compiler \c
78.B gcc\c
79\& for use by the linker \c
80.B ld\c
81\&. Nevertheless,
82we've tried to make \c
83.B as\c
84\& assemble correctly everything that the native
85assembler would.
86This doesn't mean \c
87.B as\c
88\& always uses the same syntax as another
89assembler for the same architecture; for example, we know of several
90incompatible versions of 680x0 assembly language syntax.
91
92Each time you run \c
93.B as\c
94\& it assembles exactly one source
95program. The source program is made up of one or more files.
96(The standard input is also a file.)
97
98If \c
99.B as\c
100\& is given no file names it attempts to read one input file
101from the \c
102.B as\c
103\& standard input, which is normally your terminal. You
104may have to type \c
105.B ctl-D\c
106\& to tell \c
107.B as\c
108\& there is no more program
109to assemble. Use `\|\c
110.B \-\^\-\c
111\|' if you need to explicitly name the standard input file
112in your command line.
113
114.B as\c
115\& may write warnings and error messages to the standard error
116file (usually your terminal). This should not happen when \c
117.B as\c
118\& is
119run automatically by a compiler. Warnings report an assumption made so
120that \c
121.B as\c
122\& could keep assembling a flawed program; errors report a
123grave problem that stops the assembly.
124
125.SH OPTIONS
126.TP
127.BR \-a
128Turn on assembly listings. There are various suboptions.
129.B d
130omits debugging directives.
131.B h
132includes the high level source code; this is only available if the
133source file can be found, and the code was compiled with
134.B \-g.
135.B l
136includes an assembly listing.
137.B n
138omits forms processing.
139.B s
140includes a symbol listing.
141.B =
142.I file
143sets the listing file name; this must be the last suboption.
144The default suboptions are
145.B hls.
146.TP
147.B \-D
148This option is accepted only for script compatibility with calls to
149other assemblers; it has no effect on \c
150.B as\c
151\&.
152.TP
153.B \-\-defsym SYM=VALUE
154Define the symbol SYM to be VALUE before assembling the input file.
155VALUE must be an integer constant. As in C, a leading 0x indicates a
156hexadecimal value, and a leading 0 indicates an octal value.
157.TP
158.B \-f
159``fast''--skip preprocessing (assume source is compiler output).
160.TP
161.BI "\-I\ " path
162Add
163.I path
164to the search list for
165.B .include
166directives.
167.TP
168.B \-\-gstabs
169Generate stabs debugging information for each assembler line. This
170may help debugging assembler code, if the debugger can handle it.
171.TP
172.B \-K
173Issue warnings when difference tables altered for long displacements.
174.TP
175.B \-L
176Keep (in symbol table) local symbols, starting with `\|\c
177.B L\c
178\|'
179.TP
180.B \-M, \-\-mri
181Assemble in MRI compatibility mode.
182.TP
183.BI "\-o\ " objfile
184Name the object-file output from \c
185.B as
186.TP
187.B \-R
188Fold data section into text section
189.TP
190.B \-\-traditional\-format
191Use same format as native assembler, when possible.
192.TP
193.B \-v
194Announce \c
195.B as\c
196\& version
197.TP
2bdd6cf5
GK
198.B \-W, \-\-no-warn
199Suppress warning messages.
200.TP
201.B \-\-fatal\-warnings
202Consider warnings to be fatal.
203.TP
204.B \-\-warn
205Just warn on warnings.
252b5132
RH
206.TP
207.IR "\-\^\-" "\ |\ " "files\|.\|.\|."
208Source files to assemble, or standard input (\c
209.BR "\-\^\-" ")"
210.TP
211.BI \-A var
212.I
213(When configured for Intel 960.)
214Specify which variant of the 960 architecture is the target.
215.TP
216.B \-b
217.I
218(When configured for Intel 960.)
219Add code to collect statistics about branches taken.
220.TP
221.B \-no-relax
222.I
223(When configured for Intel 960.)
224Do not alter compare-and-branch instructions for long displacements;
225error if necessary.
226.TP
227.B \-l
228.I
229(When configured for Motorola 68000).
230.br
231Shorten references to undefined symbols, to one word instead of two.
232.TP
233.BR "\-mc68000" "\||\|" "\-mc68010" "\||\|" "\-mc68020"
234.I
235(When configured for Motorola 68000).
236.br
237Specify what processor in the 68000 family is the target (default 68020)
238
239.PP
240Options may be in any order, and may be
241before, after, or between file names. The order of file names is
242significant.
243
244`\|\c
245.B \-\^\-\c
246\|' (two hyphens) by itself names the standard input file
247explicitly, as one of the files for \c
248.B as\c
249\& to assemble.
250
251Except for `\|\c
252.B \-\^\-\c
253\|' any command line argument that begins with a
254hyphen (`\|\c
255.B \-\c
256\|') is an option. Each option changes the behavior of
257\c
258.B as\c
259\&. No option changes the way another option works. An
260option is a `\|\c
261.B \-\c
262\|' followed by one or more letters; the case of
263the letter is important. All options are optional.
264
265The `\|\c
266.B \-o\c
267\|' option expects exactly one file name to follow. The file
268name may either immediately follow the option's letter (compatible
269with older assemblers) or it may be the next command argument (GNU
270standard).
271
272These two command lines are equivalent:
273.br
274.B
275as\ \ \-o\ \ my\-object\-file.o\ \ mumble.s
276.br
277.B
278as\ \ \-omy\-object\-file.o\ \ mumble.s
279
280.SH "SEE ALSO"
281.RB "`\|" as "\|'"
282entry in
283.B
284info\c
285\&;
286.I
287Using as: The GNU Assembler\c
288\&;
289.BR gcc "(" 1 "),"
290.BR ld "(" 1 ")."
291
292.SH COPYING
293Copyright (c) 1991, 1992 Free Software Foundation, Inc.
294.PP
295Permission is granted to make and distribute verbatim copies of
296this manual provided the copyright notice and this permission notice
297are preserved on all copies.
298.PP
299Permission is granted to copy and distribute modified versions of this
300manual under the conditions for verbatim copying, provided that the
301entire resulting derived work is distributed under the terms of a
302permission notice identical to this one.
303.PP
304Permission is granted to copy and distribute translations of this
305manual into another language, under the above conditions for modified
306versions, except that this permission notice may be included in
307translations approved by the Free Software Foundation instead of in
308the original English.
This page took 0.0655480000000001 seconds and 4 git commands to generate.