maclhwsu
Multiply Accumulate Low Halfword to Word Saturate Unsigned
Preliminary PPC440x5 CPU Core User’s Manual
instrset.fm.
September 12, 2002 Page 355 of 589
maclhwsu
Multiply Accumulate Low Halfword to Word Saturate Unsigned
prod
0:31
← (RA)
16:31
× (RB)
16:31
unsigned
temp
0:32
← prod
0:31
+ (RT)
(RT)
← (temp
1:32
∨
32
temp
0
)
The low-order halfword of RA is multiplied by the low-order halfword of RB. The unsigned product is summed
with the contents of RT.
If the unsigned sum can be represented in 32 bits, then RT is updated with the low-order 32 bits of the
unsigned sum.
If the unsigned sum cannot be represented in 32 bits, then RT is updated with a value which is “saturated” to
the maximum representable value of 2
32
–1.
Registers Altered
•RT
• CR[CR0] if Rc contains 1
• XER[SO, OV] if OE contains 1
Architecture Note
This instruction is implementation-specific and programs which use this instruction may not be portable to
other PowerPC Book-E implementations. See Instruction Set Portability on page 250.
maclhwsu RT, RA, RB OE=0, Rc=0
maclhwsu. RT, RA, RB OE=0, Rc=1
maclhwsuo RT, RA, RB OE=1, Rc=0
maclhwsuo. RT, RA, RB OE=1, Rc=1
4 RT RA RB OE 460 Rc
0 6 11 16 21 22 31