#### 9.1.1 Options

`-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.

`-mabi=abi`

  Specify which ABI the source code uses. The recognized arguments are: `ilp32` and `lp64`, which decides the generated object file in ELF32 and ELF64 format respectively. The default is `lp64`.

`-mcpu=processor[+extension…]`

  This option specifies the target processor. The assembler will issue an error message if an attempt is made to assemble an instruction which will not execute on the target processor. The following processor names are recognized: `cortex-a34`, `cortex-a35`, `cortex-a53`, `cortex-a55`, `cortex-a57`, `cortex-a65`, `cortex-a65ae`, `cortex-a72`, `cortex-a73`, `cortex-a75`, `cortex-a76`, `cortex-a76ae`, `cortex-a77`, `ares`, `exynos-m1`, `falkor`, `neoverse-n1`, `neoverse-e1`, `qdf24xx`, `saphira`, `thunderx`, `vulcan`, `xgene1` and `xgene2`. The special name `all` may be used to allow the assembler to accept instructions valid for any supported processor, including all optional extensions.

  In addition to the basic instruction set, the assembler can be told to accept, or restrict, various extension mnemonics that extend the processor. See AArch64 Extensions.

  If some implementations of a particular processor can have an extension, then then those extensions are automatically enabled. Consequently, you will not normally have to specify any additional extensions.

`-march=architecture[+extension…]`

  This option specifies the target architecture. The assembler will issue an error message if an attempt is made to assemble an instruction which will not execute on the target architecture. The following architecture names are recognized: `armv8-a`, `armv8.1-a`, `armv8.2-a`, `armv8.3-a`, `armv8.4-a` `armv8.5-a`, and `armv8.6-a`.

  If both `-mcpu` and `-march` are specified, the assembler will use the setting for `-mcpu`. If neither are specified, the assembler will default to `-mcpu=all`.

  The architecture option can be extended with the same instruction set extension options as the `-mcpu` option. Unlike `-mcpu`, extensions are not always enabled by default, See AArch64 Extensions.

`-mverbose-error`

  This option enables verbose error messages for AArch64 gas. This option is enabled by default.

`-mno-verbose-error`

  This option disables verbose error messages in AArch64 gas.