Datasheet
C and C++ Compilers
ARM DUI 0067D Copyright © 1999-2001 ARM Limited. All rights reserved. 2-21
Valid options are:
none
Selects no floating-point option. No floating-point code is to
be used.
vfp
Selects hardware vector floating-point unit conforming to
architecture VFPv1. This is a synonym for
-fpu vfpv1
. This
option is not available for the Thumb compilers.
vfpv1
Selects hardware vector floating-point unit conforming to
architecture VFPv1, such as the VFP10 rev 0. This option is
not available for the Thumb compilers.
vfpv2
Selects hardware vector floating-point unit conforming to
architecture VFPv2, such as the VFP10 rev 1. This option is
not available for the Thumb compilers.
fpa
Selects hardware Floating Point Accelerator (FPA). This
option is not available for the Thumb compilers and is only
provided for backwards compatibility.
softvfp+vfp
Selects a floating-point library with pure-endian doubles and
software floating-point linkage that uses the VFP hardware.
Select this option if you are interworking Thumb code with
ARM code on a system that implements a VFP unit.
If you select this option:
• tcc and tcpp behave exactly as for
-fpu softvfp
except
that they link with VFP-optimized floating-point
libraries.
• armcc and armcpp behave the same as for
-fpu vfp
except that all functions are given software
floating-point linkage. This means that ARM functions
compiled with this option pass and return floating-point
arguments and results as they would for
-fpu softvfp
,
but use VFP instructions internally.
Note
If you specify this option for both armcc and tcc, it ensures that
your interworking floating-point code is compiled to use
software floating-point linkage. If you specify
vfp
,
vfpv1
, or
vfpv2
for armcc you must use the
__softfp
keyword to ensure
that your interworking ARM code is compiled to use software
floating-point linkage. See the description of
__softfp
in
Function keywords on page 3-6 for more information.