#include <metal_stdlib> | |
using namespace metal; | |
void deref() { | |
int3 a = 0; | |
thread int3* const p = (&a); | |
(*p)[0] = ((*p)[0] + 42); | |
} | |
void no_deref() { | |
int3 a = 0; | |
thread int3* const p = (&a); | |
(*p)[0] = ((*p)[0] + 42); | |
} | |
void deref_inc() { | |
int3 a = 0; | |
thread int3* const p = (&a); | |
(*p)[0] = ((*p)[0] + 1); | |
} | |
void no_deref_inc() { | |
int3 a = 0; | |
thread int3* const p = (&a); | |
(*p)[0] = ((*p)[0] + 1); | |
} | |
kernel void tint_symbol() { | |
deref(); | |
no_deref(); | |
deref_inc(); | |
no_deref_inc(); | |
} |