@group(0) @binding(0) var output_0_global: array; @group(0) @binding(1) var info: array; const arrays_0: array = array(f32(3u),f32(5u),f32(1u),); const WORKGROUP_SIZE_X = 16u; const WORKGROUP_SIZE_Y = 16u; const WORKGROUP_SIZE_Z = 1u; @compute @workgroup_size(16, 16, 1) fn main( @builtin(global_invocation_id) global_id: vec3, @builtin(num_workgroups) num_workgroups: vec3, ) {let id = (global_id.z * num_workgroups.x * WORKGROUP_SIZE_X * num_workgroups.y * WORKGROUP_SIZE_Y) + (global_id.y * num_workgroups.x * WORKGROUP_SIZE_X) + global_id.x; let rank: u32 = info[0]; let _0 = arrayLength(&output_0_global); let _1 = id < _0; if _1 { let _2 = arrays_0[id]; output_0_global[id] = _2; } }