| [[block]] |
| struct buf1 { |
| resolution : vec2<f32>; |
| }; |
| |
| [[block]] |
| struct buf0 { |
| injectionSwitch : vec2<f32>; |
| }; |
| |
| var<private> gl_FragCoord : vec4<f32>; |
| |
| [[group(0), binding(1)]] var<uniform> x_9 : buf1; |
| |
| [[group(0), binding(0)]] var<uniform> x_13 : buf0; |
| |
| var<private> x_GLF_color : vec4<f32>; |
| |
| fn checkSwap_f1_f1_(a : ptr<function, f32>, b : ptr<function, f32>) -> bool { |
| var x_144 : bool; |
| let x_146 : f32 = gl_FragCoord.y; |
| let x_148 : f32 = x_9.resolution.y; |
| if ((x_146 < (x_148 / 2.0))) { |
| let x_154 : f32 = *(a); |
| let x_155 : f32 = *(b); |
| x_144 = (x_154 > x_155); |
| } else { |
| let x_157 : f32 = *(a); |
| let x_158 : f32 = *(b); |
| x_144 = (x_157 < x_158); |
| } |
| let x_160 : bool = x_144; |
| return x_160; |
| } |
| |
| fn main_1() { |
| var i : i32; |
| var data : array<f32, 10>; |
| var i_1 : i32; |
| var j : i32; |
| var doSwap : bool; |
| var param : f32; |
| var param_1 : f32; |
| var temp : f32; |
| i = 0; |
| loop { |
| let x_56 : i32 = i; |
| if ((x_56 < 10)) { |
| } else { |
| break; |
| } |
| let x_59 : i32 = i; |
| let x_60 : i32 = i; |
| let x_64 : f32 = x_13.injectionSwitch.y; |
| data[x_59] = (f32((10 - x_60)) * x_64); |
| |
| continuing { |
| let x_67 : i32 = i; |
| i = (x_67 + 1); |
| } |
| } |
| i_1 = 0; |
| loop { |
| let x_73 : i32 = i_1; |
| if ((x_73 < 9)) { |
| } else { |
| break; |
| } |
| j = 0; |
| loop { |
| let x_80 : i32 = j; |
| if ((x_80 < 10)) { |
| } else { |
| break; |
| } |
| let x_83 : i32 = j; |
| let x_84 : i32 = i_1; |
| if ((x_83 < (x_84 + 1))) { |
| continue; |
| } |
| let x_89 : i32 = i_1; |
| let x_90 : i32 = j; |
| let x_92 : f32 = data[x_89]; |
| param = x_92; |
| let x_94 : f32 = data[x_90]; |
| param_1 = x_94; |
| let x_95 : bool = checkSwap_f1_f1_(&(param), &(param_1)); |
| doSwap = x_95; |
| let x_96 : bool = doSwap; |
| if (x_96) { |
| let x_99 : i32 = i_1; |
| let x_101 : f32 = data[x_99]; |
| temp = x_101; |
| let x_102 : i32 = i_1; |
| let x_103 : i32 = j; |
| let x_105 : f32 = data[x_103]; |
| data[x_102] = x_105; |
| let x_107 : i32 = j; |
| let x_108 : f32 = temp; |
| data[x_107] = x_108; |
| } |
| |
| continuing { |
| let x_110 : i32 = j; |
| j = (x_110 + 1); |
| } |
| } |
| |
| continuing { |
| let x_112 : i32 = i_1; |
| i_1 = (x_112 + 1); |
| } |
| } |
| let x_115 : f32 = gl_FragCoord.x; |
| let x_117 : f32 = x_9.resolution.x; |
| if ((x_115 < (x_117 / 2.0))) { |
| let x_124 : f32 = data[0]; |
| let x_127 : f32 = data[5]; |
| let x_130 : f32 = data[9]; |
| x_GLF_color = vec4<f32>((x_124 / 10.0), (x_127 / 10.0), (x_130 / 10.0), 1.0); |
| } else { |
| let x_134 : f32 = data[5]; |
| let x_137 : f32 = data[9]; |
| let x_140 : f32 = data[0]; |
| x_GLF_color = vec4<f32>((x_134 / 10.0), (x_137 / 10.0), (x_140 / 10.0), 1.0); |
| } |
| return; |
| } |
| |
| struct main_out { |
| [[location(0)]] |
| x_GLF_color_1 : vec4<f32>; |
| }; |
| |
| [[stage(fragment)]] |
| fn main([[builtin(position)]] gl_FragCoord_param : vec4<f32>) -> main_out { |
| gl_FragCoord = gl_FragCoord_param; |
| main_1(); |
| return main_out(x_GLF_color); |
| } |