4.52 Processors and their implicit Floating-Point Units (FPUs)

Not every ARM processor has an FPU, but every one has an implicit --fpu option.

The following table lists the implicit --fpu option for each processor --cpu option.

Table 4-15 Implicit FPUs of processors

Processor name FPU name
ARM processors designed by ARM Limited
ARM7EJ-S SoftVFP
ARM7TDM SoftVFP
ARM7TDMI SoftVFP
ARM7TDMI-S SoftVFP
ARM7TM SoftVFP
ARM7TM-S SoftVFP
ARM710T SoftVFP
ARM720T SoftVFP
ARM740T SoftVFP
ARM810 SoftVFP
ARM9E-S SoftVFP
ARM9EJ-S SoftVFP
ARM9TDMI SoftVFP
ARM920T SoftVFP
ARM922T SoftVFP
ARM926EJ-S SoftVFP
ARM940T SoftVFP
ARM946E-S SoftVFP
ARM966E-S SoftVFP
ARM968E-S SoftVFP
ARM1020E SoftVFP
ARM1022E SoftVFP
ARM1026EJ-S SoftVFP
ARM1136J-S SoftVFP
ARM1136J-S-rev1 SoftVFP
ARM1136JF-S VFPv2
ARM1136JF-S-rev1 VFPv2
ARM1156T2-S SoftVFP
ARM1156T2F-S VFPv2
ARM1176JZ-S SoftVFP
ARM1176JZF-S VFPv2
Cortex-A5 SoftVFP
Cortex-A5.vfp VFPv4_D16
Cortex-A5.neon VFPv4
Cortex-A7 VFPv4
Cortex-A7.no_neon VFPv4_D16
Cortex-A7.no_neon.no_vfp SoftVFP
Cortex-A8 VFPv3
Cortex-A8.no_neon SoftVFP
Cortex-A8NoNeon SoftVFP
Cortex-A9 VFPv3_FP16
Cortex-A9.no_neon VFPv3_D16_FP16
Cortex-A9.no_neon.no_vfp SoftVFP
Cortex-A12 VFPv4
Cortex-A12.no_neon.no_vfp SoftVFP
Cortex-A15 VFPv4
Cortex-A15.no_neon VFPv4_D16
Cortex-A15.no_neon.no_vfp SoftVFP
Cortex-M0 SoftVFP
Cortex-M0plus SoftVFP
Cortex-M1 SoftVFP
Cortex-M1.os_extension SoftVFP
Cortex-M1.no_os_extension SoftVFP
Cortex-M3 SoftVFP
Cortex-M3-rev0 SoftVFP
Cortex-M4 SoftVFP
Cortex-M4.fp FPv4-SP
Cortex-R4 SoftVFP
Cortex-R4F VFPv3_D16
Cortex-R5 SoftVFP
Cortex-R5-rev1 SoftVFP
Cortex-R5F VFPv3_D16
Cortex-R5F-rev1 VFPv3_D16
Cortex-R5F-rev1.sp VFPv3_SP_D16
Cortex-R7 VFPv3_D16_FP16
Cortex-R7.no_vfp SoftVFP
MPCore VFPv2
MPCore.no_vfp SoftVFP
MPCoreNoVFP SoftVFP
SC000 SoftVFP
SC300 SoftVFP
ARM processors designed by ARM licensees
88FR101 SoftVFP
88FR101.hw_divide SoftVFP
88FR111 SoftVFP
88FR111.no_hw_divide SoftVFP
88FR121 SoftVFP
88FR121.hw_divide SoftVFP
88FR131 SoftVFP
88FR131.hw_divide SoftVFP
88FR301 SoftVFP
88FR301.hw_divide SoftVFP
88FR321 SoftVFP
88FR321.hw_divide SoftVFP
88FR331 SoftVFP
88FR331.hw_divide SoftVFP
PJ4 VFPv3_D16
PJ4.no_vfp SoftVFP
SA-110 SoftVFP
SA-1100 SoftVFP

Note

You can:
  • Specify a different FPU with --fpu.
  • Specify the floating-point linkage, independently of the FPU architecture, with --apcs.
  • Display the complete expanded command line, including the FPU, with --echo.
Related concepts
4.40 Compiler support for floating-point arithmetic
4.41 Default selection of hardware or software floating-point support
4.42 Example of hardware and software support differences for floating-point arithmetic
4.43 Vector Floating-Point (VFP) architectures
4.44 Limitations on hardware handling of floating-point arithmetic
4.45 Implementation of Vector Floating-Point (VFP) support code
4.46 Compiler and library support for half-precision floating-point numbers
4.47 Half-precision floating-point number format
4.48 Compiler support for floating-point computations and linkage
4.49 Types of floating-point linkage
4.50 Compiler options for floating-point linkage and computations
Related reference
4.51 Floating-point linkage and computational requirements of compiler options
7.6 --apcs=qualifier...qualifier
7.52 --echo
7.67 --fpu=name compiler option
Non-ConfidentialPDF file icon PDF versionARM DUI0375E
Copyright © 2007, 2008, 2011, 2012, 2014 ARM. All rights reserved.