xsmsubasp
VSX Scalar Multiply Subtract Add Pair Single Precision
xsmsubasp XT,XA,XB
Performs a multiply-subtract-add operation on single-precision floating-point values.
Details
Performs a fused multiply-subtract-add operation on scalar single-precision floating-point values. The operation computes (XA × XB) - XT + implicit_addend and stores the result in XT. This MMA/VSX fusion instruction updates FPSCR with exception flags and follows IEEE 754 rounding semantics.
Pseudocode Operation
XT ← (XA × XB) - XT + (addend)
FPSCR ← updated with exception flags and rounding
Programming Note
See Table 7.10, “VSX Scalar Floating-Point Final Result,” on page 618.
Example
xsmsubasp vs1, vs2, vs3
Encoding
Binary Layout
60
0
XT
6
XA
11
XB
16
136
21
Operands
-
XT
Target Vector-Scalar Register -
XA
Source Vector-Scalar Register -
XB
Source Vector-Scalar Register -
FRT
Target Floating Point Register -
FRB
Source Floating Point Register -
FRA
Source Floating Point Register