diagnostic(off, derivative_uniformity); diagnostic(off, chromium.unreachable_code); struct CSIn { @builtin(global_invocation_id) sk_GlobalInvocationID: vec3, }; struct inputBlock { offset: u32, src: array, }; @group(0) @binding(0) var _storage0 : inputBlock; struct outputBlock { dest: array, }; @group(0) @binding(1) var _storage1 : outputBlock; fn _skslMain(_stageIn: CSIn) { { let _skTemp2 = _stageIn.sk_GlobalInvocationID.x; let _skTemp3 = _stageIn.sk_GlobalInvocationID.x; let _skTemp4 = _stageIn.sk_GlobalInvocationID.x + _storage0.offset; _storage1.dest[_skTemp2] = _storage0.src[_skTemp3] + _storage0.src[_skTemp4]; } } @compute @workgroup_size(256, 1, 1) fn main(_stageIn: CSIn) { _skslMain(_stageIn); }