Index: include/clang/Basic/OpenCLExtensions.def =================================================================== --- include/clang/Basic/OpenCLExtensions.def +++ include/clang/Basic/OpenCLExtensions.def @@ -67,6 +67,7 @@ // OpenCL 2.0. OPENCLEXT_INTERNAL(cl_khr_egl_event, 200, ~0U) OPENCLEXT_INTERNAL(cl_khr_egl_image, 200, ~0U) +OPENCLEXT_INTERNAL(cl_khr_mipmap_image, 200, ~0U) OPENCLEXT_INTERNAL(cl_khr_srgb_image_writes, 200, ~0U) OPENCLEXT_INTERNAL(cl_khr_subgroups, 200, ~0U) OPENCLEXT_INTERNAL(cl_khr_terminate_context, 200, ~0U) Index: lib/Basic/Targets.cpp =================================================================== --- lib/Basic/Targets.cpp +++ lib/Basic/Targets.cpp @@ -2115,6 +2115,7 @@ Opts.cl_khr_fp16 = 1; Opts.cl_khr_int64_base_atomics = 1; Opts.cl_khr_int64_extended_atomics = 1; + Opts.cl_khr_mipmap_image = 1; Opts.cl_khr_3d_image_writes = 1; } } Index: test/Misc/amdgcn.languageOptsOpenCL.cl =================================================================== --- test/Misc/amdgcn.languageOptsOpenCL.cl +++ test/Misc/amdgcn.languageOptsOpenCL.cl @@ -181,6 +181,18 @@ #pragma OPENCL EXTENSION cl_khr_egl_image: enable // expected-warning@-1{{unsupported OpenCL extension 'cl_khr_egl_image' - ignoring}} +#if (__OPENCL_C_VERSION__ >= 200) + #ifndef cl_khr_mipmap_image + #error "Missing cl_khr_mipmap_image define" + #endif +#else + #ifdef cl_khr_mipmap_image + #error "Incorrect cl_khr_mipmap_image define" + #endif + // expected-warning@+2{{unsupported OpenCL extension 'cl_khr_mipmap_image' - ignoring}} +#endif +#pragma OPENCL EXTENSION cl_khr_mipmap_image: enable + #ifdef cl_khr_srgb_image_writes #error "Incorrect cl_khr_srgb_image_writes define" #endif Index: test/SemaOpenCL/extension-version.cl =================================================================== --- test/SemaOpenCL/extension-version.cl +++ test/SemaOpenCL/extension-version.cl @@ -222,6 +222,18 @@ #pragma OPENCL EXTENSION cl_khr_egl_image: enable #if (__OPENCL_C_VERSION__ >= 200) + #ifndef cl_khr_mipmap_image + #error "Missing cl_khr_mipmap_image define" + #endif +#else + #ifdef cl_khr_mipmap_image + #error "Incorrect cl_khr_mipmap_image define" + #endif + // expected-warning@+2{{unsupported OpenCL extension 'cl_khr_mipmap_image' - ignoring}} +#endif +#pragma OPENCL EXTENSION cl_khr_mipmap_image: enable + +#if (__OPENCL_C_VERSION__ >= 200) #ifndef cl_khr_srgb_image_writes #error "Missing cl_khr_srgb_image_writes define" #endif