blob: 7f337f7d14dd6192ea32fca88fd4e238244c50ca [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_module_vars_struct {
thread half4x3* m;
device half4x3* out;
};
void tint_store_and_preserve_padding(device half4x3* const target, half4x3 value_param) {
(*target)[0u] = value_param[0u];
(*target)[1u] = value_param[1u];
(*target)[2u] = value_param[2u];
(*target)[3u] = value_param[3u];
}
kernel void f(device half4x3* out [[buffer(0)]]) {
thread half4x3 m = half4x3(half3(0.0h, 1.0h, 2.0h), half3(3.0h, 4.0h, 5.0h), half3(6.0h, 7.0h, 8.0h), half3(9.0h, 10.0h, 11.0h));
tint_module_vars_struct const tint_module_vars = {.m=(&m), .out=out};
tint_store_and_preserve_padding(tint_module_vars.out, half4x3((*tint_module_vars.m)));
}