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

제한

  • retc는 프로그램의 어느 위치에나 여러 번 나타날 수 있습니다.
  • 주 프로그램 또는 서브루틴의 마지막 명령은 retc_z 또는 retc_nz일 수 없습니다. 대신 무조건 ret를 사용할 수 있습니다.
  • src0에서 제공하는 32비트 레지스터는 비트 수준에서 테스트됩니다. 0이 아닌 비트가 있으면 ret_nz가 반환됩니다. 모든 비트가 0이면 retc_z가 반환됩니다.

이 명령은 다음 셰이더 단계에 적용됩니다.

꼭짓점 셰이더 기하 도형 셰이더 픽셀 셰이더
x x x

최소 셰이더 모델

이 함수는 다음 셰이더 모델에서 지원됩니다.

셰이더 모델 지원됨
셰이더 모델 5
셰이더 모델 4.1
셰이더 모델 4
셰이더 모델 3(DirectX HLSL) 아니요
셰이더 모델 2(DirectX HLSL) 아니요
셰이더 모델 1(DirectX HLSL) 아니요

셰이더 모델 4 어셈블리(DirectX HLSL)