forked from OSchip/llvm-project
[OpenCL] Restore ATOMIC_VAR_INIT
We accidentally lost the ATOMIC_VAR_INIT and ATOMIC_FLAG_INIT macros in r363794. Also put the `memory_order` typedef back inside a `>= CL2.0` guard. llvm-svn: 364174
This commit is contained in:
parent
853dfab799
commit
b502a44110
|
@ -297,8 +297,11 @@ typedef enum memory_scope {
|
|||
* image memory.
|
||||
*/
|
||||
#define CLK_IMAGE_MEM_FENCE 0x04
|
||||
#endif //__OPENCL_C_VERSION__ >= CL_VERSION_2_0
|
||||
|
||||
#ifndef ATOMIC_VAR_INIT
|
||||
#define ATOMIC_VAR_INIT(x) (x)
|
||||
#endif //ATOMIC_VAR_INIT
|
||||
#define ATOMIC_FLAG_INIT 0
|
||||
|
||||
// enum values aligned with what clang uses in EmitAtomicExpr()
|
||||
typedef enum memory_order
|
||||
|
@ -310,6 +313,8 @@ typedef enum memory_order
|
|||
memory_order_seq_cst = __ATOMIC_SEQ_CST
|
||||
} memory_order;
|
||||
|
||||
#endif //__OPENCL_C_VERSION__ >= CL_VERSION_2_0
|
||||
|
||||
// OpenCL v1.1 s6.11.3, v1.2 s6.12.14, v2.0 s6.13.14 - Image Read and Write Functions
|
||||
|
||||
// These values need to match the runtime equivalent
|
||||
|
|
|
@ -80,6 +80,10 @@ void test_atomics(__generic volatile unsigned int* a) {
|
|||
}
|
||||
#endif
|
||||
|
||||
// Verify that ATOMIC_VAR_INIT is defined.
|
||||
#if defined(__OPENCL_CPP_VERSION__) || (__OPENCL_C_VERSION__ >= CL_VERSION_2_0)
|
||||
global atomic_int z = ATOMIC_VAR_INIT(99);
|
||||
#endif //__OPENCL_C_VERSION__
|
||||
|
||||
// Verify that non-builtin cl_intel_planar_yuv extension is defined from
|
||||
// OpenCL 1.2 onwards.
|
||||
|
|
Loading…
Reference in New Issue