mulhd

Multiply High Doubleword

mulhd RT, RA, RB

Multiplies two 64-bit integers and returns the upper 64 bits of the 128-bit result (Signed).

Details

The mulhdu instruction multiplies two 64-bit unsigned integers (RA) and (RB), and places the high-order 64 bits of the resulting 128-bit product into register RT.

Pseudocode Operation

prod0:127 ←(RA) × (RB)
RT ←prod64:127

Programming Note

When Rc=1 (dot form), CR0 is updated with the signed comparison of the result against zero (LT, GT, EQ) and the current SO bit from XER.

Example

mulhd r3, r4, r5

Encoding

Binary Layout
31
0
RT
6
RA
11
RB
16
OE
21
73
22
Rc
31
 
Format XO-form
Opcode 0x7C000092
Extension Base
Registers Altered CR0

Operands

  • RT
    Target
  • RA
    Src A
  • RB
    Src B