[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2021-02-01 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov abandoned this revision. azabaznov added a comment. Due to refactoring in https://reviews.llvm.org/D92277 this flow is no longer valid. New patch for this functionality is here: https://reviews.llvm.org/D95776. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89869/new/ https:

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-29 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added a comment. > I didn't want to end up with a big refactoring from this patch but now I > start to think that considering the situation it might be unavoidable. :( Well, it was expected. However, I didn't want to mess this refactoring with OpenCL C 3.0 support at first. I already

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-27 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/include/clang/Basic/OpenCLOptions.h:37 + // OpenCL Version + unsigned CLVer = 120; + bool IsOpenCLCPlusPlus = false; Anastasia wrote: > Anastasia wrote: > > azabaznov wrote: > > > Anastasia wrote: > > > > Ok,

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-26 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. After a recent discussion with Khronos on https://github.com/KhronosGroup/OpenCL-Docs/issues/500 and more thinking I start to realize that there is absolutely nothing new in OpenCL 3.0 features as it isn't a new concept at all. They use to be explained as optional cor

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-24 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov updated this revision to Diff 307436. azabaznov marked 24 inline comments as done. azabaznov added a comment. Addressed almost all technical and cosmetic concerns concerns. Except putting reference of `OpenCLOptions` in `Sema` due to const of `TargetInfo`. I think I'll think about that

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-19 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/include/clang/Basic/OpenCLOptions.h:51 + // check specific version of feature) + void supportFeatureForPreOCL30(StringRef Feat, bool On = true) { +assert(CLVer < 300 && "Can'be called for OpenCL C higher 3.0");

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-18 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added inline comments. Comment at: clang/include/clang/Basic/OpenCLOptions.h:51 + // check specific version of feature) + void supportFeatureForPreOCL30(StringRef Feat, bool On = true) { +assert(CLVer < 300 && "Can'be called for OpenCL C higher 3.0");

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-17 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/include/clang/Basic/OpenCLExtensions.def:100 +// OpenCL features +OPENCLFEAT_INTERNAL(__opencl_c_pipes, 200, ~0U) +OPENCLFEAT_INTERNAL(__opencl_c_generic_address_space, 200, ~0U) azabaznov wrote: > Anastasia wrot

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-17 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added inline comments. Comment at: clang/include/clang/Basic/OpenCLExtensions.def:100 +// OpenCL features +OPENCLFEAT_INTERNAL(__opencl_c_pipes, 200, ~0U) +OPENCLFEAT_INTERNAL(__opencl_c_generic_address_space, 200, ~0U) Anastasia wrote: > Btw I guess we

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-16 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. In D89869#2392032 , @Anastasia wrote: > In D89869#2388499 , @azabaznov wrote: > >> Addressed all concerns except replacing //__opencl_c_int64 //definition into >> header. The reason for t

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-12 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. In D89869#2388499 , @azabaznov wrote: > Addressed all concerns except replacing //__opencl_c_int64 //definition into > header. The reason for this as follows: this macro should be predefined > regardless if clang includes defau

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-11 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added a comment. > What did you think in mind regarding activation of features for SPIR? I don't see any difference between extensions and features in that case (at least for now), so in the latest patch x86 and spir targets will define all the features. CHANGES SINCE LAST ACTION

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-11 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov updated this revision to Diff 304493. azabaznov added a comment. Addressed all concerns except replacing //__opencl_c_int64 //definition into header. The reason for this as follows: this macro should be predefined regardless if clang includes default header or not. CHANGES SINCE LAST

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-06 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added inline comments. Comment at: clang/include/clang/Basic/OpenCLExtensions.def:110 +OPENCLFEAT_INTERNAL(__opencl_c_generic_address_space, 200, ~0U) +OPENCLFEAT_INTERNAL(__opencl_c_work_group_collective_functions, 200, ~0U) +OPENCLFEAT_INTERNAL(__opencl_c_atomic_order

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-06 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. In D89869#2378235 , @azabaznov wrote: >> I guess targets like SPIR will be supporting all features by default? > > It sounds confusing for me: can you please elaborate about why does SPIR-V > target should support all features/e

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-06 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov added a comment. > I guess targets like SPIR will be supporting all features by default? It sounds confusing for me: can you please elaborate about why does SPIR-V target should support all features/extension by default? If we are compiling OpenCL C 3.0 with optional functionality we

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-05 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. PS I think it's better to move both test files to SemaOpenCL folder as they are not related to common parsing but OpenCL specifically. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89869/new/ https://reviews.llvm.org/D89869 __

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-11-05 Thread Anastasia Stulova via Phabricator via cfe-commits
Anastasia added a comment. I guess targets like SPIR will be supporting all features by default? At this point, I would prefer that we only add the features that affect the parsing directly i.e. used in the clang source code. FYI I think we need to explain the common design of features and exte

[PATCH] D89869: [OpenCL] Define OpenCL feature macros for all versions

2020-10-21 Thread Anton Zabaznov via Phabricator via cfe-commits
azabaznov created this revision. azabaznov added reviewers: Anastasia, svenvh. Herald added subscribers: dexonsmith, jfb. azabaznov requested review of this revision. This change relates to OpenCL C 3.0 support. RFC thread: https://lists.llvm.org/pipermail/cfe-dev/2020-September/066883.html The