| #include <metal_stdlib> |
| |
| using namespace metal; |
| struct buf0 { |
| /* 0x0000 */ float one; |
| }; |
| struct tint_array_wrapper { |
| int arr[10]; |
| }; |
| struct tint_array_wrapper_1 { |
| int arr[2]; |
| }; |
| 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_8, thread float4* const tint_symbol_3) { |
| bool x_68 = false; |
| int x_29 = 0; |
| int x_30 = 0; |
| int x_31 = 0; |
| tint_array_wrapper globalNumbers = {}; |
| int x_17 = 0; |
| int acc = 0; |
| int i_1 = 0; |
| tint_array_wrapper_1 localNumbers = {}; |
| int param = 0; |
| int x_24 = 0; |
| int x_24_phi = 0; |
| int x_23_phi = 0; |
| acc = 0; |
| i_1 = 0; |
| x_24_phi = 0; |
| x_23_phi = 0; |
| while (true) { |
| int x_33 = 0; |
| int x_92 = 0; |
| bool x_76_phi = false; |
| int x_34_phi = 0; |
| int x_25_phi = 0; |
| x_24 = x_24_phi; |
| int const x_23 = x_23_phi; |
| if ((x_23 < 4)) { |
| } else { |
| break; |
| } |
| x_68 = false; |
| x_76_phi = false; |
| while (true) { |
| bool x_81 = false; |
| int x_32 = 0; |
| bool x_81_phi = false; |
| int x_32_phi = 0; |
| int x_33_phi = 0; |
| bool x_90_phi = false; |
| bool const x_76 = x_76_phi; |
| x_30 = 0; |
| x_81_phi = x_76; |
| x_32_phi = 0; |
| while (true) { |
| x_81 = x_81_phi; |
| x_32 = x_32_phi; |
| float const x_86 = x_8.one; |
| x_33_phi = 0; |
| x_90_phi = x_81; |
| if ((x_32 < int(x_86))) { |
| } else { |
| break; |
| } |
| x_68 = true; |
| x_29 = x_32; |
| x_33_phi = x_32; |
| x_90_phi = true; |
| break; |
| { |
| x_81_phi = false; |
| x_32_phi = 0; |
| } |
| } |
| x_33 = x_33_phi; |
| bool const x_90 = x_90_phi; |
| x_34_phi = x_33; |
| if (x_90) { |
| break; |
| } |
| x_92 = 0; |
| x_68 = true; |
| x_29 = x_92; |
| x_34_phi = x_92; |
| break; |
| { |
| x_76_phi = false; |
| } |
| } |
| int const x_34 = x_34_phi; |
| x_31 = x_34; |
| int const x_93 = x_31; |
| tint_array_wrapper_1 const x_21 = localNumbers; |
| tint_array_wrapper_1 x_22_1 = x_21; |
| x_22_1.arr[1u] = x_93; |
| tint_array_wrapper_1 const x_22 = x_22_1; |
| localNumbers = x_22; |
| globalNumbers.arr[0] = 0; |
| int const x_13 = x_22.arr[1u]; |
| param = x_13; |
| x_17 = 0; |
| x_25_phi = 0; |
| while (true) { |
| int const x_25 = x_25_phi; |
| if ((x_25 <= x_13)) { |
| } else { |
| break; |
| } |
| int const x_102_save = x_13; |
| int const x_18 = globalNumbers.arr[x_102_save]; |
| if ((x_18 <= 1)) { |
| globalNumbers.arr[x_102_save] = 1; |
| } |
| { |
| int const x_19 = as_type<int>((as_type<uint>(x_25) + as_type<uint>(1))); |
| x_17 = x_19; |
| x_25_phi = x_19; |
| } |
| } |
| float const x_107 = x_8.one; |
| int const x_14 = globalNumbers.arr[as_type<int>((as_type<uint>(int(x_107)) - as_type<uint>(1)))]; |
| int const x_15 = as_type<int>(as_type<int>((as_type<uint>(x_24) + as_type<uint>(as_type<int>(x_14))))); |
| acc = x_15; |
| { |
| int const x_16 = as_type<int>((as_type<uint>(x_23) + as_type<uint>(1))); |
| i_1 = x_16; |
| x_24_phi = x_15; |
| x_23_phi = x_16; |
| } |
| } |
| if ((x_24 == as_type<int>(4))) { |
| *(tint_symbol_3) = float4(1.0f, 0.0f, 0.0f, 1.0f); |
| } else { |
| *(tint_symbol_3) = float4(0.0f, 0.0f, 0.0f, 1.0f); |
| } |
| return; |
| } |
| |
| main_out tint_symbol_inner(constant buf0& x_8, thread float4* const tint_symbol_4) { |
| main_1(x_8, 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_8 [[buffer(0)]]) { |
| thread float4 tint_symbol_5 = 0.0f; |
| main_out const inner_result = tint_symbol_inner(x_8, &(tint_symbol_5)); |
| tint_symbol_1 wrapper_result = {}; |
| wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1; |
| return wrapper_result; |
| } |
| |
| int yieldsZero_(constant buf0& x_8) { |
| bool x_116 = false; |
| int x_20 = 0; |
| int i = 0; |
| int x_26 = 0; |
| int x_134 = 0; |
| bool x_118_phi = false; |
| int x_27_phi = 0; |
| x_118_phi = false; |
| while (true) { |
| bool x_123 = false; |
| int x_28 = 0; |
| bool x_123_phi = false; |
| int x_28_phi = 0; |
| int x_26_phi = 0; |
| bool x_132_phi = false; |
| bool const x_118 = x_118_phi; |
| i = 0; |
| x_123_phi = x_118; |
| x_28_phi = 0; |
| while (true) { |
| x_123 = x_123_phi; |
| x_28 = x_28_phi; |
| float const x_128 = x_8.one; |
| x_26_phi = 0; |
| x_132_phi = x_123; |
| if ((x_28 < int(x_128))) { |
| } else { |
| break; |
| } |
| x_116 = true; |
| x_20 = x_28; |
| x_26_phi = x_28; |
| x_132_phi = true; |
| break; |
| { |
| x_123_phi = false; |
| x_28_phi = 0; |
| } |
| } |
| x_26 = x_26_phi; |
| bool const x_132 = x_132_phi; |
| x_27_phi = x_26; |
| if (x_132) { |
| break; |
| } |
| x_134 = 0; |
| x_116 = true; |
| x_20 = x_134; |
| x_27_phi = x_134; |
| break; |
| { |
| x_118_phi = false; |
| } |
| } |
| int const x_27 = x_27_phi; |
| return x_27; |
| } |
| |