Author: svenvh Date: Mon Jun 24 03:06:40 2019 New Revision: 364174 URL: http://llvm.org/viewvc/llvm-project?rev=364174&view=rev Log: [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. Modified: cfe/trunk/lib/Headers/opencl-c-base.h cfe/trunk/test/Headers/opencl-c-header.cl Modified: cfe/trunk/lib/Headers/opencl-c-base.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/opencl-c-base.h?rev=364174&r1=364173&r2=364174&view=diff ============================================================================== --- cfe/trunk/lib/Headers/opencl-c-base.h (original) +++ cfe/trunk/lib/Headers/opencl-c-base.h Mon Jun 24 03:06:40 2019 @@ -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 Modified: cfe/trunk/test/Headers/opencl-c-header.cl URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Headers/opencl-c-header.cl?rev=364174&r1=364173&r2=364174&view=diff ============================================================================== --- cfe/trunk/test/Headers/opencl-c-header.cl (original) +++ cfe/trunk/test/Headers/opencl-c-header.cl Mon Jun 24 03:06:40 2019 @@ -80,6 +80,10 @@ void test_atomics(__generic volatile uns } #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. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits