Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
XOR atômico imediato bit a bit para memória. Retorna o valor na memória antes do XOR.
imm_atomic_xor dst0[.single_component_mask], dst1, dstAddress[.swizzle], src0[.select_component] |
---|
Iteme | Descrição |
---|---|
DST0 |
[em] Contém o valor de dst1 antes do XOR. |
DST1 |
[em] Uma vista de acesso não ordenado (UAV) (u#). No sombreador de computação, isso também pode ser memória compartilhada de grupo de threads (g#). |
dstAddress |
[em] O endereço de memória. |
SRC0 |
O valor para XOR com dst1. |
Observações
Esta instrução executa um único componente XOR bit a bit de 32 bits do operando src0 com dst1 a 32 bits por endereço de componente dstAddress.
Se dst1 for um u#, ele pode ter sido declarado como bruto, digitado ou estruturado. Se digitado, ele deve ser declarado como UINT/SINT com o formato de recurso acoplado sendo R32_UINT/_SINT.
Se dst1 for g#, ele deve ser declarado como bruto ou estruturado.
O valor na memória dst1 antes do XOR ser retornado para dst0.
Toda a operação é realizada atomicamente.
O número de componentes retirados do endereço é determinado pela dimensionalidade do recurso declarado em dst1.
Se a invocação do sombreador estiver inativa, por exemplo, se o pixel tiver sido descartado anteriormente em sua execução, ou se uma invocação pixel/amostra existir apenas para servir como auxiliar para um pixel/amostra real para derivados, essa instrução não alterará a memória dst1 e o valor retornado será indefinido.
O endereçamento fora dos limites em u# faz com que nada seja gravado na memória, exceto se o u# estiver estruturado, e o deslocamento de bytes no struct (segundo componente do endereço) estiver causando o acesso fora dos limites, então todo o conteúdo do UAV se tornará indefinido.
O endereçamento fora dos limites em u# ou g# faz com que um resultado indefinido seja retornado ao sombreador em dst0.
Esta instrução aplica-se aos seguintes estágios de sombreador:
Vértice | Casco | Domínio | Geometria | Píxel | Computação |
---|---|---|---|---|---|
X | X |
Como os UAVs estão disponíveis em todos os estágios de sombreador para o Direct3D 11.1, esta instrução se aplica a todos os estágios de sombreador para o tempo de execução do Direct3D 11.1, que está disponível a partir do Windows 8.
Vértice | Casco | Domínio | Geometria | Píxel | Computação |
---|---|---|---|---|---|
X | X | X | X | X | X |
Modelo de sombreamento mínimo
Esta instrução é suportada nos seguintes modelos de sombreador:
Modelo Shader | Suportado |
---|---|
Shader Modelo 5 | Sim |
Shader Modelo 4.1 | Não |
Shader Modelo 4 | Não |
Shader Modelo 3 (DirectX HLSL) | Não |
Shader Modelo 2 (DirectX HLSL) | Não |
Shader Modelo 1 (DirectX HLSL) | Não |