Compartilhar via


imm_atomic_imin (sm5 – asm)

Mín. atômico imediato assinado na memória. Retorna o valor na memória antes da operação máxima.

imm_atomic_imin dst0[.single_component_mask], dst1, dstAddress[.swizzle], src0[.select_component]
Item Descrição
dst0
[in] Contém o valor de dst1 antes desta instrução.
dst1
[in] Uma exibição de acesso não ordenada (UAV) (u#). No sombreador de computação, isso também pode ser memória compartilhada do grupo de threads (g#).
dstAddress
[in] O endereço de memória.
src0
[in] O valor a ser comparado com dst1 em dstAddress.

Comentários

Esta instrução de ia executa um único componente com sinal mínimo de 32 bits de operando src0 com dst1 a 32 bits por endereço de componente dstAddress.

Se dst1 for um u#, ele poderá ter sido declarado como bruto, tipado ou estruturado. Se digitado, ele deverá ser declarado como UINT/SINT com o formato de recurso associado sendo R32_UINT/_SINT.

Se dst1 for g#, ele deverá ser declarado como bruto ou estruturado.

O valor na memória dst1 antes de min é retornado para dst0.

O número de componentes retirados do endereço é determinado pela dimensionalidade de dst1.

Toda a operação é executada atomicamente.

Se a invocação do sombreador estiver inativa, por exemplo, se o pixel tiver sido descartado anteriormente em sua execução ou uma invocação de pixel/amostra existir apenas para servir como um 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# não faz com que nada seja gravado na memória, exceto se o u# estiver estruturado e o deslocamento de bytes para o struct (segundo componente do endereço) estiver causando o acesso fora dos limites e, em seguida, 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 se aplica aos seguintes estágios de sombreador:

Vértice Casco Domínio Geometry Pixel Computação
X X

Como os UAVs estão disponíveis em todos os estágios de sombreador para o Direct3D 11.1, essa instrução se aplica a todos os estágios do sombreador para o runtime do Direct3D 11.1, que está disponível a partir do Windows 8.

Vértice Casco Domínio Geometry Pixel Computação
X X X X X X

Modelo de sombreador mínimo

Esta instrução tem suporte nos seguintes modelos de sombreador:

Modelo de Sombreador Com suporte
Modelo de sombreador 5 sim
Modelo de sombreador 4.1 não
Modelo de sombreador 4 não
Modelo de sombreador 3 (DirectX HLSL) não
Modelo de sombreador 2 (DirectX HLSL) não
Modelo de sombreador 1 (DirectX HLSL) não

Assembly do Modelo de Sombreador 5 (DirectX HLSL)