This adds get_kernel_max_sub_group_size_for_ndrange and get_kernel_sub_group_count_for_ndrange.
Note this also changes err_opencl_requires_extension to print the name of the function that the diagnostic is warning about.
Paths
| Differential D33945
[OpenCL] Add support for missing sub_group functions. ClosedPublic Authored by joey on Jun 6 2017, 9:12 AM.
Details
Diff Detail Event TimelineComment Actions Please, split this patch into two parts:
This revision now requires changes to proceed.Jun 19 2017, 4:09 AM joey edited edge metadata. Comment ActionsUpdated all the comments you made and rebased. Sorry for the long delay. Comment Actions Thanks!
Please, add a regression test for the part #3. You might also review this patch with @Anastasia (OpenCL code owner).
This revision is now accepted and ready to land.Jul 27 2017, 7:07 AM Comment Actions I committed all the parts separately: r309567 (with r309571 to fix a test), r309678 and r310477.
Revision Contents
Diff 101576 CodeGen/CGBuiltin.cpp
CodeGenOpenCL/cl20-device-side-enqueue.cl
CodeGenOpenCL/pipe_builtin.cl
Sema/Sema.cpp
Sema/SemaChecking.cpp
SemaOpenCL/cl20-device-side-enqueue.cl
SemaOpenCL/extension-begin.cl
SemaOpenCL/invalid-pipe-builtin-cl2.0.cl
SemaOpenCL/sub-group-bifs.cl
clang/Basic/Builtins.def
clang/Basic/DiagnosticSemaKinds.td
clang/Sema/Sema.h
|
This change is not covered with regression tests.