#include using namespace metal; half tint_workgroupUniformLoad(threadgroup half* const p) { threadgroup_barrier(mem_flags::mem_threadgroup); half const result = *(p); threadgroup_barrier(mem_flags::mem_threadgroup); return result; } void workgroupUniformLoad_e07d08(threadgroup half* const tint_symbol) { half res = tint_workgroupUniformLoad(tint_symbol); } void compute_main_inner(uint local_invocation_index, threadgroup half* const tint_symbol_1) { { *(tint_symbol_1) = 0.0h; } threadgroup_barrier(mem_flags::mem_threadgroup); workgroupUniformLoad_e07d08(tint_symbol_1); } kernel void compute_main(uint local_invocation_index [[thread_index_in_threadgroup]]) { threadgroup half tint_symbol_2; compute_main_inner(local_invocation_index, &(tint_symbol_2)); return; }