dawn-cmake/test/vk-gl-cts/graphicsfuzz/cov-matching-if-always-true.../0-opt.wgsl.expected.msl

114 lines
3.4 KiB
Plaintext

#include <metal_stdlib>
using namespace metal;
struct tint_padded_array_element {
/* 0x0000 */ int el;
/* 0x0004 */ int8_t tint_pad[12];
};
struct tint_array_wrapper {
/* 0x0000 */ tint_padded_array_element arr[5];
};
struct buf0 {
/* 0x0000 */ tint_array_wrapper x_GLF_uniform_int_values;
};
struct tint_array_wrapper_1 {
int arr[4];
};
struct main_out {
float4 x_GLF_color_1;
};
struct tint_symbol_1 {
float4 x_GLF_color_1 [[color(0)]];
};
int func_i1_(constant buf0& x_8, thread int* const x) {
int a = 0;
int i = 0;
tint_array_wrapper_1 indexable = {};
int const x_72 = x_8.x_GLF_uniform_int_values.arr[0].el;
a = x_72;
int const x_74 = x_8.x_GLF_uniform_int_values.arr[0].el;
i = x_74;
while (true) {
int const x_79 = i;
int const x_81 = x_8.x_GLF_uniform_int_values.arr[1].el;
if ((x_79 < x_81)) {
} else {
break;
}
int const x_85 = x_8.x_GLF_uniform_int_values.arr[3].el;
int const x_87 = x_8.x_GLF_uniform_int_values.arr[3].el;
int const x_89 = x_8.x_GLF_uniform_int_values.arr[3].el;
int const x_91 = x_8.x_GLF_uniform_int_values.arr[3].el;
int const x_93 = a;
tint_array_wrapper_1 const tint_symbol_2 = {.arr={x_85, x_87, x_89, x_91}};
indexable = tint_symbol_2;
int const x_95 = indexable.arr[x_93];
int const x_96 = *(x);
if ((x_95 > x_96)) {
if (true) {
int const x_105 = x_8.x_GLF_uniform_int_values.arr[3].el;
return x_105;
} else {
int const x_107 = x_8.x_GLF_uniform_int_values.arr[3].el;
a = x_107;
}
} else {
if (true) {
int const x_111 = x_8.x_GLF_uniform_int_values.arr[4].el;
return x_111;
}
}
{
int const x_112 = i;
i = as_type<int>((as_type<uint>(x_112) + as_type<uint>(1)));
}
}
int const x_115 = x_8.x_GLF_uniform_int_values.arr[0].el;
return x_115;
}
void main_1(constant buf0& x_8, thread float4* const tint_symbol_4) {
int a_1 = 0;
int param = 0;
int param_1 = 0;
int const x_39 = x_8.x_GLF_uniform_int_values.arr[0].el;
param = x_39;
int const x_40 = func_i1_(x_8, &(param));
a_1 = x_40;
int const x_42 = x_8.x_GLF_uniform_int_values.arr[3].el;
param_1 = x_42;
int const x_43 = func_i1_(x_8, &(param_1));
int const x_44 = a_1;
a_1 = as_type<int>((as_type<uint>(x_44) + as_type<uint>(x_43)));
int const x_46 = a_1;
int const x_48 = x_8.x_GLF_uniform_int_values.arr[2].el;
if ((x_46 == x_48)) {
int const x_54 = x_8.x_GLF_uniform_int_values.arr[3].el;
int const x_57 = x_8.x_GLF_uniform_int_values.arr[0].el;
int const x_60 = x_8.x_GLF_uniform_int_values.arr[0].el;
int const x_63 = x_8.x_GLF_uniform_int_values.arr[3].el;
*(tint_symbol_4) = float4(float(x_54), float(x_57), float(x_60), float(x_63));
} else {
int const x_67 = x_8.x_GLF_uniform_int_values.arr[0].el;
float const x_68 = float(x_67);
*(tint_symbol_4) = float4(x_68, x_68, x_68, x_68);
}
return;
}
main_out tint_symbol_inner(constant buf0& x_8, thread float4* const tint_symbol_5) {
main_1(x_8, tint_symbol_5);
main_out const tint_symbol_3 = {.x_GLF_color_1=*(tint_symbol_5)};
return tint_symbol_3;
}
fragment tint_symbol_1 tint_symbol(constant buf0& x_8 [[buffer(0)]]) {
thread float4 tint_symbol_6 = 0.0f;
main_out const inner_result = tint_symbol_inner(x_8, &(tint_symbol_6));
tint_symbol_1 wrapper_result = {};
wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1;
return wrapper_result;
}