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
The xsmsubasp instruction performs the following operations: (src1 * src2) - src3 + tgt, where src1 is VSR[XA].dword[0], src2 is VSR[XT].dword[0], and src3 is VSR[XB].dword[0]. The result is stored in VSR[XT].dword[0].
Pseudocode Operation
tgt <- (src1 * src2) - src3 + tgt
VSR[XT].dword[0] <- tgt
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