| #include <metal_stdlib> |
| |
| 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[2]; |
| }; |
| 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[2]; |
| }; |
| 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_8, thread float4* const tint_symbol_4) { |
| float2 v1 = 0.0f; |
| float const x_35 = x_6.x_GLF_uniform_float_values.arr[0].el; |
| v1 = float2(x_35, x_35); |
| int const x_38 = x_8.x_GLF_uniform_int_values.arr[0].el; |
| float const x_40 = v1.y; |
| v1[x_38] = ldexp(x_40, -256); |
| float2 const x_43 = v1; |
| if ((((x_43 * float2x2(float2(x_35, 0.0f), float2(0.0f, x_35)))).x == x_35)) { |
| float const x_53 = float(x_38); |
| int const x_55 = x_8.x_GLF_uniform_int_values.arr[1].el; |
| float const x_56 = float(x_55); |
| *(tint_symbol_4) = float4(x_53, x_56, x_56, x_53); |
| } else { |
| int const x_59 = x_8.x_GLF_uniform_int_values.arr[1].el; |
| float const x_60 = float(x_59); |
| *(tint_symbol_4) = float4(x_60, x_60, x_60, x_60); |
| } |
| return; |
| } |
| |
| fragment tint_symbol_1 tint_symbol(constant buf0& x_6 [[buffer(0)]], constant buf1& x_8 [[buffer(1)]]) { |
| thread float4 tint_symbol_5 = 0.0f; |
| main_1(x_6, x_8, &(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; |
| } |
| |