float foo(float f, float g)
VADD h, f, 0.5*g; // h = f + 0.5*g
In inline assembly code you cannot use the VFP instruction
VMOV to transfer between an ARM register and half of a doubleword
extension register. Instead, you can use the instruction
VMOV to transfer between an ARM register and a single-precision VFP
If you change the FPSCR register using inline assembley code, it produces runtime effects on the
inline VFP code and on subsequent compiler-generated VFP code.
Do not use inline assembly code to change VFP vector mode. Inline assembly code
must not be used for this purpose, and VFP vector mode is deprecated.
ARM strongly discourages the use of inline assembly coprocessor instructions to
interact with VFP in any way.