Arahan kompilator Pustaka DirectXMath
Direktif kompilator menyempurnakan fungsionalitas yang digunakan pustaka DirectXMath.
Direktif | Deskripsi |
---|---|
_XM_NO_INTRINSICS_ | Ketika _XM_NO_INTRINSICS_ ditentukan, operasi DirectXMath diimplementasikan tanpa menggunakan intrinsik khusus platform apa pun. Sebaliknya, DirectXMath hanya menggunakan operasi floating point standar. Secara default, _XM_NO_INTRINSICS_ tidak ditentukan. Arahan ini mengambil alih semua arahan lainnya. Oleh karena itu, kami sarankan Anda memeriksa _XM_NO_INTRINSICS_ sebelum Anda menentukan status _XM_ARM_NEON_INTRINSICS_ atau _XM_SSE_INTRINSICS_. |
_XM_SSE_INTRINSICS_ | Ketika _XM_SSE_INTRINSICS_ ditentukan, kode dikompilasi untuk menggunakan SSE dan SSE2 pendukung pada platform yang mendukung set instruksi ini. Versi Windows yang menyediakan intrinsik SSE mendukung SSE dan SSE2. _XM_SSE_INTRINSICS_ tidak berpengaruh pada sistem yang tidak mendukung SSE dan SSE2. Secara default, _XM_SSE_INTRINSICS_ ditentukan saat pengguna mengkompilasi untuk platform Windows. DirectXMath menggunakan compiler standar yang ditentukan (_M_IX86 /_M_AMD64) untuk menentukan target Windows x86 atau Windows x64. |
_XM_ARM_NEON_INTRINSICS_ | Ini menunjukkan implementasi DirectXMath menggunakan intrinsik ARM-NEON. Secara default, _XM_ARM_NEON_INTRINSICS_ ditentukan ketika pengguna mengkompilasi untuk Windows pada platform ARM / ARM64. DirectXMath menggunakan definisi kompilator standar (_M_ARM, _M_ARM64) untuk menentukan target biner ini. Dukungan intrinsik ARM-NEON baru untuk DirectXMath dan tidak didukung oleh XNAMath 2.x. |
_XM_SSE3_INTRINSICS_ | Baru untuk DirectXMath 3.10. Ketika Anda menentukan direktif kompilator ini, fungsi DirectXMath diimplementasikan untuk menggunakan intrinsik SSE3 jika berlaku; jika tidak, ia menggunakan SSE/SSE2. |
_XM_SSE4_INTRINSICS_ | Baru untuk DirectMath 3.09. Ketika Anda menentukan direktif kompilator ini, fungsi DirectXMath diimplementasikan untuk menggunakan intrinsik SSE3 dan SSE4.1 jika berlaku; jika tidak, ia menggunakan SSE/SSE2. Ketika Anda menentukan direktif kompilator ini, itu juga menyiratkan _XM_SSE3_INTRINSICS_ dan _XM_SSE_INTRINSICS_. |
_XM_AVX_INTRINSICS_ | Baru untuk DirectXMath 3.09. Penggunaan /arch:AVX akan mengaktifkan arahan ini. Ketika Anda menentukan direktif kompilator ini, fungsi DirectXMath diimplementasikan untuk menggunakan intrinsik SSE3, SSE4.1, dan AVX 128-bit jika berlaku; jika tidak, DirectXMath menggunakan SSE/SSE2. Ketika Anda menentukan direktif kompilator ini, itu juga menyiratkan _XM_SSE3_INTRINSICS, _XM_SSE4_INTRINSICS_, dan _XM_SSE_INTRINSICS_, dan menyertakan subset kecil instruksi SSE3. |
XM_AVX2_INTRINSICS_ | Baru untuk DirectXMath 3.11. Penggunaan /arch:AVX2 memungkinkan arahan ini. Ketika Anda menentukan direktif kompilator ini, fungsi DirectXMath menggunakan intrinsik AVX2, F16C/CVT16, FMA3, AVX 128-bit, SSE4.1, dan SSE3 jika berlaku. Saat Anda menggunakan _XM_AVX2_INTRINSICS_, itu menyiratkan _XM_F16C_INTRINSICS_, _XM_FMA3_INTRINSICS_, _XM_AVX_INTRINSICS_, _XM_SSE_INTRINSICS_, _XM_SSE3_INTRINSICS_, dan _XM_SSE4_INTRINSICS_. |
_XM_F16C_INTRINSICS_ | Baru untuk DirectXMath 3.09. Ketika Anda menentukan direktif kompilator ini, fungsi DirectXMath diimplementasikan untuk menggunakan intrinsik SSE3, SSE4.1, AVX 128-bit, dan F16C/CVT16 jika berlaku; jika tidak, DirectXMath menggunakan SSE/SSE2. Saat Anda menggunakan _XM_F16C_INTRINSICS_, itu menyiratkan _XM_AVX_INTRINSICS_, _XM_SSE_INTRINSICS_, _XM_SSE3_INTRINSICS_, dan _XM_SSE4_INTRINSICS_. |
_XM_FMA3_INTRINSICS_ | Baru untuk DirectXMath 3.11. Ketika Anda menentukan direktif kompilator ini, fungsi DirectXMath akan menggunakan intrinsik SSE3, SSE4.1, AVX 128-bit, dan FMA3 jika berlaku; jika tidak, DirectXMath menggunakan SSE/SSE2. Saat Anda menggunakan _XM_FMA3_INTRINSICS_, itu menyiratkan _XM_AVX_INTRINSICS_, _XM_SSE_INTRINSICS_, _XM_SSE3_INTRINSICS_, dan _XM_SSE4_INTRINSICS_. |
_XM_VECTORCALL_ | Ini memungkinkan penggunaan konvensi panggilan __vectorcall untuk target Windows x86 atau Windows x64. Ini default ke _XM_VECTORCALL_=1 ketika pengkompilasi mendukung fitur ini. Anda dapat mengaturnya secara manual ke _XM_VECTORCALL_=0 untuk selalu menonaktifkannya. __vectorcall tidak didukung untuk Windows pada platform ARM / ARM64 atau C++Terkelola. |
_XM_SVML_INTRINSICS_ | Baru untuk DirectXMath 3.16. Dengan VS 2019 atau yang lebih baru, ini memungkinkan pustaka menggunakan IntelĀ® Short Vector Matrix Library untuk x86/x64. |
Topik terkait