/volatileMetadata (Metaadatok létrehozása változó memóriahozzáféréseken)

Hozzon létre metaadatokat az ingadozó memóriahozzáférésekhez az x64- vagy x86-kód ARM64-en való futtatásakor a teljesítmény javítása érdekében.

Syntax

/volatileMetadata[-]

Remarks

A 2022 18.6-os Visual Studio kezdve a /volatileMetadata alapértelmezés szerint ki van kapcsolva, és explicit módon engedélyezni kell. Ha explicit módon szeretné letiltani, használja /volatileMetadata-a . /volatileMetadata Javítja az x64- és x86-kód emulációs teljesítményét az ARM64-en az ingadozó memóriacímeket azonosító metaadatok létrehozásával. Az emulátor ezen metaadatok használatával javíthatja a teljesítményt azáltal, hogy nem használ beolvasási/kiadási szemantikát azokon a hozzáféréseken, amelyekről tudja, hogy nem volatilisek. A metaadatok nélkül az emulátor feltételezi, hogy minden cím változékony, és beolvasási és kiadási szemantikát használ.

Ennek egyik mellékhatása /volatileMetadata lehet, hogy a létrehozott kódban használt makrók láthatók npad . Ez a makró egy megadott számú NOP utasításra bővül, amelyek létrehoznak egy címet, amely egy memóriakorláthoz társítható. Ezt a címet ezután a metaadatok rögzítik, jelezve, hogy a hozzáféréshez a beolvasási/kiadási szemantikát kell használni.

Megjegyzés:

A 2019.Visual Studio 16.10-es és 2022-es Visual Studio között alapértelmezés szerint be volt kapcsolva a /volatileMetadata. A 2022. Visual Studio 18.6-os /volatileMetadata alapértelmezés szerint ki van kapcsolva.

Requirements

Visual Studio 2019 16.10-es vagy újabb verziója.

Lásd még

MSVC-fordító beállításai
MSVC-fordító Command-Line szintaxisa