mirror of
https://github.com/gfx-rs/wgpu.git
synced 2025-12-08 21:26:17 +00:00
Co-authored-by: Jacob Hughes <j@distanthills.org> Co-authored-by: Connor Fitzgerald <connorwadefitzgerald@gmail.com> Co-authored-by: atlas dostal <rodol@rivalrebels.com>
41 lines
1.5 KiB
WebGPU Shading Language
41 lines
1.5 KiB
WebGPU Shading Language
var<private> num_subgroups_1: u32;
|
|
var<private> subgroup_id_1: u32;
|
|
var<private> subgroup_size_1: u32;
|
|
var<private> subgroup_invocation_id_1: u32;
|
|
|
|
fn main_1() {
|
|
let _e5 = subgroup_size_1;
|
|
let _e6 = subgroup_invocation_id_1;
|
|
let _e9 = subgroupBallot(((_e6 & 1u) == 1u));
|
|
let _e10 = subgroupBallot();
|
|
let _e12 = subgroupAll((_e6 != 0u));
|
|
let _e14 = subgroupAny((_e6 == 0u));
|
|
let _e15 = subgroupAdd(_e6);
|
|
let _e16 = subgroupMul(_e6);
|
|
let _e17 = subgroupMin(_e6);
|
|
let _e18 = subgroupMax(_e6);
|
|
let _e19 = subgroupAnd(_e6);
|
|
let _e20 = subgroupOr(_e6);
|
|
let _e21 = subgroupXor(_e6);
|
|
let _e22 = subgroupExclusiveAdd(_e6);
|
|
let _e23 = subgroupExclusiveMul(_e6);
|
|
let _e24 = subgroupInclusiveAdd(_e6);
|
|
let _e25 = subgroupInclusiveMul(_e6);
|
|
let _e26 = subgroupBroadcastFirst(_e6);
|
|
let _e27 = subgroupBroadcast(_e6, 4u);
|
|
let _e30 = subgroupShuffle(_e6, ((_e5 - 1u) - _e6));
|
|
let _e31 = subgroupShuffleDown(_e6, 1u);
|
|
let _e32 = subgroupShuffleUp(_e6, 1u);
|
|
let _e34 = subgroupShuffleXor(_e6, (_e5 - 1u));
|
|
return;
|
|
}
|
|
|
|
@compute @workgroup_size(1, 1, 1)
|
|
fn main(@builtin(num_subgroups) num_subgroups: u32, @builtin(subgroup_id) subgroup_id: u32, @builtin(subgroup_size) subgroup_size: u32, @builtin(subgroup_invocation_id) subgroup_invocation_id: u32) {
|
|
num_subgroups_1 = num_subgroups;
|
|
subgroup_id_1 = subgroup_id;
|
|
subgroup_size_1 = subgroup_size;
|
|
subgroup_invocation_id_1 = subgroup_invocation_id;
|
|
main_1();
|
|
}
|