retc (sm4 - asm)

條件式傳回。

retc{_z|_nz} src0.select_component
項目 描述
src0
[in]要測試條件的暫存器。

備註

如果在副程式內,此指令會在呼叫之後有條件地返回指令。 如果不是在副程式內,這個指令會終止程式執行。

下列範例示範如何使用這個指示。

           ...
           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

Restrictions

  • retc 可以出現在程式中的任何位置,任意次數。
  • 主要程式或副程式中的最後一個指令不能是 retc_zretc_nz。 相反地,可以使用無條件 的重試
  • src0所提供的 32 位暫存器會在位層級進行測試。 如果有任何位為非零, ret_nz 將會傳回。 如果所有位都是零, retc_z 會傳回。

本指示適用于下列著色器階段:

頂點著色器 幾何著色器 像素著色器
x x x

最小著色器模型

下列著色器模型支援此函式。

著色器模型 支援
著色器模型 5
著色器模型 4.1
著色器模型 4
著色器模型 3 (DirectX HLSL)
著色器模型 2 (DirectX HLSL)
著色器模型 1 (DirectX HLSL)

著色器模型 4 元件 (DirectX HLSL)