mulhd.
Multiply High Doubleword
mulhd. RT,RA,RB
Multiplies the contents of two registers and places the high-order 64 bits of the product into a target register.
Encoding
Binary Layout
011111
0:5
RT
6:10
RA
11:15
RB
16:20
/0010
21:30
01001
31
Operands
-
RT
Target General Purpose Register -
RA
Source General Purpose Register -
RB
Source General Purpose Register
Reference
View in PowerISA v3.1C Specification ↗
OPF Power ISA v3.1C
Description
For mulhd., the product of the contents of register RA and RB is computed, and the high-order 64 bits of this product are placed into register RT.
Operation
if 'mulhd.' then
RT <- (RA) * (RB)
Programming Note
The mulhd. instruction multiplies two 64-bit integers and stores the high 64 bits of the result in a destination register. It does not affect any special registers like CR0 or XER, so developers should be cautious when relying on carry flags or overflow conditions. This instruction is commonly used in cryptographic algorithms where large integer multiplication is required without needing the lower half of the product.