/volatileMetadata (Hasilkan metadata pada akses memori volatil)

Hasilkan metadata untuk akses memori volatil untuk meningkatkan performa saat menjalankan kode x64 atau x86 di ARM64.

Sintaks

/volatileMetadata[-]

Keterangan

Dimulai dengan Visual Studio 2022 18.6, /volatileMetadata nonaktif secara default dan harus diaktifkan secara eksplisit. Untuk menonaktifkannya secara eksplisit, gunakan /volatileMetadata-. /volatileMetadata meningkatkan performa emulasi kode x64 dan x86 pada ARM64 dengan menghasilkan metadata yang mengidentifikasi alamat memori volatil. Emulator dapat menggunakan metadata ini untuk meningkatkan performa dengan tidak menggunakan semantik perolehan/rilis pada akses yang diketahuinya tidak volatil. Tanpa metadata ini, emulator mengasumsikan bahwa semua alamat volatil dan menggunakan semantik perolehan dan rilis.

Salah satu efek /volatileMetadata sampingnya adalah Anda mungkin melihat npad makro yang digunakan dalam kode yang dihasilkan. Makro ini meluas ke sejumlah NOP instruksi tertentu yang membuat alamat untuk dikaitkan dengan penghubung memori. Alamat tersebut kemudian dicatat dalam metadata untuk menunjukkan bahwa semantik perolehan/rilis harus digunakan untuk mengaksesnya.

Nota

Pada Visual Studio 2019 versi 16.10 hingga Visual Studio 2022, /volatileMetadata aktif secara default. Dimulai dengan Visual Studio 2022 18.6, /volatileMetadata nonaktif secara default.

Persyaratan

Visual Studio 2019 versi 16.10 atau yang lebih baru.

Lihat juga

Opsi Pengkompilasi MSVC
Sintaks Baris Perintah Pengkompilasi MSVC