Udostępnij za pośrednictwem


imm_atomic_xor (sm5 — asm)

Natychmiastowe niepodzielne bitowe XOR do pamięci. Zwraca wartość w pamięci przed XOR.

imm_atomic_xor dst0[.single_component_mask], dst1, dstAddress[.swizzle], src0[.select_component]
Przedmiot Opis
dst0
[in] Zawiera wartość z dst1 przed XOR.
dst1
[in] Nieuporządkowany widok dostępu (UAV) (u#). W cieniatorze obliczeniowym może to być również pamięć współdzielona grupy wątków (g#).
dstAddress
[in] Adres pamięci.
src0
Wartość XOR z dst1.

Uwagi

Ta instrukcja wykonuje jeden składnik 32-bitowy bitowy XOR operand src0 z dst1 na 32-bitowy adres składnika dstAddress.

Jeśli dst1 jest u#, być może został zadeklarowany jako nieprzetworzone, typizowane lub ustrukturyzowane. Jeśli typ jest wpisany, musi być zadeklarowany jako UINT/SINT z powiązanym formatem zasobu jest R32_UINT/_SINT.

Jeśli dst1 to g#, musi być zadeklarowany jako nieprzetworzone lub ustrukturyzowane.

Wartość w pamięci dst1 przed zwróceniem XOR do dst0.

Cała operacja jest wykonywana niepodziealnie.

Liczba składników pobranych z adresu jest określana przez wymiarowość zasobu zadeklarowanego na dst1.

Jeśli wywołanie cieniowania jest nieaktywne, na przykład jeśli piksel został odrzucony wcześniej w jego wykonaniu, lub wywołanie piksela/próbki tylko istnieje, aby służyć jako pomocnik rzeczywistego piksela/próbki dla pochodnych, ta instrukcja w ogóle nie zmienia pamięci dst1 , a zwrócona wartość jest niezdefiniowana.

Adresowanie poza granicami w języku u# powoduje, że nic nie jest zapisywane w pamięci, z wyjątkiem sytuacji, gdy u# jest ustrukturyzowany, a przesunięcie bajtu w strukturze (drugi składnik adresu) powoduje brak dostępu do granic, a cała zawartość protokołu UAV staje się niezdefiniowana.

Adresowanie poza granicami w języku u# lub g# powoduje zwrócenie niezdefiniowanego wyniku do cieniowania w dst0.

Ta instrukcja dotyczy następujących etapów cieniowania:

Wierzchołek Kadłub Domena Geometria Piksel Obliczyć
X X

Ponieważ widoki UAV są dostępne na wszystkich etapach cieniowania dla direct3D 11.1, ta instrukcja dotyczy wszystkich etapów cieniowania dla środowiska uruchomieniowego Direct3D 11.1, który jest dostępny od systemu Windows 8.

Wierzchołek Kadłub Domena Geometria Piksel Obliczyć
X X X X X X

Minimalny model cieniowania

Ta instrukcja jest obsługiwana w następujących modelach cieniowania:

Model cieniowania Wsparte
Model cieniowania 5 tak
Model cieniowania 4.1 Nie
Model cieniowania 4 Nie
model cieniowania 3 (DirectX HLSL) Nie
Model cieniowania 2 (DirectX HLSL) Nie
Model cieniowania 1 (DirectX HLSL) Nie

zestaw Shader Model 5 (DirectX HLSL)