4.6.4. Floating-point linkage
The --fpu option sets the type of floating-point linkage. In particular, each of the options --fpu softvfp, --fpu softvfp+vfpv2, and --fpu softvfp+vfpv3 selects software floating-point linkage.
When software floating-point linkage is used, either:
the calling function and the called function must be compiled using one of the options --softvfp, --fpu softvfp+vfpv2, or --fpu softvfp+vfpv3
the calling function and the called function must be declared using the __softfp keyword.
Each of the options --fpu softvfp, --fpu softvfp+vfpv2 and --fpu softvfp+vfpv3 specify software floating-point linkage across the whole file. In contrast, the __softfp keyword enables software floating-point linkage to be specified on a function by function basis.
For more information see: