1diagnostic(off, derivative_uniformity); 2diagnostic(off, chromium.unreachable_code); 3struct _GlobalUniforms { 4 colorGreen: vec4<f32>, 5 colorRed: vec4<f32>, 6}; 7@binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms; 8fn test_matrix_b() -> bool { 9 { 10 var ok: bool = true; 11 var num: f32 = 0.0; 12 var _skTemp0: bool; 13 if ok { 14 num = num + f32(1); 15 _skTemp0 = all(mat2x2<f32>(1.0, 2.0, 3.0, num)[0] == vec2<f32>(1.0, 2.0)); 16 } else { 17 _skTemp0 = false; 18 } 19 ok = _skTemp0; 20 var _skTemp1: bool; 21 if ok { 22 num = num + f32(1); 23 let _skTemp2 = vec2<f32>(num); 24 _skTemp1 = all(mat2x2<f32>(_skTemp2[0], _skTemp2[1], 3.0, 4.0)[1] == vec2<f32>(3.0, 4.0)); 25 } else { 26 _skTemp1 = false; 27 } 28 ok = _skTemp1; 29 var _skTemp3: bool; 30 if ok { 31 num = num + f32(1); 32 let _skTemp4 = vec3<f32>(num); 33 _skTemp3 = all(mat3x3<f32>(vec3<f32>(1.0)[0], vec3<f32>(1.0)[1], vec3<f32>(1.0)[2], _skTemp4[0], _skTemp4[1], _skTemp4[2], vec3<f32>(0.0)[0], vec3<f32>(0.0)[1], vec3<f32>(0.0)[2])[0] == vec3<f32>(1.0)); 34 } else { 35 _skTemp3 = false; 36 } 37 ok = _skTemp3; 38 var _skTemp5: bool; 39 if ok { 40 num = num + f32(1); 41 let _skTemp6 = vec3<f32>(num); 42 _skTemp5 = all(mat3x3<f32>(vec3<f32>(1.0)[0], vec3<f32>(1.0)[1], vec3<f32>(1.0)[2], _skTemp6[0], _skTemp6[1], _skTemp6[2], vec3<f32>(0.0)[0], vec3<f32>(0.0)[1], vec3<f32>(0.0)[2])[2] == vec3<f32>(0.0)); 43 } else { 44 _skTemp5 = false; 45 } 46 ok = _skTemp5; 47 var _skTemp7: bool; 48 if ok { 49 num = num + f32(1); 50 let _skTemp8 = vec3<f32>(num); 51 _skTemp7 = all(mat3x3<f32>(_skTemp8[0], _skTemp8[1], _skTemp8[2], vec3<f32>(1.0)[0], vec3<f32>(1.0)[1], vec3<f32>(1.0)[2], vec3<f32>(0.0)[0], vec3<f32>(0.0)[1], vec3<f32>(0.0)[2])[1] == vec3<f32>(1.0)); 52 } else { 53 _skTemp7 = false; 54 } 55 ok = _skTemp7; 56 var _skTemp9: bool; 57 if ok { 58 num = num + f32(1); 59 _skTemp9 = all(mat3x3<f32>(1.0, 2.0, 3.0, 4.0, 5.0, num, 7.0, 8.0, 9.0)[0] == vec3<f32>(1.0, 2.0, 3.0)); 60 } else { 61 _skTemp9 = false; 62 } 63 ok = _skTemp9; 64 var _skTemp10: bool; 65 if ok { 66 let _skTemp11 = num; 67 num = num + f32(1); 68 _skTemp10 = all(mat3x3<f32>(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, _skTemp11, 8.0, 9.0)[1] == vec3<f32>(4.0, 5.0, 6.0)); 69 } else { 70 _skTemp10 = false; 71 } 72 ok = _skTemp10; 73 var _skTemp12: bool; 74 if ok { 75 num = num + f32(1); 76 let _skTemp13 = vec4<f32>(num); 77 _skTemp12 = all(mat4x4<f32>(_skTemp13[0], _skTemp13[1], _skTemp13[2], _skTemp13[3], vec4<f32>(1.0)[0], vec4<f32>(1.0)[1], vec4<f32>(1.0)[2], vec4<f32>(1.0)[3], vec4<f32>(2.0)[0], vec4<f32>(2.0)[1], vec4<f32>(2.0)[2], vec4<f32>(2.0)[3], vec4<f32>(3.0)[0], vec4<f32>(3.0)[1], vec4<f32>(3.0)[2], vec4<f32>(3.0)[3])[1] == vec4<f32>(1.0)); 78 } else { 79 _skTemp12 = false; 80 } 81 ok = _skTemp12; 82 var _skTemp14: bool; 83 if ok { 84 num = num + f32(1); 85 let _skTemp15 = vec4<f32>(num); 86 _skTemp14 = all(mat4x4<f32>(vec4<f32>(1.0)[0], vec4<f32>(1.0)[1], vec4<f32>(1.0)[2], vec4<f32>(1.0)[3], _skTemp15[0], _skTemp15[1], _skTemp15[2], _skTemp15[3], vec4<f32>(2.0)[0], vec4<f32>(2.0)[1], vec4<f32>(2.0)[2], vec4<f32>(2.0)[3], vec4<f32>(3.0)[0], vec4<f32>(3.0)[1], vec4<f32>(3.0)[2], vec4<f32>(3.0)[3])[2] == vec4<f32>(2.0)); 87 } else { 88 _skTemp14 = false; 89 } 90 ok = _skTemp14; 91 var _skTemp16: bool; 92 if ok { 93 num = num + f32(1); 94 let _skTemp17 = vec4<f32>(num); 95 _skTemp16 = all(mat4x4<f32>(vec4<f32>(1.0)[0], vec4<f32>(1.0)[1], vec4<f32>(1.0)[2], vec4<f32>(1.0)[3], vec4<f32>(1.0)[0], vec4<f32>(1.0)[1], vec4<f32>(1.0)[2], vec4<f32>(1.0)[3], _skTemp17[0], _skTemp17[1], _skTemp17[2], _skTemp17[3], vec4<f32>(3.0)[0], vec4<f32>(3.0)[1], vec4<f32>(3.0)[2], vec4<f32>(3.0)[3])[3] == vec4<f32>(3.0)); 96 } else { 97 _skTemp16 = false; 98 } 99 ok = _skTemp16; 100 var _skTemp18: bool; 101 if ok { 102 num = num + f32(1); 103 _skTemp18 = all(mat4x4<f32>(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, num, 16.0)[3].xy == vec2<f32>(13.0, 14.0)); 104 } else { 105 _skTemp18 = false; 106 } 107 ok = _skTemp18; 108 return ok && (num == 11.0); 109 } 110} 111fn _skslMain(coords: vec2<f32>) -> vec4<f32> { 112 { 113 var _0_ok: bool = true; 114 var _1_num: f32 = 0.0; 115 var _skTemp19: bool; 116 if _0_ok { 117 _1_num = _1_num + f32(1); 118 _skTemp19 = (vec2<f32>(_1_num, 0.0).y == 0.0); 119 } else { 120 _skTemp19 = false; 121 } 122 _0_ok = _skTemp19; 123 var _skTemp20: bool; 124 if _0_ok { 125 _1_num = _1_num + f32(1); 126 _skTemp20 = (vec2<f32>(0.0, _1_num).x == 0.0); 127 } else { 128 _skTemp20 = false; 129 } 130 _0_ok = _skTemp20; 131 var _skTemp21: bool; 132 if _0_ok { 133 _1_num = _1_num + f32(1); 134 _skTemp21 = all(vec3<f32>(_1_num, 1.0, 0.0).yz == vec2<f32>(1.0, 0.0)); 135 } else { 136 _skTemp21 = false; 137 } 138 _0_ok = _skTemp21; 139 var _skTemp22: bool; 140 if _0_ok { 141 _1_num = _1_num + f32(1); 142 _skTemp22 = all(vec3<f32>(1.0, 0.0, _1_num).xy == vec2<f32>(1.0, 0.0)); 143 } else { 144 _skTemp22 = false; 145 } 146 _0_ok = _skTemp22; 147 var _skTemp23: bool; 148 if _0_ok { 149 _1_num = _1_num + f32(1); 150 _skTemp23 = all(vec3<f32>(_1_num, 1.0, 0.0).yz == vec2<f32>(1.0, 0.0)); 151 } else { 152 _skTemp23 = false; 153 } 154 _0_ok = _skTemp23; 155 var _skTemp24: bool; 156 if _0_ok { 157 _1_num = _1_num + f32(1); 158 _skTemp24 = all(vec4<f32>(_1_num, 1.0, 0.0, 0.0).yzw == vec3<f32>(1.0, 0.0, 0.0)); 159 } else { 160 _skTemp24 = false; 161 } 162 _0_ok = _skTemp24; 163 var _skTemp25: bool; 164 if _0_ok { 165 _1_num = _1_num + f32(1); 166 _skTemp25 = (vec4<f32>(1.0, _1_num, 1.0, 0.0).x == 1.0); 167 } else { 168 _skTemp25 = false; 169 } 170 _0_ok = _skTemp25; 171 var _skTemp26: bool; 172 if _0_ok { 173 _1_num = _1_num + f32(1); 174 _skTemp26 = (vec4<f32>(1.0, 0.0, _1_num, 1.0).w == 1.0); 175 } else { 176 _skTemp26 = false; 177 } 178 _0_ok = _skTemp26; 179 var _skTemp27: bool; 180 if _0_ok { 181 _1_num = _1_num + f32(1); 182 _skTemp27 = all(vec4<f32>(1.0, 0.0, 1.0, _1_num).xyz == vec3<f32>(1.0, 0.0, 1.0)); 183 } else { 184 _skTemp27 = false; 185 } 186 _0_ok = _skTemp27; 187 var _skTemp28: vec4<f32>; 188 var _skTemp29: bool; 189 if _0_ok && (_1_num == 9.0) { 190 let _skTemp30 = test_matrix_b(); 191 _skTemp29 = _skTemp30; 192 } else { 193 _skTemp29 = false; 194 } 195 if _skTemp29 { 196 _skTemp28 = _globalUniforms.colorGreen; 197 } else { 198 _skTemp28 = _globalUniforms.colorRed; 199 } 200 return _skTemp28; 201 } 202} 203@fragment fn main(@location(0) _coords: vec2<f32>) -> @location(0) vec4<f32> { 204 return _skslMain(_coords); 205} 206