dawn-cmake/test/vk-gl-cts/graphicsfuzz/struct-controlled-loop/0-opt.wgsl

53 lines
942 B
WebGPU Shading Language

struct S {
f0 : i32;
f1 : vec3<bool>;
};
[[block]]
struct buf0 {
injectionSwitch : vec2<f32>;
};
[[group(0), binding(0)]] var<uniform> x_7 : buf0;
var<private> x_GLF_color : vec4<f32>;
fn main_1() {
var ll : S;
var sums : array<f32, 9>;
ll = S(0, vec3<bool>(true, true, true));
loop {
let x_12 : S = ll;
let x_45 : f32 = x_7.injectionSwitch.y;
if ((x_12.f0 != i32(x_45))) {
} else {
break;
}
sums[0] = 0.0;
continuing {
let x_13 : S = ll;
let x_50 : S = ll;
var x_51_1 : S = x_50;
x_51_1.f0 = (x_13.f0 + 1);
let x_51 : S = x_51_1;
ll = x_51;
}
}
let x_53 : f32 = sums[0];
let x_54 : vec2<f32> = vec2<f32>(x_53, x_53);
x_GLF_color = vec4<f32>(1.0, x_54.x, x_54.y, 1.0);
return;
}
struct main_out {
[[location(0)]]
x_GLF_color_1 : vec4<f32>;
};
[[stage(fragment)]]
fn main() -> main_out {
main_1();
return main_out(x_GLF_color);
}