diff options
Diffstat (limited to 'test/Headers/opencl-c-header.cl')
-rw-r--r-- | test/Headers/opencl-c-header.cl | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/test/Headers/opencl-c-header.cl b/test/Headers/opencl-c-header.cl index b26e61bf1a..14c2e78444 100644 --- a/test/Headers/opencl-c-header.cl +++ b/test/Headers/opencl-c-header.cl @@ -1,6 +1,7 @@ // RUN: %clang_cc1 -O0 -triple spir-unknown-unknown -internal-isystem ../../lib/Headers -include opencl-c.h -emit-llvm -o - %s -verify | FileCheck %s -// RUN: %clang_cc1 -O0 -triple spir-unknown-unknown -internal-isystem ../../lib/Headers -include opencl-c.h -emit-llvm -o - %s -verify -cl-std=CL1.1| FileCheck %s -// RUN: %clang_cc1 -O0 -triple spir-unknown-unknown -internal-isystem ../../lib/Headers -include opencl-c.h -emit-llvm -o - %s -verify -cl-std=CL1.2| FileCheck %s +// RUN: %clang_cc1 -O0 -triple spir-unknown-unknown -internal-isystem ../../lib/Headers -include opencl-c.h -emit-llvm -o - %s -verify -cl-std=CL1.1 | FileCheck %s +// RUN: %clang_cc1 -O0 -triple spir-unknown-unknown -internal-isystem ../../lib/Headers -include opencl-c.h -emit-llvm -o - %s -verify -cl-std=CL1.2 | FileCheck %s +// RUN: %clang_cc1 -O0 -triple spir-unknown-unknown -internal-isystem ../../lib/Headers -include opencl-c.h -emit-llvm -o - %s -verify -cl-std=c++ | FileCheck %s --check-prefix=CHECK20 // Test including the default header as a module. // The module should be compiled only once and loaded from cache afterwards. @@ -52,22 +53,21 @@ // CHECK: _Z16convert_char_rtec // CHECK-NOT: _Z3ctzc // CHECK20: _Z3ctzc -// CHECK20-NOT: _Z16convert_char_rtec +// CHECK20: _Z16convert_char_rtec char f(char x) { -#if __OPENCL_C_VERSION__ != CL_VERSION_2_0 - return convert_char_rte(x); - -#else //__OPENCL_C_VERSION__ +// Check functionality from OpenCL 2.0 onwards +#if defined(__OPENCL_CPP_VERSION__) || (__OPENCL_C_VERSION__ == CL_VERSION_2_0) ndrange_t t; - return ctz(x); + x = ctz(x); #endif //__OPENCL_C_VERSION__ + return convert_char_rte(x); } // Verify that a builtin using a write_only image3d_t type is available // from OpenCL 2.0 onwards. // CHECK20: _Z12write_imagef14ocl_image3d_wo -#if __OPENCL_C_VERSION__ >= CL_VERSION_2_0 +#if defined(__OPENCL_CPP_VERSION__) || (__OPENCL_C_VERSION__ >= CL_VERSION_2_0) void test_image3dwo(write_only image3d_t img) { write_imagef(img, (0), (0.0f)); } @@ -75,7 +75,7 @@ void test_image3dwo(write_only image3d_t img) { // Verify that non-builtin cl_intel_planar_yuv extension is defined from // OpenCL 1.2 onwards. -#if (__OPENCL_C_VERSION__ >= CL_VERSION_1_2) +#if defined(__OPENCL_CPP_VERSION__) || (__OPENCL_C_VERSION__ >= CL_VERSION_1_2) // expected-no-diagnostics #ifndef cl_intel_planar_yuv #error "Missing cl_intel_planar_yuv define" |