pmxvi4ger8pp

Prefixed Masked VSX Vector Integer 4-bit GER Plus/Plus

pmxvi4ger8pp AT, XA, XB, XMSK, YMSK

Masked unsigned 4-bit integer matrix multiply.

Encoding

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

Operands

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

Example

pmxvi4ger8pp acc0, vs2, vs3, 15, 15

Registers Altered

FPSCR

Related

More in Prefixed

Reference

Description

Performs a masked unsigned 4-bit integer matrix multiplication with rank-8 accumulation and plus-signed saturation using separate row and column masks. This prefixed MMA instruction multiplies masked 4-bit elements from two VSX registers and accumulates the partial products into an MMA accumulator with unsigned saturation on overflow. XMSK controls row participation and YMSK controls column participation.

Operation

AT ← ACC[AT] + sat_u((XA & XMSK) × (XB & YMSK))

Programming Note

This instruction is useful for performing masked vectorized integer operations with saturation, ideal for applications requiring precise control over overflow conditions. Ensure that the mask registers (XMSK and YMSK) are correctly set to avoid unintended computations. The operation is performed at the user privilege level, but care must be taken to handle potential exceptions related to invalid register access or alignment issues. Performance may vary based on the specific data patterns and the effectiveness of the masking applied.