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 может отображаться в любом месте программы, любое количество раз.
  • Последняя инструкция в программе или подпрограмме main не может быть retc_z или retc_nz. Вместо этого можно использовать безусловное значение ret .
  • 32-разрядный регистр, предоставляемый src0 , тестируется на битовом уровне. Если какой-либо бит не равен нулям, возвращается ret_nz . Если все биты равны нулю, возвращается retc_z .

Эта инструкция применяется к следующим этапам шейдера:

Вершинный построитель текстуры Шейдер геометрии Построитель текстуры
x x x

Минимальная модель шейдера

Эта функция поддерживается в следующих моделях шейдеров.

Модель шейдера Поддерживается
Модель шейдера 5 да
Модель шейдера 4.1 да
Модель шейдера 4 да
Модель шейдера 3 (DirectX HLSL) нет
Модель шейдера 2 (DirectX HLSL) нет
Модель шейдера 1 (DirectX HLSL) нет

Сборка шейдера модели 4 (DirectX HLSL)