1diagnostic(off, derivative_uniformity); 2diagnostic(off, chromium.unreachable_code); 3struct FSOut { 4 @location(0) sk_FragColor: vec4<f32>, 5}; 6struct _GlobalUniforms { 7 uFloat: f32, 8}; 9@binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms; 10fn various_parameter_types_vhhh(_stageOut: ptr<function, FSOut>, a: f32, b: ptr<function, f32>, c: ptr<function, f32>) { 11 { 12 (*_stageOut).sk_FragColor = vec4<f32>(a, (*b), (*c), _globalUniforms.uFloat); 13 (*b) = a; 14 (*c) = _globalUniforms.uFloat; 15 } 16} 17fn one_out_param_vh(h: ptr<function, f32>) { 18 { 19 (*h) = 2.0; 20 } 21} 22fn one_out_param_indirect_vh(h: ptr<function, f32>) { 23 { 24 var _skTemp0: f32; 25 one_out_param_vh(&_skTemp0); 26 (*h) = _skTemp0; 27 } 28} 29struct S { 30 v: vec4<f32>, 31}; 32fn _skslMain(_stageOut: ptr<function, FSOut>) { 33 { 34 var x: f32 = 1.0; 35 var _skTemp1: f32; 36 one_out_param_vh(&_skTemp1); 37 x = _skTemp1; 38 var _skTemp2: f32; 39 one_out_param_indirect_vh(&_skTemp2); 40 x = _skTemp2; 41 var _skTemp3: f32; 42 var _skTemp4: f32 = x; 43 various_parameter_types_vhhh(_stageOut, x + 1.0, &_skTemp3, &_skTemp4); 44 x = _skTemp3; 45 x = _skTemp4; 46 var v: vec4<f32>; 47 var _skTemp5: f32; 48 var _skTemp6: f32 = v.x; 49 various_parameter_types_vhhh(_stageOut, x + 1.0, &_skTemp5, &_skTemp6); 50 v.x = _skTemp5; 51 v.x = _skTemp6; 52 var _skTemp7: f32; 53 var _skTemp8: f32 = v.y; 54 various_parameter_types_vhhh(_stageOut, x + 1.0, &_skTemp7, &_skTemp8); 55 v.y = _skTemp7; 56 v.y = _skTemp8; 57 var _skTemp9: f32; 58 var _skTemp10: f32 = v.y; 59 various_parameter_types_vhhh(_stageOut, x + 1.0, &_skTemp9, &_skTemp10); 60 v.x = _skTemp9; 61 v.y = _skTemp10; 62 var s: S; 63 var _skTemp11: f32; 64 var _skTemp12: f32 = x; 65 various_parameter_types_vhhh(_stageOut, x + 1.0, &_skTemp11, &_skTemp12); 66 s.v.x = _skTemp11; 67 x = _skTemp12; 68 var _skTemp13: f32; 69 var _skTemp14: f32 = x; 70 various_parameter_types_vhhh(_stageOut, x + 1.0, &_skTemp13, &_skTemp14); 71 s.v.y = _skTemp13; 72 x = _skTemp14; 73 } 74} 75@fragment fn main() -> FSOut { 76 var _stageOut: FSOut; 77 _skslMain(&_stageOut); 78 return _stageOut; 79} 80