#include using namespace metal; struct buf0 { /* 0x0000 */ int zero; }; struct main_out { float4 x_GLF_color_1; }; struct tint_symbol_1 { float4 x_GLF_color_1 [[color(0)]]; }; int func_i1_(thread int* const x) { int const x_45 = *(x); if ((x_45 == 10)) { discard_fragment(); } int const x_49 = *(x); return x_49; } void main_1(constant buf0& x_9, thread float4* const tint_symbol_3) { int a = 0; int b = 0; int param = 0; int x_37 = 0; int x_35_phi = 0; a = 0; int const x_33 = x_9.zero; b = x_33; x_35_phi = x_33; while (true) { int const x_35 = x_35_phi; param = x_35; x_37 = func_i1_(&(param)); a = x_37; int const x_36 = as_type((as_type(x_35) + as_type(1))); b = x_36; x_35_phi = x_36; if ((x_36 < 4)) { } else { break; } } if ((x_37 == as_type(3))) { *(tint_symbol_3) = float4(1.0f, 0.0f, 0.0f, 1.0f); } else { *(tint_symbol_3) = float4(0.0f, 0.0f, 0.0f, 0.0f); } return; } main_out tint_symbol_inner(constant buf0& x_9, thread float4* const tint_symbol_4) { main_1(x_9, tint_symbol_4); main_out const tint_symbol_2 = {.x_GLF_color_1=*(tint_symbol_4)}; return tint_symbol_2; } fragment tint_symbol_1 tint_symbol(constant buf0& x_9 [[buffer(0)]]) { thread float4 tint_symbol_5 = 0.0f; main_out const inner_result = tint_symbol_inner(x_9, &(tint_symbol_5)); tint_symbol_1 wrapper_result = {}; wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1; return wrapper_result; }