pmxvf64ger

Prefixed Masked VSX Vector Float64 GER

pmxvf64ger AT, XA, XB, XMSK, YMSK

Masked version of Double-Precision MMA.

Details

The pmxvf64ger instruction performs a masked outer product accumulation of two 64-bit floating-point vectors, XAp and XB, into an accumulator AT. The operation is similar to xvf64ger but includes masking for the elements of the input vectors.

Pseudocode Operation

for i=0 to 3, j=0 to 3:
    if (XMSK[i] == 1) and (YMSK[j] == 1):
        ACC[AT][i][j] = fmuls(XAp[i], XB[j])

Programming Note

The pmxvf64ger instruction is useful for performing masked outer product accumulation on floating-point vectors. Ensure that the mask registers XMSK and YMSK are correctly set to control which elements of the input vectors XAp and XB participate in the computation. This instruction operates at a privilege level that allows access to VSX (Vector Scalar Extensions) and requires proper alignment of the input and accumulator vectors for optimal performance.

Example

pmxvf64ger acc0, vs2, vs3, 15, 15

Encoding

Binary Layout
1
0
3
6
PMSK
8
XMSK
9
YMSK
14
0
32
59
38
AT
41
/
43
XA
48
XB
53
19
56
AX
57
BX
58
/
 
Format MMIRR-form
Opcode 0x06000000
Extension Prefixed

Operands

  • AT
    Accumulator
  • XA
    Src A
  • XB
    Src B
  • XMSK
    Mask A
  • YMSK
    Mask B