9.3.1 Options

The following options control the type of CPU for which code is assembled, and generic constraints on the code generated:

-mcpu= cpu
Set architecture type and register usage for cpu . There are also shortcut alias options available for backward compatibility and convenience. Supported values for cpu are
arc600
Assemble for ARC 600. Aliases: -mA6 , -mARC600 .
arc600_norm
Assemble for ARC 600 with norm instructions.
arc600_mul64
Assemble for ARC 600 with mul64 instructions.
arc600_mul32x16
Assemble for ARC 600 with mul32x16 instructions.
arc601
Assemble for ARC 601. Alias: -mARC601 .
arc601_norm
Assemble for ARC 601 with norm instructions.
arc601_mul64
Assemble for ARC 601 with mul64 instructions.
arc601_mul32x16
Assemble for ARC 601 with mul32x16 instructions.
arc700
Assemble for ARC 700. Aliases: -mA7 , -mARC700 .
arcem
Assemble for ARC EM. Aliases: -mEM
em
Assemble for ARC EM, identical as arcem variant.
em4
Assemble for ARC EM with code-density instructions.
em4_dmips
Assemble for ARC EM with code-density instructions.
em4_fpus
Assemble for ARC EM with code-density instructions.
em4_fpuda
Assemble for ARC EM with code-density, and double-precision assist instructions.
quarkse_em
Assemble for QuarkSE-EM cpu.
archs
Assemble for ARC HS. Aliases: -mHS , -mav2hs .
hs
Assemble for ARC HS.
hs34
Assemble for ARC HS34.
hs38
Assemble for ARC HS38.
hs38_linux
Assemble for ARC HS38 with floating point support on.
nps400
Assemble for ARC 700 with NPS-400 extended instructions.

Note: the .cpu directive (see ARC Directives ) can to be used to select a core variant from within assembly code.


-EB
This option specifies that the output generated by the assembler should be marked as being encoded for a big-endian processor.


-EL
This option specifies that the output generated by the assembler should be marked as being encoded for a little-endian processor - this is the default.


-mcode-density
This option turns on Code Density instructions. Only valid for ARC EM processors.


-mrelax
Enable support for assembly-time relaxation. The assembler will replace a longer version of an instruction with a shorter one, whenever it is possible.


-mnps400
Enable support for NPS-400 extended instructions.


-mspfp
Enable support for single-precision floating point instructions.


-mdpfp
Enable support for double-precision floating point instructions.


-mfpuda
Enable support for double-precision assist floating point instructions. Only valid for ARC EM processors.