#include <metal_stdlib>
using namespace metal;
struct tint_symbol_1 {
  float2x2 tint_symbol;
};
struct tint_module_vars_struct {
  threadgroup float2x2* W;
};

kernel void F(uint mat2x2 [[thread_index_in_threadgroup]], threadgroup tint_symbol_1* v) {
  tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.W=(&(*v).tint_symbol)};
  if ((mat2x2 == 0u)) {
    (*tint_module_vars.W) = float2x2(float2(0.0f), float2(0.0f));
  }
  threadgroup_barrier(mem_flags::mem_threadgroup);
  (*tint_module_vars.W)[0] = ((*tint_module_vars.W)[0] + 0.0f);
}
