| struct ComputeInputs0 { |
| [[builtin(local_invocation_id)]] local_invocation_id : vec3<u32>; |
| }; |
| struct ComputeInputs1 { |
| [[builtin(workgroup_id)]] workgroup_id : vec3<u32>; |
| }; |
| |
| [[stage(compute), workgroup_size(1)]] |
| fn main( |
| inputs0 : ComputeInputs0, |
| [[builtin(local_invocation_index)]] local_invocation_index : u32, |
| [[builtin(global_invocation_id)]] global_invocation_id : vec3<u32>, |
| inputs1 : ComputeInputs1, |
| ) { |
| let foo : u32 = |
| inputs0.local_invocation_id.x + |
| local_invocation_index + |
| global_invocation_id.x + |
| inputs1.workgroup_id.x; |
| } |