spirv_std::arch

Function subgroup_ballot_find_msb

Source
pub unsafe fn subgroup_ballot_find_msb(subgroup_mask: SubgroupMask) -> u32
Expand description

Find the most significant bit set to 1 in Value, considering only the bits in Value required to represent all bits of the group’s invocations. If none of the considered bits is set to 1, the resulting value is undefined.

Result Type must be a scalar of integer type, whose Signedness operand is 0.

Execution is a Scope that identifies the group of invocations affected by this command. It must be Subgroup.

Value must be a vector of four components of integer type scalar, whose Width operand is 32 and whose Signedness operand is 0.

Value is a set of bitfields where the first invocation is represented in the lowest bit of the first vector component and the last (up to the size of the group) is the higher bit number of the last bitmask needed to represent all bits of the group invocations.

Requires Capability GroupNonUniformBallot.