vsel

Vector Select

VSEL<cond>.F32 <Sd>, <Sn>, <Sm>

Selects elements from Dn or Dm based on condition flags (predicated VFP).

Details

Conditionally selects the 32-bit floating-point value from either Sn or Sm based on the current state of the condition flags and writes it to Sd. The condition code (cc) embedded in the instruction determines which flag combination is tested. This instruction does not modify condition flags. Available in A32/T32 with VFP extension.

Pseudocode Operation

if ConditionHolds(cc) then
  Sd ← Sn
else
  Sd ← Sm
end if

Example

VSELcond.F32 s0, s1, s2

Encoding

Binary Layout
11111110
0
D
cc
Vn
Vd
1010
N
0
M
Vm
 
Format VFP Misc
Opcode 0xFE000A00
Extension VFP (Float)

Operands

  • Sd
    Destination 32-bit floating-point register
  • Sn
    First source 32-bit floating-point register
  • Sm
    Second source 32-bit floating-point register