Ross Brunton eee723f928
[Offload] Replace GetKernel with GetSymbol with global support (#148221)
`olGetKernel` has been replaced by `olGetSymbol` which accepts a
`Kind` parameter. As well as loading information about kernels, it
can now also load information about global variables.
2025-07-11 14:48:10 +01:00

16 lines
363 B
C

#include <gpuintrin.h>
#include <stdint.h>
[[gnu::visibility("default")]]
uint32_t global[64];
__gpu_kernel void write() {
global[__gpu_thread_id(0)] = __gpu_thread_id(0);
global[__gpu_thread_id(0)] *= 2;
}
__gpu_kernel void read(uint32_t *out) {
out[__gpu_thread_id(0) + (__gpu_num_threads(0) * __gpu_block_id(0))] =
global[__gpu_thread_id(0)];
}