|Home > armasm Command-line Options > --apcs=qualifier...qualifier|
Controls interworking and position independence when generating code.
denotes a list of qualifiers. There must be:
Each instance of
must be one of:
Specifies that the input file does not use AAPCS. AAPCS registers are not set up.
Other qualifiers are not permitted if you use
/interwork specifies that the
code in the input file can interwork between A32 and T32 safely.
that the code in the input file can interwork between A32 and T32 safely.
The default is
/nointerwork is not supported for AArch64
Are synonyms for
/inter is not supported for AArch64 state.
/ropispecifies that the code in the input file is Read-Only Position-Independent (ROPI). The default is
/rwpispecifies that the code in the input file is Read-Write Position-Independent (RWPI). The default is
/fpicspecifies that the code in the input file is read-only independent and references to addresses are suitable for use in a Linux shared object. The default is
Requests hardware or software floating-point linkage. This enables the procedure call
standard to be specified separately from the version of the floating-point hardware
available through the
--fpu option. It is
still possible to specify the procedure call standard by using the
--fpu option, but Arm recommends you use
--apcs. If floating-point support is not
permitted (for example, because
--fpu=none is specified, or because of other means), then
are ignored. If floating-point support is permitted and the softfp calling convention is used (
/hardfp gives an error.
/softfp is not supported for AArch64 state.
This option specifies whether you are using the Procedure Call Standard for the Arm® Architecture (AAPCS). It can also specify some attributes of code sections.
The AAPCS forms part of the Base Standard Application Binary Interface for the Arm® Architecture (BSABI) specification. By writing code that adheres to the AAPCS, you can ensure that separately compiled and assembled modules can work together.
armasm --cpu=8-A.32 --apcs=