| #include <metal_stdlib> |
| using namespace metal; |
| struct tint_module_vars_struct { |
| const constant half3x2* u; |
| thread half3x2* p; |
| }; |
| |
| kernel void f(const constant half3x2* u [[buffer(0)]]) { |
| thread half3x2 p = half3x2(0.0h); |
| 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]; |
| } |