Skip to content

Commit e4024d7

Browse files
[SYCL] Fix method definition of sub_group_mask::group_ballot (#8212)
Closes #8201 provided default value for `predicate` argument in `sub_group_mask::group_ballot` definition --------- Co-authored-by: Alexey Sachkov <alexey.sachkov@intel.com>
1 parent 4bf87d2 commit e4024d7

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

sycl/include/sycl/ext/oneapi/sub_group_mask.hpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,14 @@ namespace ext::oneapi {
2929
#define BITS_TYPE uint32_t
3030
#endif
3131

32+
// defining `group_ballot` here to make predicate default `true`
33+
// need to forward declare sub_group_mask first
34+
struct sub_group_mask;
35+
template <typename Group>
36+
detail::enable_if_t<std::is_same<std::decay_t<Group>, sub_group>::value,
37+
sub_group_mask>
38+
group_ballot(Group g, bool predicate = true);
39+
3240
struct sub_group_mask {
3341
friend class detail::Builder;
3442
using BitsType = BITS_TYPE;
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// RUN: %clangxx -fsycl -fsycl-device-only -fsyntax-only -Xclang -verify %s
2+
// expected-no-diagnostics
3+
4+
#include <sycl/sycl.hpp>
5+
6+
int main() {
7+
sycl::queue Q;
8+
Q.parallel_for(sycl::nd_range<1>{32, 32}, [=](sycl::nd_item<1> item) {
9+
auto Mask = sycl::ext::oneapi::group_ballot(item.get_sub_group());
10+
});
11+
}

0 commit comments

Comments
 (0)