as(1)as(1)NAMEas - assembler
SYNOPSISas [option]... file
OPTIONS
Options described in this section are divided into the following cate‐
gories. Options Common to as and cc (see cc(1) for complete informa‐
tion) Options Specific to as Assembler Development Options (not gener‐
ally used)
Options Common to as and cc
Produce no symbol table information for symbolic debugging. This is the
default. Produce additional symbol table information for accurate but
limited symbolic debugging of partially optimized code. Produce addi‐
tional symbol table information for full symbolic debugging and not do
optimizations that limit full symbolic debugging. Turns gprof profil‐
ing on or off when assembling and linking the file immediately follow‐
ing this option. The gprof profiler produces a call graph showing the
execution of a C program.
When this option is turned on, the standard run-time startup
routine is replaced by the gcrt0.o routine. Programs that are
linked with the -pg option and then run will produce, in file
gmon.out, a dynamic call graph and profile. You then run gprof
on the gmon.out file to display the output. When you use the
-pg option together with either the -pthread option or the
-threads option, the profiling library libprof1_r.a is used.
For more information, see the gprof(1) reference page. Produce
a compressed object as output. Performs no optimization. Runs
the instruction scheduler. Controls the display of messages as
well as the actions that occur as a result of the messages. The
value of n can be one of the following: Displays assembler mes‐
sages for less important issues. Suppresses warning and infor‐
mational messages and displays error and fatal messages. This is
equivalent to specifying -w. If the assembler encounters an
error that generates a warning-level diagnostic message, the
assembler displays the message and then aborts. Does not print
warning messages. However, when warnings occur, exits with
nonzero status. Run only the C macro preprocessor and put the
result in a file with the suffix of the source file changed to
or if the file has no suffix then a i is added to the source
file name. The file has no # lines in it. This sets the -cpp
option. Run only the C macro preprocessor on the file and send
the result to the standard output. This sets the -cpp option.
These three options are passed directly to cpp(1). See cpp(1)
for details. Set the default exception handling runtime proce‐
dure descriptor flags (see <pdsc.h>) to the number specified.
If you provide a directive in a procedure in your source code,
the -eflag option is ignored for that procedure. Name the final
output file output. If this option is used, the file a.out is
undisturbed. “-Dname” Define the name to the C macro preproces‐
sor, as if by #define. If no definition is given, the name is
defined as “1”. Remove any initial definition of name. The
#include files whose names do not begin with `/' are always
sought first in the directory of the file argument, then in
directories specified in -I options, and finally in the standard
directory (/usr/include). This option will cause #include files
never to be searched for in the standard directory
(/usr/include). Print the passes as they execute with their
arguments and their input and output files. Print the version
of the driver and the versions of all passes. This is done with
the what(1) command. Determines whether to run the C macro pre‐
processor on assembly source files before assembling. The
default is -cpp. Specifies which version of the Alpha architec‐
ture to generate instructions for. All Alpha processors imple‐
ment a core set of instructions and, in some cases, the follow‐
ing extensions: BWX (byte/word-manipulation extension), MVI
(multimedia extension), FIX (square root and floating-point con‐
vert extension), and CIX (count extension). (The Alpha Architec‐
ture Reference Manual describes the extensions in detail.)
The option argument can be one of the following, which deter‐
mines the instructions that the assembler can generate (for
details, see cc(1)): Generate instructions that are appropriate
for all Alpha processors. This option is the default. Generate
instructions for the processor that the assembler is running on
(for example, EV6 instructions on an EV6 processor). Instructs
the optimizer to tune the application for a specific version of
the Alpha hardware. This will not prevent the application from
running correctly on other versions of Alpha but it may run more
slowly than generically-tuned code on those versions.
The option argument can be one of the following, which selects
instruction tuning appropriate for the listed processor(s) (for
details, see cc(1)): Tune instructions for all Alpha processors.
This is the default. Tune instructions for the processor on
which the code is assembeled.
See also the -arch option in cc(1) for an explanation of the
differences between -tune and -arch.
Options Specific to as
When specified with optimization (the default, unless -O0 is speci‐
fied), the register manager will not attempt to perform any register
optimizations involving float or integer constants. When specified
with optimization (the default, unless -O0 is specified), stops all
register manager optimizations from being performed by the assembler.
Assembler Development Options
The options described below primarily aid assembler development and are
not generally used: Pass the argument[s] argi to the assembler pass[es]
c[c..]. The c can be one of [ pab]. The c selects the assembler pass in
the same way as the -t option.
The options -t[ hpa], -h path, and -Bstring select a name to use for a
particular pass. These arguments are processed from left to right so
their order is significant. When the -B option is encountered, the
selection of names takes place using the last -h and -t options. There‐
fore, the -B option is always required when using -h or -t. Sets of
these options can be used to select any combination of names. Select
the names. The names selected are those designated by the characters
following the -t option according to the following table:
───────────────────────────────────────
Name Character
───────────────────────────────────────
include h (see note following table)
cpp p
adu a
───────────────────────────────────────
If the character `h' is in the -t argument, a directory is added
to the list of directories to be used in searching for #include
files. This directory name has the form COMP_TAR‐
GET_ROOT/usr/include/string. This directory is to contain the
include files for the string release of the assembler. The stan‐
dard directory is still searched.
For compatibility, -tb is equivalent to -ta Use path rather than
the directory where the name is normally found. Append string
to all names specified by the -t option. If no -t option has
been processed before the -B, the -t option is assumed to be
“hpab”. This list designates all names.
Invoking the assembler with a name of the form asstring has the same
effect as using a -Bstring option on the command line.
If the environment variable COMP_HOST_ROOT is set, the value is used as
the root directory for all paths to the pass names other than the
default root directory ( /). If the environment variable COMP_TAR‐
GET_ROOT is set, the value is used as the root directory for the
#include files other than the default root directory (/).
If the environment variable ROOTDIR is set, the value is used as the
root directory for all names rather than the default /usr/. This also
affects the standard directory for #include files, /usr/include.
If the environment variable TMPDIR is set, the value is used as the
directory to place any temporary files rather than the default /tmp/.
Other arguments are ignored.
DESCRIPTION
The assembler, as, produces object code files in extended coff format.
The as command never runs the link editor (ld(1)). The as command
accepts one type of argument.
The argument file is assumed to be a symbolic assembly language source
program. It is assembled, producing an object file.
The assembler always defines the C preprocessor macros unix, and LAN‐
GUAGE_ASSEMBLY to the C macro preprocessor. To see a list of prede‐
fined macros, use the -v option.
ERRORS
The diagnostics produced by the assembler are intended to be self-
explanatory.
FILES
object file assembler output temporary C macro preprocessor assembly
source file to extended COFF object file translator standard directory
for #include files
SEE ALSO
Commands: cc(1), what(1)
Programmer's Guide, Assembly Language Programmer's Guide
as(1)