mulhhw

Multiply High Halfword

mulhhw RT, RA, RB

Multiply top half of RA by top half of RB.

Details

Multiplies the sign-extended top halfword of RA by the sign-extended top halfword of RB, storing the low 32 bits of the product in RT. This is a signed 16×16→32 multiply operation on the upper halves. No condition register or status flags are affected.

Pseudocode Operation

a ← EXTS(RA[0:15])
b ← EXTS(RB[0:15])
RT ← (a × b)[32:63]

Example

mulhhw r3, r4, r5

Encoding

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

Operands

  • RT
    Target
  • RA
    Src A
  • RB
    Src B