| #include <metal_stdlib> |
| |
| using namespace metal; |
| struct theSSBO { |
| /* 0x0000 */ int out_data; |
| }; |
| |
| void main_1(device theSSBO& x_4) { |
| float2x2 x_30 = float2x2(0.0f); |
| float2x2 x_30_phi = float2x2(0.0f); |
| int x_32_phi = 0; |
| x_4.out_data = 42; |
| x_30_phi = float2x2(float2(0.0f, 0.0f), float2(0.0f, 0.0f)); |
| x_32_phi = 1; |
| while (true) { |
| int x_33 = 0; |
| x_30 = x_30_phi; |
| int const x_32 = x_32_phi; |
| if ((x_32 > 0)) { |
| } else { |
| break; |
| } |
| { |
| x_33 = as_type<int>((as_type<uint>(x_32) - as_type<uint>(1))); |
| x_30_phi = float2x2(float2(1.0f, 0.0f), float2(0.0f, 1.0f)); |
| x_32_phi = x_33; |
| } |
| } |
| float2 const x_41 = (float2(1.0f, 1.0f) * float2x2((x_30[0u] - float2(1.0f, 0.0f)), (x_30[1u] - float2(0.0f, 1.0f)))); |
| while (true) { |
| if ((1.0f < x_41.x)) { |
| break; |
| } |
| threadgroup_barrier(mem_flags::mem_threadgroup); |
| break; |
| } |
| return; |
| } |
| |
| kernel void tint_symbol(device theSSBO& x_4 [[buffer(0)]]) { |
| main_1(x_4); |
| return; |
| } |
| |