8.13.1 Options
The i386 version of as has a few machine
dependent options:
--32 | --64- Select the word size, either 32 bits or 64 bits. Selecting 32-bit
implies Intel i386 architecture, while 64-bit implies AMD x86-64
architecture.
These options are only available with the ELF object file format, and
require that the necessary BFD support has been included (on a 32-bit
platform you have to add –enable-64-bit-bfd to configure enable 64-bit
usage and use x86-64 as target platform).
-n- By default, x86 GAS replaces multiple nop instructions used for
alignment within code sections with multi-byte nop instructions such
as leal 0(%esi,1),%esi. This switch disables the optimization.
--divide- On SVR4-derived platforms, the character `/' is treated as a comment
character, which means that it cannot be used in expressions. The
`--divide' option turns `/' into a normal character. This does
not disable `/' at the beginning of a line starting a comment, or
affect using `#' for starting a comment.
-march=CPU- This option specifies an instruction set architecture for generating
instructions. The following architectures are recognized:
i8086,
i186,
i286,
i386,
i486,
i586,
i686,
pentium,
pentiumpro,
pentiumii,
pentiumiii,
pentium4,
prescott,
nocona,
core,
core2,
k6,
k6_2,
athlon,
sledgehammer,
opteron,
k8,
generic32 and
generic64.
This option only affects instructions generated by the assembler. The
.arch directive will take precedent.
-mtune=CPU- This option specifies a processor to optimize for. When used in
conjunction with the -march option, only instructions
of the processor specified by the -march option will be
generated.
Valid CPU values are identical to -march=CPU.