PM0214 Rev 9 57/262
PM0214 The STM32 Cortex-M4 instruction set
261
VCMP.F32 Sd, <Sm | #0.0>
Compare two floating-point
registers, or one floating-point
register and zero
FPSCR 3.10.3 on page 153
VCMPE.F32 Sd, <Sm | #0.0>
Compare two floating-point
registers, or one floating-point
register and zero with Invalid
Operation check
FPSCR 3.10.3 on page 153
VCVT.S32.F
32
Sd, Sm
Convert between floating-point
and integer
— 3.10.4 on page 154
VCVT.S16.F
32
Sd, Sd, #fbits
Convert between floating-point
and fixed point
— 3.10.4 on page 154
VCVTR.S32.
F32
Sd, Sm
Convert between floating-point
and integer with rounding
— 3.10.4 on page 154
VCVT<B|H>.
F32.F16
Sd, Sm
Converts half-precision value
to single-precision
— 3.10.5 on page 155
VCVTT<B|T
>.F32.F16
Sd, Sm
Converts single-precision
register to half-precision
— 3.10.6 on page 156
VDIV.F32 {Sd,} Sn, Sm Floating-point divide — 3.10.7 on page 157
VFMA.F32 {Sd,} Sn, Sm
Floating-point fused multiply
accumulate
— 3.10.8 on page 158
VFNMA.F32 {Sd,} Sn, Sm
Floating-point fused negate
multiply accumulate
— 3.10.9 on page 159
VFMS.F32 {Sd,} Sn, Sm
Floating-point fused multiply
subtract
— 3.10.8 on page 158
VFNMS.F32 {Sd,} Sn, Sm
Floating-point fused negate
multiply subtract
— 3.10.9 on page 159
VLDM.F<32|
64>
Rn{!}, list
Load multiple extension
registers
—
3.10.10 on page
160
VLDR.F<32|
64>
<
Dd|Sd>, [Rn]
Load an extension register
from memory
—
3.10.11 on page
161
VLMA.F32 {Sd,} Sn, Sm
Floating-point multiply
accumulate
—
3.10.12 on page
162
VLMS.F32 {Sd,} Sn, Sm Floating-point multiply subtract —
3.10.12 on page
162
VMOV.F32 Sd, #imm
Floating-point move
immediate
—
3.10.13 on page
163
VMOV Sd, Sm Floating-point move register —
3.10.14 on page
164
VMOV Sn, Rt
Copy Arm core register to
single precision
—
3.10.18 on page
168
VMOV Sm, Sm1, Rt, Rt2
Copy 2 Arm core registers to 2
single precision
—
3.10.17 on page
167
Table 21. Cortex-M4 instructions (continued)
Mnemonic Operands Brief description Flags Page