diagnostic(off, derivative_uniformity); diagnostic(off, chromium.unreachable_code); struct _GlobalUniforms { colorRed: vec4, colorGreen: vec4, unknownInput: f32, }; @binding(0) @group(0) var _globalUniforms: _GlobalUniforms; fn test_int_b() -> bool { { var ok: bool = true; var x: vec4 = vec4(6, 6, 7, 8); ok = ok && all(x == vec4(6, 6, 7, 8)); x = vec4(7, 9, 9, 9); ok = ok && all(x == vec4(7, 9, 9, 9)); x = vec4(9, 9, 10, 10); ok = ok && all(x == vec4(9, 9, 10, 10)); x = vec4((vec3(6)), x.w); ok = ok && all(x == vec4(6, 6, 6, 10)); x = vec4((vec2(3)), x.zw); ok = ok && all(x == vec4(3, 3, 6, 10)); x = vec4(6); ok = ok && all(x == vec4(6)); x = vec4(6, 6, 7, 8); ok = ok && all(x == vec4(6, 6, 7, 8)); x = vec4(-7, -9, -9, -9); ok = ok && all(x == vec4(-7, -9, -9, -9)); x = vec4(9, 9, 10, 10); ok = ok && all(x == vec4(9, 9, 10, 10)); x = vec4((vec3(6)), x.w); ok = ok && all(x == vec4(6, 6, 6, 10)); x = vec4((vec2(8)), x.zw); ok = ok && all(x == vec4(8, 8, 6, 10)); x = vec4(200, 100, 50, 25); ok = ok && all(x == vec4(200, 100, 50, 25)); x = vec4(6); ok = ok && all(x == vec4(6)); let unknown: i32 = i32(_globalUniforms.unknownInput); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(0); ok = ok && all(x == vec4(0)); x = vec4(0) / unknown; ok = ok && all(x == vec4(0)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(0); ok = ok && all(x == vec4(0)); x = 0 / vec4(unknown); ok = ok && all(x == vec4(0)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(0); ok = ok && all(x == vec4(0)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); ok = ok && all(x == vec4(unknown)); x = vec4(unknown); x = x + 1; x = x - 1; ok = ok && all(x == vec4(unknown)); x = vec4(unknown); x = x + 1; x = x - 1; ok = ok && all(x == vec4(unknown)); return ok; } } fn _skslMain(coords: vec2) -> vec4 { { var _0_ok: bool = true; var _1_x: vec4 = vec4(6.0, 6.0, 7.0, 8.0); _0_ok = _0_ok && all(_1_x == vec4(6.0, 6.0, 7.0, 8.0)); _1_x = vec4(7.0, 9.0, 9.0, 9.0); _0_ok = _0_ok && all(_1_x == vec4(7.0, 9.0, 9.0, 9.0)); _1_x = vec4(9.0, 9.0, 10.0, 10.0); _0_ok = _0_ok && all(_1_x == vec4(9.0, 9.0, 10.0, 10.0)); _1_x = vec4((vec3(6.0)), _1_x.w); _0_ok = _0_ok && all(_1_x == vec4(6.0, 6.0, 6.0, 10.0)); _1_x = vec4((vec2(3.0)), _1_x.zw); _0_ok = _0_ok && all(_1_x == vec4(3.0, 3.0, 6.0, 10.0)); _1_x = vec4(6.0); _0_ok = _0_ok && all(_1_x == vec4(6.0)); _1_x = vec4(6.0, 6.0, 7.0, 8.0); _0_ok = _0_ok && all(_1_x == vec4(6.0, 6.0, 7.0, 8.0)); _1_x = vec4(-7.0, -9.0, -9.0, -9.0); _0_ok = _0_ok && all(_1_x == vec4(-7.0, -9.0, -9.0, -9.0)); _1_x = vec4(9.0, 9.0, 10.0, 10.0); _0_ok = _0_ok && all(_1_x == vec4(9.0, 9.0, 10.0, 10.0)); _1_x = vec4((vec3(6.0)), _1_x.w); _0_ok = _0_ok && all(_1_x == vec4(6.0, 6.0, 6.0, 10.0)); _1_x = vec4((vec2(8.0)), _1_x.zw); _0_ok = _0_ok && all(_1_x == vec4(8.0, 8.0, 6.0, 10.0)); _1_x = vec4(2.0, 1.0, 0.5, 0.25); _0_ok = _0_ok && all(_1_x == vec4(2.0, 1.0, 0.5, 0.25)); _1_x = vec4(6.0); _0_ok = _0_ok && all(_1_x == vec4(6.0)); let _2_unknown: f32 = _globalUniforms.unknownInput; _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(0.0); _0_ok = _0_ok && all(_1_x == vec4(0.0)); _1_x = vec4(0.0) / _2_unknown; _0_ok = _0_ok && all(_1_x == vec4(0.0)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(0.0); _0_ok = _0_ok && all(_1_x == vec4(0.0)); _1_x = 0.0 / vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(0.0)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(0.0); _0_ok = _0_ok && all(_1_x == vec4(0.0)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _1_x = _1_x + 1.0; _1_x = _1_x - 1.0; _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); _1_x = vec4(_2_unknown); _1_x = _1_x + 1.0; _1_x = _1_x - 1.0; _0_ok = _0_ok && all(_1_x == vec4(_2_unknown)); var _skTemp0: vec4; var _skTemp1: bool; if _0_ok { let _skTemp2 = test_int_b(); _skTemp1 = _skTemp2; } else { _skTemp1 = false; } if _skTemp1 { _skTemp0 = _globalUniforms.colorGreen; } else { _skTemp0 = _globalUniforms.colorRed; } return _skTemp0; } } @fragment fn main(@location(0) _coords: vec2) -> @location(0) vec4 { return _skslMain(_coords); }