summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Basic/Targets.cpp1
-rw-r--r--clang/test/Misc/amdgcn.languageOptsOpenCL.cl8
-rw-r--r--clang/test/SemaOpenCL/extension-version.cl3
3 files changed, 11 insertions, 1 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index 7dfa0a361dc..cbda245218c 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -2152,6 +2152,7 @@ public:
Opts.cl_khr_int64_base_atomics = 1;
Opts.cl_khr_int64_extended_atomics = 1;
Opts.cl_khr_mipmap_image = 1;
+ Opts.cl_khr_subgroups = 1;
Opts.cl_khr_3d_image_writes = 1;
Opts.cl_amd_media_ops = 1;
Opts.cl_amd_media_ops2 = 1;
diff --git a/clang/test/Misc/amdgcn.languageOptsOpenCL.cl b/clang/test/Misc/amdgcn.languageOptsOpenCL.cl
index 3befefdeecd..6a07fc98069 100644
--- a/clang/test/Misc/amdgcn.languageOptsOpenCL.cl
+++ b/clang/test/Misc/amdgcn.languageOptsOpenCL.cl
@@ -199,11 +199,17 @@
#pragma OPENCL EXTENSION cl_khr_srgb_image_writes: enable
// expected-warning@-1{{unsupported OpenCL extension 'cl_khr_srgb_image_writes' - ignoring}}
+#if (__OPENCL_C_VERSION__ >= 200)
+#ifndef cl_khr_subgroups
+#error "Missing cl_khr_subgroups define"
+#endif
+#else
#ifdef cl_khr_subgroups
#error "Incorrect cl_khr_subgroups define"
#endif
+// expected-warning@+2{{unsupported OpenCL extension 'cl_khr_subgroups' - ignoring}}
+#endif
#pragma OPENCL EXTENSION cl_khr_subgroups: enable
-// expected-warning@-1{{unsupported OpenCL extension 'cl_khr_subgroups' - ignoring}}
#ifdef cl_khr_terminate_context
#error "Incorrect cl_khr_terminate_context define"
diff --git a/clang/test/SemaOpenCL/extension-version.cl b/clang/test/SemaOpenCL/extension-version.cl
index 6a3cfde9f13..6100346f707 100644
--- a/clang/test/SemaOpenCL/extension-version.cl
+++ b/clang/test/SemaOpenCL/extension-version.cl
@@ -247,6 +247,9 @@
#error "Missing cl_khr_subgroups define"
#endif
#else
+#ifdef cl_khr_subgroups
+#error "Incorrect cl_khr_subgroups define"
+#endif
// expected-warning@+2{{unsupported OpenCL extension 'cl_khr_subgroups' - ignoring}}
#endif
#pragma OPENCL EXTENSION cl_khr_subgroups: enable
OpenPOWER on IntegriCloud