Writing Programs with Intel® Streaming SIMD Extensions (Intel® SSE) Intrinsics
You should be familiar with the hardware features provided by Intel® Streaming SIMD Extensions (Intel® SSE) when writing programs with the intrinsics. The following are four important issues to keep in mind:
- Certain intrinsics, such as_mm_loadr_psand_mm_cmpgt_ss, are not directly supported by the instruction set. While these intrinsics are convenient programming aids, be mindful that they may consist of more than one machine-language instruction.
- Floating-point data loaded or stored as__m128objects must be generally 16-byte-aligned.
- Some intrinsics require that their argument be immediates, that is, constant integers (literals), due to the nature of the instruction.
- The result of arithmetic operations acting on twoNaN(Not a Number) arguments is undefined. Therefore, FP operations usingNaNarguments will not match the expected behavior of the corresponding assembly instructions.