@@ -42,11 +42,12 @@ void testQueriesAndProperties() {
4242 .ext_oneapi_get_info <sycl::ext::oneapi::experimental::info::
4343 kernel_queue_specific::max_num_work_groups>(
4444 q, wgRange, wgRange.size () * sizeof (int ));
45- const auto props = sycl::ext::oneapi::experimental::properties{
46- sycl::ext::oneapi::experimental::use_root_sync};
4745 struct TestKernel0 {
4846 void operator ()() const {}
49- auto get (sycl::ext::oneapi::experimental::properties_tag) { return props; }
47+ auto get (sycl::ext::oneapi::experimental::properties_tag) {
48+ return sycl::ext::oneapi::experimental::properties{
49+ sycl::ext::oneapi::experimental::use_root_sync};
50+ }
5051 };
5152 q.single_task <class QueryKernel >(TestKernel0{});
5253
@@ -69,14 +70,11 @@ void testRootGroup() {
6970 .ext_oneapi_get_info <sycl::ext::oneapi::experimental::info::
7071 kernel_queue_specific::max_num_work_groups>(
7172 q, WorkGroupSize, 0 );
72- const auto props = sycl::ext::oneapi::experimental::properties{
73- sycl::ext::oneapi::experimental::use_root_sync};
7473 sycl::buffer<int > dataBuf{sycl::range{maxWGs * WorkGroupSize}};
7574 const auto range = sycl::nd_range<1 >{maxWGs * WorkGroupSize, WorkGroupSize};
7675 struct TestKernel1 {
77- sycl::accessor data;
78- TestKernel1 (sycl::accessor data_param) { data = data_param; }
7976 void operator ()(sycl::nd_item<1 > it) const {
77+ sycl::accessor data{dataBuf, h};
8078 volatile float X = 1 .0f ;
8179 volatile float Y = 1 .0f ;
8280 auto root = it.ext_oneapi_get_root_group ();
@@ -95,11 +93,14 @@ void testRootGroup() {
9593 sycl::group_barrier (root);
9694 data[root.get_local_id ()] = sum;
9795 }
98- auto get (sycl::ext::oneapi::experimental::properties_tag) { return props; }
96+ auto get (sycl::ext::oneapi::experimental::properties_tag) {
97+ return sycl::ext::oneapi::experimental::properties{
98+ sycl::ext::oneapi::experimental::use_root_sync};
99+ ;
100+ }
99101 };
100102 q.submit ([&](sycl::handler &h) {
101- sycl::accessor data{dataBuf, h};
102- h.parallel_for <class RootGroupKernel >(range, TestKernel1 (data));
103+ h.parallel_for <class RootGroupKernel >(range, TestKernel1{});
103104 });
104105 sycl::host_accessor data{dataBuf};
105106 const int workItemCount = static_cast <int >(range.get_global_range ().size ());
@@ -118,19 +119,12 @@ void testRootGroupFunctions() {
118119 .ext_oneapi_get_info <sycl::ext::oneapi::experimental::info::
119120 kernel_queue_specific::max_num_work_groups>(
120121 q, WorkGroupSize, 0 );
121- const auto props = sycl::ext::oneapi::experimental::properties{
122- sycl::ext::oneapi::experimental::use_root_sync};
123-
124122 constexpr int testCount = 9 ;
125123 sycl::buffer<bool > testResultsBuf{sycl::range{testCount}};
126124 const auto range = sycl::nd_range<1 >{maxWGs * WorkGroupSize, WorkGroupSize};
127-
128125 struct TestKernel2 {
129- sycl::accessor testResults;
130- TestKernel2 (sycl::accessor testResults_param) {
131- testResults = testResults_param;
132- }
133126 void operator ()(sycl::nd_item<1 > it) const {
127+ sycl::accessor testResults{testResultsBuf, h};
134128 const auto root = it.ext_oneapi_get_root_group ();
135129 if (root.leader () || root.get_local_id () == 3 ) {
136130 testResults[0 ] = root.get_group_id () == sycl::id<1 >(0 );
@@ -147,13 +141,14 @@ void testRootGroupFunctions() {
147141 root.get_local_linear_range () == root.get_local_range ().size ();
148142 }
149143 }
150- auto get (sycl::ext::oneapi::experimental::properties_tag) { return props; }
144+ auto get (sycl::ext::oneapi::experimental::properties_tag) {
145+ return sycl::ext::oneapi::experimental::properties{
146+ sycl::ext::oneapi::experimental::use_root_sync};
147+ }
151148 };
152149
153150 q.submit ([&](sycl::handler &h) {
154- sycl::accessor testResults{testResultsBuf, h};
155- h.parallel_for <class RootGroupFunctionsKernel >(range,
156- TestKernel2 (testResults));
151+ h.parallel_for <class RootGroupFunctionsKernel >(range, TestKernel2{});
157152 });
158153 sycl::host_accessor testResults{testResultsBuf};
159154 for (int i = 0 ; i < testCount; i++) {
0 commit comments