blob: ddbce20fb546172001a55aad4efdf444e90c2dd0 [file] [log] [blame]
#include <metal_stdlib>
using namespace metal;
struct tint_module_vars_struct {
thread float4x3* m;
device float4x3* out;
};
void tint_store_and_preserve_padding(device float4x3* const target, float4x3 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 float4x3* out [[buffer(0)]]) {
thread float4x3 m = float4x3(float3(0.0f, 1.0f, 2.0f), float3(3.0f, 4.0f, 5.0f), float3(6.0f, 7.0f, 8.0f), float3(9.0f, 10.0f, 11.0f));
tint_module_vars_struct const tint_module_vars = {.m=(&m), .out=out};
tint_store_and_preserve_padding(tint_module_vars.out, float4x3((*tint_module_vars.m)));
}