7.2 Assembler Command Line Options
–Dname -Dname=def
When the –P option is in effect, these options are passed to the
cpp preprocessor without interpretation by the
as command; otherwise, they are ignored.
–hwcap={1|0}
Enable (–hwcap=1) or suppress (–hwcap=0) the generation of the
Hardware Capabilities section. Default is to generate the section.
–I
path
When the –P option is in effect, this option is passed to
the cpp preprocessor without interpretation by the
as command; otherwise, it is ignored.
–i
Ignore line number information from the preprocessor.
–L
Saves all symbols, including temporary labels
that are normally discarded to save space, in the ELF symbol table.
–m
This option runs m4 macro preprocessing on input. The m4
preprocessor is more useful for complex preprocessing than the C
preprocessor invoked by the –P option. See the
m4(1) man page for more information about the
m4 macro-processor.
-m64|-m32
Select the 64-bit (–m64) or 32-bit (–m32) memory model. With
–m64, the resulting .o object files
are in 64-bit ELF format and can only be linked with other object files in
the same format. The resulting executable can only be run on a 64-bit SPARC
processor running 64-bit Oracle Solaris. –m32 is the default.
–n
Suppress all warnings while assembling.
-o outfile
Write the output of the assembler to outfile. By default, if
–o is not specified, the output file name is the same as
the input file name with .s replaced with
.o.
–P
Run
cpp(1),
the C preprocessor, on the files being assembled. The preprocessor is run
separately on each input file, not on their concatenation. The preprocessor
output is passed to the assembler.
–Q{y|n}
This option produces the "assembler version" information in the comment section of the output
object file if the y option is specified; if the
–n option is specified, the information is suppressed.
–S[a|b|c|l|A|B|C|L]
Produces a disassembly of the emitted code to the standard output. Adding each of the
following characters to the –S option produces:
a – Disassembling with address
b – Disassembling with ".bof"
c – Disassembling with comments
l – Disassembling with line numbers
Capital letters turn the switch off for the corresponding option.
–s
This option places all stabs in the ".stabs" section. By default, stabs are
placed in "stabs.excl" sections, which are stripped out
by the static linker ld during final execution. When the
–s option is used, stabs remain in the final
executable because ".stab" sections are not stripped out by the static
linker ld.
–Uname
When the –P option is in effect, this option is passed to
the cpp preprocessor without interpretation by the
as command; otherwise, it is ignored.
–ul
By default, undefined symbols are marked as global.
With –ul, they are marked as
local.
–V
This option writes the version information on
the standard error output.
–xarch=isa
isa specifies the
target architecture instruction set (ISA). This option limits the instructions
accepted by the assembler to the instructions of the specified instruction
set architecture. The assembler will issue an error when encountering
an instruction that is not part of the specified isa.
Use the –m64 or –m32 option to specify the
intended memory model, 64-bit or 32-bit respectively. The
–xarch flag no longer indicates the memory model.
Note: The assembler and linker will mark .o files and executables that
require a particular instruction set architecture (ISA) so that the
executable will not be loaded at runtime if the running system does not
support that particular ISA. If you compile and link in separate steps, make
sure to specify the same isa value for
–xarch in both steps.
|
|
generic
|
Equivalent to –xarch=sparc
|
sparc
|
Limit the instruction set to SPARC V9 without the VIS
(Visual Instruction Set) and without other
implementation-specific extensions.
|
sparcvis
|
Limit the instruction set to SPARC V9 plus the VIS
version 1.0 and the UltraSPARC extensions.
|
sparcvis2
|
Limit the instruction set to the SPARCVIS2 version of
the SPARC V9 and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
2.0
-
UltraSPARC III extensions
|
sparcvis3
|
Limit the instruction set to the SPARCVIS3 version of
SPARC V9 and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
3.0
-
UltraSPARC III extensions
-
Fused multiply-add instructions
|
sparcfmaf
|
Limit the instruction set to the SPARCFMAF version of
SPARC V9 and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
2.0
-
UltraSPARC III extensions
-
SPARC64 VI extensions for floating-point
multiply-add
|
sparcima
|
Limit the instruction set to the SPARC IMA version of
SPARC V9 and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
2.0
-
UltraSPARC III extensions
-
SPARC64 VI extension for floating-point
multiply add
-
SPARC64 VII instruction for integer
multiply-add
|
sparc4
|
Limit the instruction set to the SPARC4 version of
SPARC V9 and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
3.0
-
UltraSPARC III extensions
-
SPARC64 VI extensions for fused floating point
multiply-add
-
SPARC64 VII instructions for integer
multiply-add
-
SPARC4
|
sparc4b
|
Limit the instruction set to the SPARC4B version of
the SPARC V9 ISA and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
1.0
-
Visual Instruction Set (VIS) version
2.0
-
SPARC64 VI extensions for floating-point
multiply-add
-
SPARC64 VII extensions for integer
multiply-add
-
SPARC T4 extensions, including the PAUSE and
CBCOND instructions
|
sparc4c
|
Limit the instruction set to the SPARC4C version of
the SPARC V9 ISA and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
1.0
-
Visual Instruction Set (VIS) version
2.0
-
SPARC64 VI extensions for floating-point
multiply-add
-
SPARC64 VII extensions for integer
multiply-add
-
SPARC T3 extensions, including VIS3B subset of
the Visual Instruction Set (VIS) version
3.0
|
sparc5
|
Limit the instruction set to the SPARC5 version of the
SPARC V9 ISA and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
1.0
-
Visual Instruction Set (VIS) version
2.0
-
Visual Instructions Set (VIS) version
3.0
-
UltraSPARC III extensions
-
Fused floating-point multiply-add
-
SPARC4
-
SPARC5
|
sparcace
|
Limit the instruction set to the SPARCACE version of
the SPARC V9 ISA and includes the following instruction
sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
1.0
-
Visual Instruction Set (VIS) version
2.0
-
UltraSPARC III extensions
-
SPARC64 VI extensions for floating-point
multiply-add
-
SPARC64 VII extensions for integer
multiply-add, and SPARCACE instructions
|
sparcaceplus
|
Limit the instruction set to the SPARCACEPLUS version
of the SPARC V9 ISA and includes the following
instruction sets
-
SPARC V9 with UltraSPARC extensions
-
Visual Instruction Set (VIS) version
1.0
-
Visual Instruction Set (VIS) version
2.0
-
SPARC64 VI extensions for floating-point
multiply-add
-
SPARC64 VII extensions for integer
multiply-add, SPARCACE, and SPARCACEPLUS
instructions
|
v9
|
Equivalent to –m64
-xarch=sparc.
|
v9a
|
Equivalent to –m64 -xarch=sparcvis
|
v9b
|
Equivalent to –m64 -xarch=sparcvis2
|
|
–xF
Generates additional information for use by the
Oracle Developer Studio performance analyzer. If the input file does not contain
any debugging directives, the assembler will generate default stabs needed
by the analyzer. See also the dbx(1) man page.
–Y{c|m},path
Specify the path to locate the version of cpp
(–Yc,path) or
m4
(–Ym,path) to use.