imad (sm4 - asm)
Целое число со знаком умножает и добавляет.
imad dest[.mask], [-]src0[.swizzle], [-]src1[.swizzle], [-]src2[.swizzle] |
---|
Элемент | Описание |
---|---|
Dest |
[in] Результат операции. |
src0 |
[in] Значение для умножения с помощью src1. |
src1 |
[in] Значение для умножения с помощью src0. |
src2 |
[in] Значение, добавляемое к произведению src0 и src1. |
Комментарии
Компонентный imul из 32-разрядных операндов src0 и src1 (со знаком), сохраняя низкие 32-разрядные значения (на каждый компонент) результата, а затем iaddsrc2, что приводит к правильному низкому 32-разрядному результату (для каждого компонента). 32-разрядные результаты помещаются в dest.
Необязательный модификатор negate для исходных операндов принимает дополнение 2 перед выполнением арифметической операции.
Эта инструкция применяется к следующим этапам шейдера:
Вершинный построитель текстуры | Шейдер геометрии | Построитель текстуры |
---|---|---|
x | x | x |
Минимальная модель шейдера
Эта функция поддерживается в следующих моделях шейдеров.
Модель шейдера | Поддерживается |
---|---|
Модель шейдера 5 | да |
Модель шейдера 4.1 | да |
Модель шейдера 4 | да |
Модель шейдера 3 (DirectX HLSL) | нет |
Модель шейдера 2 (DirectX HLSL) | нет |
Модель шейдера 1 (DirectX HLSL) | нет |