| #include <metal_stdlib> |
| |
| using namespace metal; |
| struct S { |
| int a; |
| int b; |
| int c; |
| }; |
| struct buf0 { |
| /* 0x0000 */ int one; |
| }; |
| struct tint_array_wrapper { |
| S 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_10, thread float4* const tint_symbol_3) { |
| int x_43 = 0; |
| bool x_44 = false; |
| tint_array_wrapper arr = {}; |
| S param = {}; |
| int param_1 = 0; |
| while (true) { |
| int x_50 = 0; |
| x_50 = x_10.one; |
| arr.arr[x_50].a = 2; |
| int const x_53 = arr.arr[1].a; |
| if ((x_53 < 1)) { |
| *(tint_symbol_3) = float4(0.0f, 0.0f, 0.0f, 0.0f); |
| x_44 = true; |
| break; |
| } else { |
| S const x_60 = arr.arr[1]; |
| param = x_60; |
| param_1 = as_type<int>((as_type<uint>(2) + as_type<uint>(as_type<int>(x_50)))); |
| int const x_61 = param_1; |
| S const x_63 = param; |
| S x_64_1 = x_63; |
| x_64_1.a = x_61; |
| S const x_64 = x_64_1; |
| param = x_64; |
| S const x_65 = param; |
| if ((x_65.a == 2)) { |
| S const x_70 = param; |
| S x_71_1 = x_70; |
| x_71_1.a = 9; |
| S const x_71 = x_71_1; |
| param = x_71; |
| } |
| int const x_72 = param_1; |
| S const x_75 = param; |
| S x_76_1 = x_75; |
| x_76_1.b = as_type<int>((as_type<uint>(x_72) + as_type<uint>(1))); |
| S const x_76 = x_76_1; |
| param = x_76; |
| int const x_77 = param_1; |
| S const x_80 = param; |
| S x_81_1 = x_80; |
| x_81_1.c = as_type<int>((as_type<uint>(x_77) + as_type<uint>(2))); |
| S const x_81 = x_81_1; |
| param = x_81; |
| S const x_82 = param; |
| if ((x_82.b == 2)) { |
| S const x_87 = param; |
| S x_88_1 = x_87; |
| x_88_1.b = 7; |
| S const x_88 = x_88_1; |
| param = x_88; |
| } |
| S const x_89 = param; |
| S const x_91 = param; |
| S const x_94 = param; |
| x_43 = as_type<int>((as_type<uint>(as_type<int>((as_type<uint>(x_89.a) + as_type<uint>(x_91.b)))) + as_type<uint>(x_94.c))); |
| int const x_97 = x_43; |
| if ((x_97 == 12)) { |
| *(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); |
| } |
| } |
| x_44 = true; |
| break; |
| } |
| return; |
| } |
| |
| main_out tint_symbol_inner(constant buf0& x_10, thread float4* const tint_symbol_4) { |
| main_1(x_10, 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_10 [[buffer(0)]]) { |
| thread float4 tint_symbol_5 = 0.0f; |
| main_out const inner_result = tint_symbol_inner(x_10, &(tint_symbol_5)); |
| tint_symbol_1 wrapper_result = {}; |
| wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1; |
| return wrapper_result; |
| } |
| |
| int func_struct_S_i1_i1_i11_i1_(thread S* const s, thread int* const x) { |
| int const x_103 = *(x); |
| (*(s)).a = x_103; |
| int const x_105 = (*(s)).a; |
| if ((x_105 == 2)) { |
| (*(s)).a = 9; |
| } |
| int const x_109 = *(x); |
| (*(s)).b = as_type<int>((as_type<uint>(x_109) + as_type<uint>(1))); |
| int const x_112 = *(x); |
| (*(s)).c = as_type<int>((as_type<uint>(x_112) + as_type<uint>(2))); |
| int const x_115 = (*(s)).b; |
| if ((x_115 == 2)) { |
| (*(s)).b = 7; |
| } |
| int const x_119 = (*(s)).a; |
| int const x_120 = (*(s)).b; |
| int const x_122 = (*(s)).c; |
| return as_type<int>((as_type<uint>(as_type<int>((as_type<uint>(x_119) + as_type<uint>(x_120)))) + as_type<uint>(x_122))); |
| } |
| |