#include <metal_stdlib>
using namespace metal;

struct tint_module_vars_struct {
  device float* s;
};

kernel void tint_symbol(device float* s [[buffer(0)]]) {
  tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.s=s};
  float3x3 const m = float3x3(float3(1.0f, 2.0f, 3.0f), float3(4.0f, 5.0f, 6.0f), float3(7.0f, 8.0f, 9.0f));
  float3 const v = m[1u];
  float const f = v.y;
  (*tint_module_vars.s) = f;
}
