[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-21 Thread Anton Zabaznov via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG826905787ae4: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64 (authored by azabaznov). Repository: rG LLVM Github Monorepo CHANGES SINCE LAS

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-19 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov marked an inline comment as done. azabaznov added inline comments. Comment at: clang/test/CodeGenOpenCL/printf.cl:9 -#ifdef cl_khr_fp64 +#if defined(cl_khr_fp64) || defined(__opencl_c_fp64) typedef __attribute__((ext_vector_type(2))) double double2;

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-19 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov updated this revision to Diff 346380. azabaznov added a comment. Drop one more formatting change from Sema.cpp Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D96524/new/ https://reviews.llvm.org/D96524 Files: clang/docs/OpenCLSupport.rst

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-19 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov updated this revision to Diff 346379. azabaznov added a comment. Drop formatting changes from Sema.cpp Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D96524/new/ https://reviews.llvm.org/D96524 Files: clang/docs/OpenCLSupport.rst clang

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-18 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia accepted this revision. Anastasia added a comment. This revision is now accepted and ready to land. LGTM! Thanks! Comment at: clang/lib/Sema/Sema.cpp:304 addImplicitTypedef("event_t", Context.OCLEventTy); + if (getLangOpts().OpenCLCPlusPlus || getLangOpts().

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-17 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov updated this revision to Diff 345846. azabaznov edited the summary of this revision. azabaznov added a comment. Rebase after https://reviews.llvm.org/D100976; addressed review comments and updated docs. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-14 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/lib/Sema/Sema.cpp:306 +// Set conditionally to provide correct diagnostics for 'double' type +llvm::StringRef FP64Feature( +getLangOpts().OpenCLVersion >= 300 ? "__opencl_c_fp64" : "cl_khr_fp64"); ---

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-14 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added inline comments. Comment at: clang/lib/Sema/Sema.cpp:306 +// Set conditionally to provide correct diagnostics for 'double' type +llvm::StringRef FP64Feature( +getLangOpts().OpenCLVersion >= 300 ? "__opencl_c_fp64" : "cl_khr_fp64"); ---

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-10 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/include/clang/Basic/DiagnosticCommonKinds.td:369 +def err_opencl_extension_and_feature_differs : Error< + "Options %0 and %1 are set to different values which is illegal in OpenCL C 3.0">; } We don't normally

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-05-06 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov updated this revision to Diff 343417. azabaznov added a comment. Rebased to use `::validateOpenCLTarget`. Decided to use explicit simulatneous extensions/feature disabling in command line due to API spec limitations: clGetDeviceInfo: Will not describe support for the cl_khr_3d_image_wr

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-22 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added a comment. Please see https://reviews.llvm.org/D101087. I think unifying with target features requires more effort than it seemed because target features are declared in LLVM (see for example //AMDGPUFeatureKV // in //AMDGPUGenSubtargetInfo.inc//, //llvm/lib/Target/AMDGPU/AMDGPU

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-21 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. In D96524#2705192 , @azabaznov wrote: > In D96524#2692376 , @Anastasia wrote: > >> In D96524#2691428 , @azabaznov >> wrote: >> >>> My main idea wa

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-21 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added a comment. In D96524#2692376 , @Anastasia wrote: > In D96524#2691428 , @azabaznov wrote: > >> My main idea was to provide an interface which will not make users to >> specify `-cl-ext=+__opencl_c_fp

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-15 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. In D96524#2691428 , @azabaznov wrote: > My main idea was to provide an interface which will not make users to specify > `-cl-ext=+__opencl_c_fp64,+cl_khr_fp64`/ > `-cl-ext=-__opencl_c_fp64,-cl_khr_fp64` if they need to enable/d

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-15 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added a comment. My main idea was to provide an interface which will not make users to specify `-cl-ext=+__opencl_c_fp64,+cl_khr_fp64`/ `-cl-ext=-__opencl_c_fp64,-cl_khr_fp64` if they need to enable/disable functionality in OpenCL C 3.0 because I believe that is not a right thing to

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-14 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. I would prefer if we try to take a slightly different route i.e. if two features are identical (e.g. `cl_khr_fp64` and `__opencl_c_fp64`) we make sure that they are both set identical in Target options or command-line interface using early check and a diagnostic in th

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-04-09 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added inline comments. Comment at: clang/lib/Basic/TargetInfo.cpp:398 +auto CLVer = Opts.OpenCLCPlusPlus ? 200 : Opts.OpenCLVersion; +if (CLVer >= 300) { + auto &OCLOpts = getSupportedOpenCLOpts(); Anastasia wrote: > azabaznov wrote: > > An

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-02-20 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov marked 3 inline comments as done. azabaznov added inline comments. Comment at: clang/lib/Basic/OpenCLOptions.cpp:24 + auto CLVer = LO.OpenCLCPlusPlus ? 200 : LO.OpenCLVersion; + return CLVer >= 300 ? isEnabled("__opencl_c_fp64") : isEnabled("cl_khr_fp64"); +} ---

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-02-15 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/lib/Basic/OpenCLOptions.cpp:24 + auto CLVer = LO.OpenCLCPlusPlus ? 200 : LO.OpenCLVersion; + return CLVer >= 300 ? isEnabled("__opencl_c_fp64") : isEnabled("cl_khr_fp64"); +} azabaznov wrote: > Anastasia wrote

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-02-15 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added inline comments. Comment at: clang/include/clang/Basic/OpenCLOptions.h:157 + // Is OpenCL C feature (OpenCL C 3.0, 6.2.1. Features) + bool isFeature(llvm::StringRef Ext) const; + svenvh wrote: > The argument "Ext" suggests "Extension", so perhap

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-02-12 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:9899 def err_opencl_requires_extension : Error< - "use of %select{type|declaration}0 %1 requires %2 extension to be enabled">; + "use of %select{type|declaration}0 %1 requires %2 %se

[PATCH] D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64

2021-02-12 Thread Sven van Haastregt via Phabricator via cfe-commits
svenvh added inline comments. Comment at: clang/include/clang/Basic/OpenCLOptions.h:157 + // Is OpenCL C feature (OpenCL C 3.0, 6.2.1. Features) + bool isFeature(llvm::StringRef Ext) const; + The argument "Ext" suggests "Extension", so perhaps rename if this is