dawn-cmake/test/tint/vk-gl-cts/graphicsfuzz/spv-double-branch-to-same-b.../1.wgsl

119 lines
2.5 KiB
WebGPU Shading Language

struct buf1 {
resolution : vec2<f32>,
}
struct buf0 {
injectionSwitch : vec2<f32>,
}
var<private> gl_FragCoord : vec4<f32>;
@group(0) @binding(1) var<uniform> x_6 : buf1;
@group(0) @binding(0) var<uniform> x_9 : buf0;
var<private> x_GLF_color : vec4<f32>;
fn main_1() {
var data : array<f32, 10u>;
var x_41_phi : i32;
var x_53_phi : i32;
x_41_phi = 0;
loop {
var x_42 : i32;
let x_41 : i32 = x_41_phi;
if ((x_41 < 10)) {
} else {
break;
}
continuing {
let x_49 : f32 = x_9.injectionSwitch.y;
data[x_41] = (f32((10 - x_41)) * x_49);
x_42 = (x_41 + 1);
x_41_phi = x_42;
}
}
x_53_phi = 0;
loop {
var x_54 : i32;
var x_60_phi : i32;
let x_53 : i32 = x_53_phi;
if ((x_53 < 9)) {
} else {
break;
}
x_60_phi = 0;
loop {
var x_83 : bool;
var x_84 : bool;
var x_61 : i32;
var x_85_phi : bool;
let x_60 : i32 = x_60_phi;
if ((x_60 < 10)) {
} else {
break;
}
if ((x_60 < (x_53 + 1))) {
continue;
}
let x_70_save = x_53;
let x_71 : f32 = data[x_70_save];
let x_72_save = x_60;
let x_73 : f32 = data[x_72_save];
let x_75 : f32 = gl_FragCoord.y;
let x_77 : f32 = x_6.resolution.y;
if ((x_75 < (x_77 * 0.5))) {
x_83 = (x_71 > x_73);
x_85_phi = x_83;
} else {
x_84 = (x_71 < x_73);
x_85_phi = x_84;
}
let x_85 : bool = x_85_phi;
if (x_85) {
let x_88 : f32 = data[x_70_save];
let x_89 : f32 = data[x_72_save];
data[x_70_save] = x_89;
data[x_72_save] = x_88;
}
continuing {
x_61 = (x_60 + 1);
x_60_phi = x_61;
}
}
continuing {
x_54 = (x_53 + 1);
x_53_phi = x_54;
}
}
let x_91 : f32 = gl_FragCoord.x;
let x_93 : f32 = x_6.resolution.x;
if ((x_91 < (x_93 * 0.5))) {
let x_100 : f32 = data[0];
let x_103 : f32 = data[5];
let x_106 : f32 = data[9];
x_GLF_color = vec4<f32>((x_100 * 0.100000001), (x_103 * 0.100000001), (x_106 * 0.100000001), 1.0);
} else {
let x_110 : f32 = data[5];
let x_113 : f32 = data[9];
let x_116 : f32 = data[0];
x_GLF_color = vec4<f32>((x_110 * 0.100000001), (x_113 * 0.100000001), (x_116 * 0.100000001), 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);
}