ishr (sm4 - asm)

Arithmetic shift right (sign extending).

ishr dest[.mask], src0[.swizzle], src1.select_component
Item Description
dest
[in] Contains the result of the operation.
src0
[in] Contains the value to be shifted.
src1
[in] Contains the shift amount.

Remarks

This instruction performs a component-wise arithmetic shift of each 32-bit value in src0 right by an unsigned integer bit count provided by the LSB 5 bits (0-31 range) in src1.select_component, replicating the value of bit 31. The 32-bit per component result is placed in dest. The count is a scalar value applied to all components.

This instruction applies to the following shader stages:

Vertex Shader Geometry Shader Pixel Shader
x x x

Minimum Shader Model

This function is supported in the following shader models.

Shader Model Supported
Shader Model 5 yes
Shader Model 4.1 yes
Shader Model 4 yes
Shader Model 3 (DirectX HLSL) no
Shader Model 2 (DirectX HLSL) no
Shader Model 1 (DirectX HLSL) no

Shader Model 4 Assembly (DirectX HLSL)