共用方式為


編譯器警告 (層級 1) C4799

函數 'function' 沒有 EMMS 指令

備註

函式至少有一個 EMMS MMX指令,但沒有指令。 使用多媒體指令時, EMMS 也應該使用指令或 _mm_empty 內部函數來清除MMX程式代碼結尾的多媒體標記字。

使用 ivec.h時可能會得到C4799,表示程式碼在返回之前沒有正確執行 EMMS 指令。 這是這些標頭的誤判警告。 您可以透過在ivec.h中定義_SILENCE_IVEC_C4799來關閉這些功能。 不過,請注意,這也會讓編譯程式無法提供此類型的正確警告。

如需相關信息,請參閱 Intel 的 MMX 指令集

Example

下列範例會產生 C4799:

// C4799.cpp
// compile with: /W1
// processor: x86
#include <mmintrin.h>

int main()
{
    __m64 m = _mm_setzero_si64();

    // Uncomment the following line to resolve the warning:
    // _mm_empty();
}   // C4799