VFPASSERT SCALAR directive informs the assembler
that following VFP instructions are in scalar mode. This forces
the instruction syntax to be scalar.
VFPASSERT SCALAR directive to mark the
end of any block of code where the VFP mode is
VFPASSERT SCALAR directive immediately
after the instruction where the change occurs. This is usually an
but might be a
If a function expects the VFP to be in vector mode on exit,
VFPASSERT SCALAR directive immediately after
the last instruction. Such a function would not be AAPCS compliant.
This directive does not generate any code. It is only an assertion by the programmer. The assembler produces error messages if any such assertions are inconsistent with each other, or with any vector notation in VFP data processing instructions.
The assembler faults vector notation in VFP data processing
instructions following a
VFPASSERT SCALAR directive,
even if the vector length is 1.
VFPASSERT SCALAR ; scalar mode faddd d4, d4, d0 ; okay fadds s4<3>, s0, s8<3> ; ERROR, vector in scalar mode fabss s24<1>, s28<1> ; ERROR, vector in scalar mode ; (even though length==1)