[PATCH] D156816: [Clang] Make generic aliases to OpenCL address spaces
Joseph Huber via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Aug 1 11:36:04 PDT 2023
jhuber6 added a comment.
In D156816#4551338 <https://reviews.llvm.org/D156816#4551338>, @yaxunl wrote:
>> FFI isn't the reason you'd use these, it's for generic access to the actual backend. E.g. an `addrspace(3)` global is local memory, if it's external it's dynamic. Having these named is better than doing it via the numerical address space. I'd like to use these in the C++ / OpenMP codes instead of the numeric ones but I don't like needing to use `opencl` in the name. Similarly to how we have the OpenCL atomics that should be usable outside of OpenCL.
>
> I agree these attributes are useful in other languages, but "global" and "local" may need a more generic name suitable for all offloading languages. To me, "device" can be a good alternative to "global". even "shared" seems clearer than "local".
Global is common in https://llvm.org/docs/AMDGPUUsage.html#address-spaces and https://llvm.org/docs/NVPTXUsage.html#address-spaces. The main problem is `local` vs `shared` and `private` vs `local`. Unsure which one we should prefer in this case. Generally I feel a lot of this OpenCL stuff should've been named commonly at the start considering you can use most of them outside of the actual OpenCL language just fine.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D156816/new/
https://reviews.llvm.org/D156816
More information about the cfe-commits
mailing list