Skip to main content

ds_bpermute

Function ds_bpermute 

Source
pub unsafe fn ds_bpermute(lane: u32, value: u32) -> u32
🔬This is a nightly-only experimental API. (stdarch_amdgpu #149988)
Available on AMD GPU only.
Expand description

Gather data across all lanes in a wavefront.

Returns the value given to ds_permute by lane lane.

Reading from inactive lanes returns 0.

This intrinsic does not behave like a normal function call; it is a “convergent” operation and as such has non-standard control-flow effects which need special treatment by the language. Rust currently does not properly support convergent operations. This operation is hence provided on a best-effort basis. Using it may result in incorrect code under some circumstances.