retc (sm4 - asm)
Devolución condicional.
retc{_z|_nz} src0.select_component |
---|
Elemento | Descripción |
---|---|
src0 |
[in] Registro en el que se va a probar la condición. |
Comentarios
Si se encuentra dentro de una subrutina, esta instrucción vuelve condicionalmente a la instrucción después de la llamada. Si no está dentro de una subrutina, esta instrucción finaliza la ejecución del programa.
En el ejemplo siguiente se muestra cómo usar esta instrucción.
...
call l3
...
ret
label l3
...
retc_nz r0.x // If any bit in r0.x is nonzero, then return
retc_z r1.x // If all bits in r0.x are zero, then return.
...
ret
Restricciones
- retc puede aparecer en cualquier parte de un programa, cualquier número de veces.
- La última instrucción de un programa principal o subrutina no puede ser una retc_z o retc_nz. En su lugar, se puede usar el ret incondicional.
- El registro de 32 bits proporcionado por src0 se prueba en un nivel de bits. Si algún bit es distinto de cero, ret_nz devolverá. Si todos los bits son cero, retc_z devolverá.
Esta instrucción se aplica a las siguientes fases del sombreador:
Sombreador de vértices | Sombreador de geometría | Sombreador de píxeles |
---|---|---|
x | x | x |
Modelo de sombreador mínimo
Esta función se admite en los siguientes modelos de sombreador.
Modelo de sombreador | Compatible |
---|---|
Modelo de sombreador 5 | sí |
Modelo de sombreador 4.1 | sí |
Modelo de sombreador 4 | sí |
Modelo de sombreador 3 (DirectX HLSL) | no |
Modelo de sombreador 2 (DirectX HLSL) | no |
Modelo de sombreador 1 (DirectX HLSL) | no |