WMMX Arithmetic Intrinsics (Windows Embedded CE 6.0)
1/5/2010
The intrinsics listed in the following table perform packed arithmetic operations.
Intrinsic name | Operation | WMMX Instruction | Argument and result values/bits |
---|---|---|---|
_mm_add_pi16 |
Adds |
WADDH |
4/16, 4/16 |
_mm_add_pi32 |
Adds |
WADDW |
2/32, 2/32 |
_mm_add_pi8 |
Adds |
WADDB |
8/8, 8/8 |
_mm_adds_pi16 |
Adds, signed |
WADDHSS |
4/16, 4/16 |
_mm_adds_pi32 |
Adds, signed |
WADDWSS |
2/32, 2/32 |
_mm_adds_pi8 |
Adds, signed |
WADDBSS |
8/8, 8/8 |
_mm_adds_pu16 |
Adds |
WADDHUS |
4/16, 4/16 |
_mm_adds_pu32 |
Adds |
WADDWUS |
2/32, 2/32 |
_mm_adds_pu8 |
Adds |
WADDBUS |
8/8, 8/8 |
_mm_sub_pi16 |
Subtracts |
WSUBH |
4/16, 4/16 |
_mm_sub_pi32 |
Subtracts |
WSUBW |
2/32, 2/32 |
_mm_sub_pi8 |
Subtracts |
WSUBB |
8/8, 8/8 |
_mm_subs_pi16 |
Subtracts, signed |
WSUBHSS |
4/16, 4/16 |
_mm_subs_pi32 |
Subtracts, signed |
WSUBWSS |
2/32, 2/32 |
_mm_subs_pi8 |
Subtracts, signed |
WSUBBSS |
8/8, 8/8 |
_mm_subs_pu16 |
Subtracts |
WSUBHS |
4/16, 4/16 |
_mm_subs_pu32 |
Subtracts |
WSUBWSS |
2/32, 2/32 |
_mm_subs_pu8 |
Subtracts |
WSUBBUS |
8/8, 8/8 |
_mm_madd_pi16 |
Multiplies |
WMADDS |
4/16, 2/32 |
_mm_madd_pu16 |
Multiplies |
WMADDU |
4/16, 2/32 |
_mm_mulhi_pi16 |
Multiplies, signed |
WMULSH |
4/16, 4/16 (high) |
_mm_mulhi_pu16 |
Multiplies, signed |
WMULUH |
4/16, 4/16 (high) |
_mm_mullo_pi16 |
Multiplies |
WMULSL/WMULUL |
4/16, 4/16 (low) |
_mm_mac_pi16 |
Multiply-accumulate, signed |
WMACS |
4/16, 4/16 |
_mm_mac_pu16 |
Multiply-accumulate |
WMACU |
4/16, 4/16 |
_mm_macz_pi16 |
Multiply-accumulate, signed |
WMACSZ |
4/16, 4/16 |
_mm_macz_pu16 |
Multiply-accumulate |
WMACUZ |
4/16, 4/16 |
_mm_acc_pu16 |
Accumulate |
WACCH |
4/16, 1/16 |
_mm_acc_pu32 |
Accumulate |
WACCW |
2/32. 2/32 |
_mm_acc_pu8 |
Accumulate |
WACCB |
8/8, 1/8 |
_mm_mia_si64 |
Multiply-accumulate, signed |
TMIA |
1/64 |
_mm_miabb_si64 |
Multiply-accumulate, signed |
TMIABB |
1/64 |
_mm_miabt_si64 |
Multiply-accumulate, signed |
TMIABT |
1/64 |
_mm_miaph_si64 |
Multiply-accumulate, signed |
TMIAPH |
1/64 |
_mm_miatb_si64 |
Multiply-accumulate, signed |
TMIATB |
1/64 |
_mm_miatt_si64 |
Multiply-accumulate, signed |
TMIATT |
1/64 |