You copied the Doc URL to your clipboard.

-mfpu

Specifies the target FPU architecture, that is the floating-point hardware available on the target.

Syntax

-mfpu=name

Where name is one of the following:

vfpv3
Enable the ARMv7 VFPv3 floating-point extension. Disable the Advanced SIMD extension.
neon-vfpv3
Enable the ARMv7 VFPv3 floating-point extension and the Advanced SIMD extension.
vfpv4
Enable the ARMv7 VFPv4 floating-point extension. Disable the Advanced SIMD extension.
neon-vfpv4
Enable the ARMv7 VFPv4 floating-point extension and the Advanced SIMD extension.
fp-armv8
Enable the ARMv8 floating-point extension. Disable the cryptographic extension and the Advanced SIMD extension.
neon-fp-armv8
Enable the ARMv8 floating-point extension and the Advanced SIMD extensions. Disable the cryptographic extension.
crypto-neon-fp-armv8
Enable the ARMv8 floating-point extension, the cryptographic extension. and the Advanced SIMD extension.

The -mfpu option overrides the default FPU option implied by the target architecture.

Note

  • The -mfpu option is ignored with AArch64 targets, for example aarch64-arm-none-eabi. Use the -mcpu option to override the default FPU for aarch64-arm-none-eabi targets. For example, to prevent the use of floating-point instructions or floating-point registers for the aarch64-arm-none-eabi target use the -mcpu=name+nofp+nosimd option. Subsequent use of floating-point data types in this mode is unsupported.
  • The -mfpu option is also ignored if -mfloat-abi=soft, which is the default for arm-arm-none-eabi.
  • In ARMv7, the Advanced SIMD extension was called the NEON Advanced SIMD extension.

Default

The default FPU option depends on the target architecture.

Related reference

Was this page helpful? Yes No