xsmincqp

VSX Scalar Minimum Type-C Quad-Precision

xsmincqp vD, vA, vB

Compares two quad-precision floating-point values and selects the minimum value.

Details

Compares two quad-precision floating-point values in VSRs and returns the minimum, using Type-C comparison rules (NaN handling as per VSX specification). Results are written to the VSR specified by XT. No exception or condition register fields are altered unless Rc=1 for VSX comparisons.

Pseudocode Operation

fD ← min(fA, fB) using Type-C comparison
if fA is NaN or fB is NaN then
  fD ← QNaN
end if

Programming Note

xsmincqp can be used to implement the C/C++ conditional operator (x<y)?x:y for quad-precision arguments.

Example

xsmincqp vd, va, vb

Encoding

Binary Layout
63
0
FRT
6
FRA
11
FRB
16
710
21
Rc
31
 
Format X-form
Opcode 0xFC0005C8
Extension VSX
Registers Altered FPSCR.FX, FPSCR.VXSNAN

Operands

  • vD
    Target
  • vA
    Src A
  • vB
    Src B
  • VRT
    Target Vector Register
  • VRA
    Source Vector Register
  • VRB
    Source Vector Register