| #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[12]; |
| }; |
| struct buf1 { |
| /* 0x0000 */ tint_array_wrapper x_GLF_uniform_int_values; |
| }; |
| struct tint_padded_array_element_1 { |
| /* 0x0000 */ float el; |
| /* 0x0004 */ int8_t tint_pad_1[12]; |
| }; |
| struct tint_array_wrapper_1 { |
| /* 0x0000 */ tint_padded_array_element_1 arr[1]; |
| }; |
| struct buf0 { |
| /* 0x0000 */ tint_array_wrapper_1 x_GLF_uniform_float_values; |
| }; |
| struct main_out { |
| float4 x_GLF_color_1; |
| }; |
| struct tint_symbol_1 { |
| float4 x_GLF_color_1 [[color(0)]]; |
| }; |
| |
| void main_1(constant buf1& x_6, constant buf0& x_15, thread float4* const tint_symbol_3) { |
| float3x4 m0 = float3x4(0.0f); |
| float3x4 m1 = float3x4(0.0f); |
| float3 undefined = 0.0f; |
| float3 defined = 0.0f; |
| float4 v0 = 0.0f; |
| float4 v1 = 0.0f; |
| float4 v2 = 0.0f; |
| float4 v3 = 0.0f; |
| int const x_17 = x_6.x_GLF_uniform_int_values.arr[4].el; |
| int const x_18 = x_6.x_GLF_uniform_int_values.arr[5].el; |
| int const x_19 = x_6.x_GLF_uniform_int_values.arr[6].el; |
| int const x_20 = x_6.x_GLF_uniform_int_values.arr[10].el; |
| int const x_21 = x_6.x_GLF_uniform_int_values.arr[7].el; |
| int const x_22 = x_6.x_GLF_uniform_int_values.arr[8].el; |
| int const x_23 = x_6.x_GLF_uniform_int_values.arr[11].el; |
| int const x_24 = x_6.x_GLF_uniform_int_values.arr[1].el; |
| int const x_25 = x_6.x_GLF_uniform_int_values.arr[2].el; |
| int const x_26 = x_6.x_GLF_uniform_int_values.arr[3].el; |
| m0 = float3x4(float4(float(x_17), float(x_18), float(x_19), 4.0f), float4(float(x_20), float(x_21), float(x_22), 8.0f), float4(float(x_23), float(x_24), float(x_25), float(x_26))); |
| int const x_27 = x_6.x_GLF_uniform_int_values.arr[4].el; |
| float const x_104 = float(x_27); |
| m1 = float3x4(float4(x_104, 0.0f, 0.0f, 0.0f), float4(0.0f, x_104, 0.0f, 0.0f), float4(0.0f, 0.0f, x_104, 0.0f)); |
| undefined = ldexp(float3(1.0f, 1.0f, 1.0f), int3(500, 500, 500)); |
| int const x_28 = x_6.x_GLF_uniform_int_values.arr[4].el; |
| float const x_111 = float(x_28); |
| int const x_29 = x_6.x_GLF_uniform_int_values.arr[0].el; |
| defined = ldexp(float3(x_111, x_111, x_111), int3(x_29, x_29, x_29)); |
| float3x4 const x_116 = m0; |
| float3 const x_117 = undefined; |
| v0 = (x_116 * x_117); |
| float3x4 const x_119 = m1; |
| float3 const x_120 = undefined; |
| v1 = (x_119 * x_120); |
| float3x4 const x_122 = m0; |
| float3 const x_123 = defined; |
| v2 = (x_122 * x_123); |
| float3x4 const x_125 = m1; |
| float3 const x_126 = defined; |
| v3 = (x_125 * x_126); |
| float const x_129 = v2.x; |
| float const x_131 = v3.x; |
| if ((x_129 > x_131)) { |
| int const x_30 = x_6.x_GLF_uniform_int_values.arr[4].el; |
| int const x_31 = x_6.x_GLF_uniform_int_values.arr[9].el; |
| int const x_32 = x_6.x_GLF_uniform_int_values.arr[9].el; |
| int const x_33 = x_6.x_GLF_uniform_int_values.arr[4].el; |
| *(tint_symbol_3) = float4(float(x_30), float(x_31), float(x_32), float(x_33)); |
| } else { |
| int const x_34 = x_6.x_GLF_uniform_int_values.arr[9].el; |
| float const x_146 = float(x_34); |
| *(tint_symbol_3) = float4(x_146, x_146, x_146, x_146); |
| } |
| float const x_149 = v0.x; |
| float const x_151 = v1.x; |
| if ((x_149 < x_151)) { |
| float const x_156 = x_15.x_GLF_uniform_float_values.arr[0].el; |
| (*(tint_symbol_3)).y = x_156; |
| } |
| return; |
| } |
| |
| main_out tint_symbol_inner(constant buf1& x_6, constant buf0& x_15, thread float4* const tint_symbol_4) { |
| main_1(x_6, x_15, 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 buf1& x_6 [[buffer(1)]], constant buf0& x_15 [[buffer(0)]]) { |
| thread float4 tint_symbol_5 = 0.0f; |
| main_out const inner_result = tint_symbol_inner(x_6, x_15, &(tint_symbol_5)); |
| tint_symbol_1 wrapper_result = {}; |
| wrapper_result.x_GLF_color_1 = inner_result.x_GLF_color_1; |
| return wrapper_result; |
| } |
| |