Microsoft Specific
This topic contains the 3DNow! intrinsics. For each intrinsic, the header file mm3dnow.h is required.
The following table lists the 3DNow! intrinsics alphabetically.
| Intrinsic | Use | 
|---|---|
| Clears the architectural state when switching between MMX and floating-point instructions. | |
| Returns a 64-bit MMX value where the lower half is set to the floating-point, single-precision value from the source operand and the upper half is zero. There is no error return. | |
| Calculates the rounded averages of eight unsigned 8-bit integer values. | |
| Converts packed floating-point, single-precision values to packed 32-bit integer values. | |
| Converts packed floating-point, single-precision values to packed 16-bit signed integer values using truncation. | |
| Performs packed floating-point, single-precision accumulation. | |
| Performs packed floating-point, single-precision addition. | |
| Compares packed floating-point, single-precision values to be equal and sets the corresponding return value to ones or zeros based on the result of the comparison. | |
| Compares the first packed floating-point, single-precision value to be greater than or equal to the second one and sets the corresponding return value to ones or zeros based on the result of the comparison. | |
| Compares the first packed floating-point, single-precision value to be greater than the second one and sets the corresponding return value to ones or zeros based on the result of the comparison. | |
| Returns the larger of the two packed floating-point, single-precision values. | |
| Returns the smaller of the two packed floating-point, single-precision values. | |
| Performs packed floating-point, single-precision multiplication. | |
| Performs packed floating-point, single-precision negative accumulation. | |
| Performs packed floating-point, single-precision positive-negative accumulation. | |
| Performs scalar floating-point, low-precision reciprocal approximation. | |
| Performs the first intermediate step in the Newton-Raphson iteration to refine the reciprocal approximation produced by the _m_pfrcp intrinsic function. | |
| Performs the second and final step in the Newton-Raphson iteration to refine the reciprocal or reciprocal square root approximation produced by the _m_pfrcp or _m_pfsqrt intrinsic functions, respectively. | |
| Performs the first intermediate step in the Newton-Raphson iteration to refine the reciprocal square root approximation produced by _m_pfsqrt intrinsic function. | |
| Performs scalar floating-point, low-precision reciprocal square root approximation. | |
| Performs packed floating-point, single-precision subtraction. | |
| Performs packed floating-point, single-precision reverse subtraction. | |
| Converts packed 32-bit integer values to packed floating-point, single-precision values. | |
| Converts packed 16-bit signed integer values to packed floating-point, single-precision values. | |
| Multiplies four signed 16-bit integer values in the source operand by four signed 16-bit integer values in the destination operand. | |
| Loads a 32-byte cache line into L1 data cache and sets the cache line state to exclusive. | |
| Loads a 32-byte cache line into L1 data cache and sets the cache line state to modified. | |
| Swaps upper and lower halves of the source operand. | |
| Returns the floating-point, single-precision value from the lower half of the 64-bit MMX value in the source operand. There is no error return. The compiler correctly ensures that an implict FEMMS is issued before any attempt to use the result of _m_to_float( ) operation. |