#include using namespace metal; struct tint_padded_array_element { /* 0x0000 */ float 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_float_values; }; struct tint_padded_array_element_1 { /* 0x0000 */ int el; /* 0x0004 */ int8_t tint_pad_1[12]; }; struct tint_array_wrapper_1 { /* 0x0000 */ tint_padded_array_element_1 arr[3]; }; struct buf1 { /* 0x0000 */ tint_array_wrapper_1 x_GLF_uniform_int_values; }; struct main_out { float4 x_GLF_color_1; }; struct tint_symbol_1 { float4 x_GLF_color_1 [[color(0)]]; }; void main_1(constant buf0& x_6, constant buf1& x_10, thread float4* const tint_symbol_4) { float2x2 M1 = float2x2(0.0f); float a = 0.0f; int c = 0; float const x_41 = x_6.x_GLF_uniform_float_values.arr[1].el; float const x_43 = x_6.x_GLF_uniform_float_values.arr[2].el; float const x_45 = x_6.x_GLF_uniform_float_values.arr[3].el; float const x_47 = x_6.x_GLF_uniform_float_values.arr[4].el; M1 = float2x2(float2(x_41, x_43), float2(x_45, x_47)); float const x_52 = x_6.x_GLF_uniform_float_values.arr[1].el; a = x_52; int const x_54 = x_10.x_GLF_uniform_int_values.arr[1].el; c = x_54; while (true) { int const x_59 = c; int const x_61 = x_10.x_GLF_uniform_int_values.arr[0].el; if ((x_59 < x_61)) { } else { break; } int const x_65 = x_10.x_GLF_uniform_int_values.arr[2].el; int const x_66 = c; float const x_70 = M1[x_65][clamp(~(x_66), 0, 1)]; float const x_71 = a; a = (x_71 + x_70); { int const x_73 = c; c = (x_73 + 1); } } float const x_75 = a; float const x_77 = x_6.x_GLF_uniform_float_values.arr[0].el; if ((x_75 == x_77)) { int const x_83 = x_10.x_GLF_uniform_int_values.arr[2].el; int const x_86 = x_10.x_GLF_uniform_int_values.arr[1].el; int const x_89 = x_10.x_GLF_uniform_int_values.arr[1].el; int const x_92 = x_10.x_GLF_uniform_int_values.arr[2].el; *(tint_symbol_4) = float4(float(x_83), float(x_86), float(x_89), float(x_92)); } else { int const x_96 = x_10.x_GLF_uniform_int_values.arr[2].el; float const x_97 = float(x_96); *(tint_symbol_4) = float4(x_97, x_97, x_97, x_97); } return; } fragment tint_symbol_1 tint_symbol(constant buf0& x_6 [[buffer(0)]], constant buf1& x_10 [[buffer(1)]]) { thread float4 tint_symbol_5 = 0.0f; main_1(x_6, x_10, &(tint_symbol_5)); main_out const tint_symbol_2 = {.x_GLF_color_1=tint_symbol_5}; tint_symbol_1 const tint_symbol_3 = {.x_GLF_color_1=tint_symbol_2.x_GLF_color_1}; return tint_symbol_3; }