Calls to the function pass floating-point arguments in integer
registers. If the result is a floating-point value, the value is
returned in integer registers. This duplicates the behavior of compilation
targeting software floating-point.
This keyword enables the same library to be used by sources
compiled to use hardware and software floating-point.
Note
In C++, if a virtual function qualified with the __softfp keyword
is to be overridden, the overriding function must also be declared
as __softfp. If the functions do not match, the compiler
generates an error.