1diagnostic(off, derivative_uniformity); 2diagnostic(off, chromium.unreachable_code); 3struct FSOut { 4 @location(0) sk_FragColor: vec4<f32>, 5}; 6struct _GlobalUniforms { 7 colorGreen: vec4<f32>, 8 colorRed: vec4<f32>, 9}; 10@binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms; 11fn checkIntrinsicAsFunctionArg_bf3i3(f3: vec3<f32>, e3: vec3<i32>) -> bool { 12 { 13 return all(f3 == vec3<f32>(0.75)) && all(e3 == vec3<i32>(3)); 14 } 15} 16fn _skslMain(coords: vec2<f32>) -> vec4<f32> { 17 { 18 let value: vec4<f32> = vec4<f32>(_globalUniforms.colorGreen.yyyy * 6.0); 19 var _0_exp: vec4<i32>; 20 var result: vec4<f32>; 21 var ok: vec4<bool>; 22 let _skTemp0 = frexp(value.x); 23 _0_exp.x = _skTemp0.exp; 24 result.x = _skTemp0.fract; 25 ok.x = (result.x == 0.75) && (_0_exp.x == 3); 26 let _skTemp1 = frexp(value.xy); 27 _0_exp = vec4<i32>((_skTemp1.exp), _0_exp.zw); 28 result = vec4<f32>((_skTemp1.fract), result.zw); 29 ok.y = (result.y == 0.75) && (_0_exp.y == 3); 30 let _skTemp2 = frexp(value.xyz); 31 _0_exp = vec4<i32>((_skTemp2.exp), _0_exp.w); 32 result = vec4<f32>((_skTemp2.fract), result.w); 33 ok.z = (result.z == 0.75) && (_0_exp.z == 3); 34 let _skTemp3 = frexp(value); 35 _0_exp = _skTemp3.exp; 36 result = _skTemp3.fract; 37 ok.w = (result.w == 0.75) && (_0_exp.w == 3); 38 let _skTemp4 = frexp(value.wzy); 39 _0_exp = vec4<i32>((_skTemp4.exp), _0_exp.y).ywxz; 40 let _skTemp5 = checkIntrinsicAsFunctionArg_bf3i3(_skTemp4.fract.yxz, _0_exp.yxz); 41 let funcOk: bool = _skTemp5; 42 let _skTemp6 = all(ok); 43 return select(_globalUniforms.colorRed, _globalUniforms.colorGreen, vec4<bool>(_skTemp6 && funcOk)); 44 } 45} 46@fragment fn main() -> FSOut { 47 var _stageOut: FSOut; 48 _stageOut.sk_FragColor = _skslMain(/*fragcoord*/ vec2<f32>()); 49 return _stageOut; 50} 51