#include <metal_stdlib>
using namespace metal;
struct tint_module_vars_struct {
  thread float2x3* m;
  device float2x3* out;
};

void tint_store_and_preserve_padding(device float2x3* const target, float2x3 value_param) {
  (*target)[0u] = value_param[0u];
  (*target)[1u] = value_param[1u];
}
kernel void f(device float2x3* out [[buffer(0)]]) {
  thread float2x3 m = float2x3(float3(0.0f, 1.0f, 2.0f), float3(3.0f, 4.0f, 5.0f));
  tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.m=(&m), .out=out};
  tint_store_and_preserve_padding(tint_module_vars.out, (*tint_module_vars.m));
}
