diff options
author | Guy Benyei <guy.benyei@intel.com> | 2013-02-07 10:55:47 +0000 |
---|---|---|
committer | Guy Benyei <guy.benyei@intel.com> | 2013-02-07 10:55:47 +0000 |
commit | 21f18c4fda167dc5f72feddbd6a7ac1b63200a0d (patch) | |
tree | 80c1b120c64d3066fd4f5799174a16d8ed49eca0 /test/SemaOpenCL | |
parent | f5a6aefa37d73fff3c47953e2c447f074e726a0e (diff) |
Add OpenCL samplers as Clang builtin types and check sampler related restrictions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174601 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaOpenCL')
-rw-r--r-- | test/SemaOpenCL/sampler_t.cl | 13 | ||||
-rw-r--r-- | test/SemaOpenCL/sampler_t_overload.cl | 12 |
2 files changed, 25 insertions, 0 deletions
diff --git a/test/SemaOpenCL/sampler_t.cl b/test/SemaOpenCL/sampler_t.cl new file mode 100644 index 0000000000..96f6dbf086 --- /dev/null +++ b/test/SemaOpenCL/sampler_t.cl @@ -0,0 +1,13 @@ +// RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only + +constant sampler_t glb_smp = 5; + +void foo(sampler_t); + +void kernel ker(sampler_t argsmp) { + local sampler_t smp; // expected-error {{sampler type cannot be used with the __local and __global address space qualifiers}} + const sampler_t const_smp = 7; + foo(glb_smp); + foo(const_smp); + foo(5); // expected-error {{sampler_t variable required - got 'int'}} +} diff --git a/test/SemaOpenCL/sampler_t_overload.cl b/test/SemaOpenCL/sampler_t_overload.cl new file mode 100644 index 0000000000..83a854f2a4 --- /dev/null +++ b/test/SemaOpenCL/sampler_t_overload.cl @@ -0,0 +1,12 @@ +// RUN: %clang_cc1 %s + +void __attribute__((overloadable)) foo(sampler_t, read_only image1d_t); +void __attribute__((overloadable)) foo(sampler_t, read_only image2d_t); + +constant sampler_t glb_smp = 5; + +void kernel ker(read_only image1d_t src1, read_only image2d_t src2) { + const sampler_t smp = 10; + foo(glb_smp, src1); + foo(smp, src2); +} |