machhw

Multiply Accumulate High Halfword

machhw RT, RA, RB

Multiply top half of RA by top half of RB, add to RT.

Details

Multiplies the high halfword (bits 0–15) of RA by the high halfword of RB as signed integers, then adds the 32-bit product to RT and stores the result in RT. This is part of the Embedded (SPE) category and does not affect any condition or status registers.

Pseudocode Operation

product ← EXTS(RA[0:15]) × EXTS(RB[0:15])
RT ← RT + product

Example

machhw r3, r4, r5

Encoding

Binary Layout
4
0
RT
6
RA
11
RB
16
44
21
0
31
 
Format XO-form
Opcode 0x10000058
Extension Embedded

Operands

  • RT
    Acc/Dest
  • RA
    Src A
  • RB
    Src B