forked from OSchip/llvm-project
[OpenCL][Docs] Describe extension for legacy atomics with generic addr space.
This extension is primarily targeting SPIR-V compilations flow as the IR translation is the same between 1.x and 2.x atomics. Differential Revision: https://reviews.llvm.org/D101089
This commit is contained in:
parent
a0e1313c23
commit
8fb0d6df11
|
@ -1813,6 +1813,23 @@ supporting the variadic arguments e.g. majority of CPU targets.
|
|||
#pragma OPENCL EXTENSION __cl_clang_variadic_functions : disable
|
||||
void bar(int a, ...); // error - variadic prototype is not allowed
|
||||
|
||||
Legacy 1.x atomics with generic address space
|
||||
---------------------------------------------
|
||||
|
||||
Clang allows use of atomic functions from the OpenCL 1.x standards
|
||||
with the generic address space pointer in C++ for OpenCL mode.
|
||||
|
||||
This is a non-portable feature and might not be supported by all
|
||||
targets.
|
||||
|
||||
**Example of Use**:
|
||||
|
||||
.. code-block:: c++
|
||||
|
||||
void foo(__generic volatile unsigned int* a) {
|
||||
atomic_add(a, 1);
|
||||
}
|
||||
|
||||
Builtin Functions
|
||||
=================
|
||||
|
||||
|
|
Loading…
Reference in New Issue