blob: 270a66d4623c72308346f72f51de139f69244024 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_symbol_5 {
half2x2 w;
};
void f_inner(uint local_invocation_index, threadgroup half2x2* const tint_symbol, const constant half2x2* const tint_symbol_1) {
{
*(tint_symbol) = half2x2(half2(0.0h), half2(0.0h));
}
threadgroup_barrier(mem_flags::mem_threadgroup);
*(tint_symbol) = *(tint_symbol_1);
(*(tint_symbol))[1] = (*(tint_symbol_1))[0];
(*(tint_symbol))[1] = half2((*(tint_symbol_1))[0]).yx;
(*(tint_symbol))[0][1] = (*(tint_symbol_1))[1][0];
}
kernel void f(const constant half2x2* tint_symbol_4 [[buffer(0)]], threadgroup tint_symbol_5* tint_symbol_3 [[threadgroup(0)]], uint local_invocation_index [[thread_index_in_threadgroup]]) {
threadgroup half2x2* const tint_symbol_2 = &((*(tint_symbol_3)).w);
f_inner(local_invocation_index, tint_symbol_2, tint_symbol_4);
return;
}