firstbithigh
Description
Find first set bit starting at high bit and working down.
Signature
int firstbithigh(int value); vector<int, N> firstbithigh<N:int>(vector<int, N> value); uint firstbithigh(uint value); vector<uint, N> firstbithigh<N:int>(vector<uint, N> value);
Generic Parameters
N : int
Parameters
value : int
The value to find set bits in.
value : vector<int, N>
The value to find set bits in.
value : uint
The value to find set bits in.
value : vector<uint, N>
The value to find set bits in.
Return value
The bit index number of the most significant bit, or returns -1 if value is either 0 if value is a signed type and equal to -1.
Remarks
If value is unsigned, or signed with positive value, the bit index returned is the highest 1-bit. If value is signed with negative value, the bit index returned is the highest 0-bit. For SPIR-V, this function maps to GLSL extended instruction FindSMsb if value is signed, or FindUMsb if value is unsigned.
Availability and Requirements
Defined for the following targets:
hlsl
Available in all stages.
glsl
Available in all stages.
cpp
Available in all stages.
cuda
Available in all stages.
metal
Available in all stages.
wgsl
Available in all stages.
spirv
Available in all stages.