何时的准则使用 EMMS
[本文档仅供预览,并可能在以后的版本中更改。 Blank topics are included as placeholders.]
Microsoft 专用
这些准则时帮助您确定使用 EMMS 命令:
如果下命令是浮点命令,请使用 _mm_empty ,在 MMX 指令后 (例如,在对浮动、二进制值或长的二进制文件的计算之前)。
不要为空,在已 null。 如果下命令使用一个 MMX 注册, _mm_empty 导致操作没有好处 (no-op)。
使用浮点命令使用 MMX 指令的区域以及使用不同的功能。 这样就无需在一个重要循环体中 EMMS 指令。
在 __m64 和 FP 数据类型的运行时初始化时使用 _mm_empty 。 这样可确保重置寄存器在数据类型之间转换。 请参见使用代码在下面的示例所示。
在初始化代码的正确用法 EMMS
用法不正确 |
正确用法 |
---|---|
|
|
此外,代码时,生成 MMX 指令时,必须注意任何情况:
在使用将内部时。
在使用流式 SIMD 扩展时 (对于使用 MMX 数据) 的这些内部。
在使用 MMX 指令通过内联程序集时。
当引用 __m64 数据类型变量。
有关 EMMS 的更多文档,请参见 Intel 文档。
MMX 内部使用 __m64 数据类型,如 x64 处理器不支持。