blob: 1289e4729d756737eee0822c22389416203beacf [file]
#include <metal_stdlib>
using namespace metal;
void deref() {
float2x3 a = float2x3(0.0f);
thread float2x3* const p = (&a);
float3 b = (*p)[0u];
(*p)[0u] = float3(1.0f, 2.0f, 3.0f);
}
void no_deref() {
float2x3 a = float2x3(0.0f);
thread float2x3* const p = (&a);
float3 b = (*p)[0u];
(*p)[0u] = float3(1.0f, 2.0f, 3.0f);
}
[[max_total_threads_per_threadgroup(1)]]
kernel void v() {
(deref());
(no_deref());
}