alan-baker
alan-baker
> because the loop head is a reconvergence point Unfortunately this is not guaranteed either.
Take a look at lib/ReplaceOpenCLBuiltins.cpp. That pass replaces the OpenCL atomic functions with the spirv.op calls (e.g. `replaceAtomics`). For debugging, probably what needs to change is for `InsertSPIRVOp` to copy...
Maybe just a note.
Additionally, the proposal currently limits the return type as host-shareable. This is a restriction on workgroup variables since it may be desirable to reinterpret them as an override-sized array. Related...