3-529
INSTRUCTION SET REFERENCE
PMULLWPacked Multiply Low (Continued)
Intel C/C++ Compiler Intrinsic Equivalent
Pre-4.0 Intel C/C++ Compiler intrinsic:
__m64 _m_pmullw(__m64 m1, __m64 m2)
Version 4.0 and later Intel C/C++ Compiler intrinsic:
__m64 _mm_mullo_pi16(__m64 m1, __m64 m2)
Multiply four 16-bit values in m1 by four 16-bit values in m2 and produce the low 16 bits of the
four results.
Flags Affected
None.
Protected Mode Exceptions
#GP(0)
If a memory operand effective address is outside the CS, DS, ES, FS, or
GS segment limit.
#SS(0)
If a memory operand effective address is outside the SS segment limit.
#UD
If EM in CR0 is set.
#NM
If TS in CR0 is set.
#MF
If there is a pending FPU exception.
#PF(fault-code)If a page fault occurs.
#AC(0)
If alignment checking is enabled and an unaligned memory reference is
made while the current privilege level is 3.
Real-Address Mode Exceptions
#GP
If any part of the operand lies outside of the effective address space from
0 to FFFFH.
#UD
If EM in CR0 is set.
#NM
If TS in CR0 is set.
#MF
If there is a pending FPU exception.