| #include <metal_stdlib> |
| using namespace metal; |
| struct tint_module_vars_struct { |
| const constant float4x2* u; |
| thread float4x2* p; |
| }; |
| |
| kernel void f(const constant float4x2* u [[buffer(0)]]) { |
| thread float4x2 p = float4x2(0.0f); |
| tint_module_vars_struct const tint_module_vars = tint_module_vars_struct{.u=u, .p=(&p)}; |
| (*tint_module_vars.p) = (*tint_module_vars.u); |
| (*tint_module_vars.p)[1] = (*tint_module_vars.u)[0]; |
| (*tint_module_vars.p)[1] = (*tint_module_vars.u)[0].yx; |
| (*tint_module_vars.p)[0][1] = (*tint_module_vars.u)[1][0]; |
| } |