dawn-cmake/test/tint/vk-gl-cts/graphicsfuzz/cov-array-copies-loops-with.../0-opt.wgsl

236 lines
6.9 KiB
WebGPU Shading Language

struct strided_arr {
@size(16)
el : i32,
}
type Arr = array<strided_arr, 20u>;
struct buf0 {
x_GLF_uniform_int_values : Arr,
}
struct buf1 {
one : i32,
}
@group(0) @binding(0) var<uniform> x_6 : buf0;
var<private> x_GLF_color : vec4<f32>;
@group(0) @binding(1) var<uniform> x_19 : buf1;
fn main_1() {
var arr0 : array<i32, 10u>;
var arr1 : array<i32, 10u>;
var a : i32;
var limiter0 : i32;
var limiter1 : i32;
var b : i32;
var limiter2 : i32;
var limiter3 : i32;
var d : i32;
var ref0 : array<i32, 10u>;
var ref1 : array<i32, 10u>;
var i : i32;
let x_59 : i32 = x_6.x_GLF_uniform_int_values[3].el;
let x_61 : i32 = x_6.x_GLF_uniform_int_values[2].el;
let x_63 : i32 = x_6.x_GLF_uniform_int_values[4].el;
let x_65 : i32 = x_6.x_GLF_uniform_int_values[5].el;
let x_67 : i32 = x_6.x_GLF_uniform_int_values[6].el;
let x_69 : i32 = x_6.x_GLF_uniform_int_values[7].el;
let x_71 : i32 = x_6.x_GLF_uniform_int_values[8].el;
let x_73 : i32 = x_6.x_GLF_uniform_int_values[9].el;
let x_75 : i32 = x_6.x_GLF_uniform_int_values[0].el;
let x_77 : i32 = x_6.x_GLF_uniform_int_values[10].el;
arr0 = array<i32, 10u>(x_59, x_61, x_63, x_65, x_67, x_69, x_71, x_73, x_75, x_77);
let x_80 : i32 = x_6.x_GLF_uniform_int_values[1].el;
let x_82 : i32 = x_6.x_GLF_uniform_int_values[12].el;
let x_84 : i32 = x_6.x_GLF_uniform_int_values[15].el;
let x_86 : i32 = x_6.x_GLF_uniform_int_values[16].el;
let x_88 : i32 = x_6.x_GLF_uniform_int_values[17].el;
let x_90 : i32 = x_6.x_GLF_uniform_int_values[13].el;
let x_92 : i32 = x_6.x_GLF_uniform_int_values[14].el;
let x_94 : i32 = x_6.x_GLF_uniform_int_values[11].el;
let x_96 : i32 = x_6.x_GLF_uniform_int_values[18].el;
let x_98 : i32 = x_6.x_GLF_uniform_int_values[19].el;
arr1 = array<i32, 10u>(x_80, x_82, x_84, x_86, x_88, x_90, x_92, x_94, x_96, x_98);
let x_101 : i32 = x_6.x_GLF_uniform_int_values[8].el;
a = x_101;
loop {
let x_106 : i32 = a;
let x_108 : i32 = x_6.x_GLF_uniform_int_values[0].el;
if ((x_106 < x_108)) {
} else {
break;
}
let x_112 : i32 = x_6.x_GLF_uniform_int_values[3].el;
limiter0 = x_112;
loop {
let x_117 : i32 = limiter0;
let x_119 : i32 = x_6.x_GLF_uniform_int_values[4].el;
if ((x_117 < x_119)) {
} else {
break;
}
let x_122 : i32 = limiter0;
limiter0 = (x_122 + 1);
let x_125 : i32 = x_6.x_GLF_uniform_int_values[2].el;
limiter1 = x_125;
let x_127 : i32 = x_6.x_GLF_uniform_int_values[3].el;
b = x_127;
loop {
let x_132 : i32 = b;
let x_134 : i32 = x_6.x_GLF_uniform_int_values[1].el;
if ((x_132 < x_134)) {
} else {
break;
}
let x_137 : i32 = limiter1;
let x_139 : i32 = x_6.x_GLF_uniform_int_values[5].el;
if ((x_137 > x_139)) {
break;
}
let x_143 : i32 = limiter1;
limiter1 = (x_143 + 1);
let x_145 : i32 = b;
let x_146 : i32 = a;
let x_148 : i32 = arr1[x_146];
arr0[x_145] = x_148;
continuing {
let x_150 : i32 = b;
b = (x_150 + 1);
}
}
}
limiter2 = 0;
loop {
let x_156 : i32 = limiter2;
if ((x_156 < 5)) {
} else {
break;
}
let x_159 : i32 = limiter2;
limiter2 = (x_159 + 1);
let x_162 : i32 = arr1[1];
arr0[1] = x_162;
}
loop {
limiter3 = 0;
d = 0;
loop {
let x_172 : i32 = d;
if ((x_172 < 10)) {
} else {
break;
}
let x_175 : i32 = limiter3;
if ((x_175 > 4)) {
break;
}
let x_179 : i32 = limiter3;
limiter3 = (x_179 + 1);
let x_181 : i32 = d;
let x_182 : i32 = d;
let x_184 : i32 = arr0[x_182];
arr1[x_181] = x_184;
continuing {
let x_186 : i32 = d;
d = (x_186 + 1);
}
}
continuing {
let x_189 : i32 = x_6.x_GLF_uniform_int_values[2].el;
let x_191 : i32 = x_6.x_GLF_uniform_int_values[3].el;
if ((x_189 == x_191)) {
} else {
break;
}
}
}
continuing {
let x_193 : i32 = a;
a = (x_193 + 1);
}
}
let x_196 : i32 = x_6.x_GLF_uniform_int_values[11].el;
let x_198 : i32 = x_6.x_GLF_uniform_int_values[12].el;
let x_200 : i32 = x_6.x_GLF_uniform_int_values[11].el;
let x_202 : i32 = x_6.x_GLF_uniform_int_values[5].el;
let x_204 : i32 = x_6.x_GLF_uniform_int_values[6].el;
let x_206 : i32 = x_6.x_GLF_uniform_int_values[7].el;
let x_208 : i32 = x_6.x_GLF_uniform_int_values[8].el;
let x_210 : i32 = x_6.x_GLF_uniform_int_values[9].el;
let x_212 : i32 = x_6.x_GLF_uniform_int_values[0].el;
let x_214 : i32 = x_6.x_GLF_uniform_int_values[10].el;
ref0 = array<i32, 10u>(x_196, x_198, x_200, x_202, x_204, x_206, x_208, x_210, x_212, x_214);
let x_217 : i32 = x_6.x_GLF_uniform_int_values[11].el;
let x_219 : i32 = x_6.x_GLF_uniform_int_values[12].el;
let x_221 : i32 = x_6.x_GLF_uniform_int_values[11].el;
let x_223 : i32 = x_6.x_GLF_uniform_int_values[5].el;
let x_225 : i32 = x_6.x_GLF_uniform_int_values[6].el;
let x_227 : i32 = x_6.x_GLF_uniform_int_values[13].el;
let x_229 : i32 = x_6.x_GLF_uniform_int_values[14].el;
let x_231 : i32 = x_6.x_GLF_uniform_int_values[11].el;
let x_233 : i32 = x_6.x_GLF_uniform_int_values[18].el;
let x_235 : i32 = x_6.x_GLF_uniform_int_values[19].el;
ref1 = array<i32, 10u>(x_217, x_219, x_221, x_223, x_225, x_227, x_229, x_231, x_233, x_235);
let x_238 : i32 = x_6.x_GLF_uniform_int_values[2].el;
let x_241 : i32 = x_6.x_GLF_uniform_int_values[3].el;
let x_244 : i32 = x_6.x_GLF_uniform_int_values[3].el;
let x_247 : i32 = x_6.x_GLF_uniform_int_values[2].el;
x_GLF_color = vec4<f32>(f32(x_238), f32(x_241), f32(x_244), f32(x_247));
let x_251 : i32 = x_6.x_GLF_uniform_int_values[3].el;
i = x_251;
loop {
var x_277 : bool;
var x_278_phi : bool;
let x_256 : i32 = i;
let x_258 : i32 = x_6.x_GLF_uniform_int_values[1].el;
if ((x_256 < x_258)) {
} else {
break;
}
let x_261 : i32 = i;
let x_263 : i32 = arr0[x_261];
let x_264 : i32 = i;
let x_266 : i32 = ref0[x_264];
let x_267 : bool = (x_263 != x_266);
x_278_phi = x_267;
if (!(x_267)) {
let x_271 : i32 = i;
let x_273 : i32 = arr1[x_271];
let x_274 : i32 = i;
let x_276 : i32 = ref1[x_274];
x_277 = (x_273 != x_276);
x_278_phi = x_277;
}
let x_278 : bool = x_278_phi;
if (x_278) {
let x_282 : i32 = x_6.x_GLF_uniform_int_values[3].el;
let x_283 : f32 = f32(x_282);
x_GLF_color = vec4<f32>(x_283, x_283, x_283, x_283);
}
continuing {
let x_285 : i32 = i;
i = (x_285 + 1);
}
}
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);
}