@@ -85,7 +85,7 @@ It also depends on the `SYCL_EXT_ONEAPI_PROPERTY_LIST` extension.
85
85
86
86
[NOTE]
87
87
====
88
- In this document, we use `device_global` to indicate the proposed `sycl::ext::oneapi::device_global`.
88
+ In this document, we use `device_global` to indicate the proposed `sycl::ext::oneapi::experimental:: device_global`.
89
89
====
90
90
91
91
The purpose of this document is to clearly describe and specify `device_global` and related
@@ -112,7 +112,7 @@ struct MyClass {
112
112
bool flag;
113
113
};
114
114
115
- using namespace sycl::ext::oneapi;
115
+ using namespace sycl::ext::oneapi::experimental ;
116
116
117
117
device_global<MyClass> dm1;
118
118
static device_global<int[4]> dm2;
@@ -171,7 +171,7 @@ A `device_global` on a given device maintains its state (address of the allocati
171
171
172
172
[source,c++]
173
173
----
174
- namespace sycl::ext::oneapi {
174
+ namespace sycl::ext::oneapi::experimental {
175
175
template <typename T, typename PropertyListT = property_list<>>
176
176
class device_global {
177
177
...
@@ -201,7 +201,7 @@ The section below and the table following describe the constructors, member func
201
201
202
202
[source,c++]
203
203
----
204
- namespace sycl::ext::oneapi {
204
+ namespace sycl::ext::oneapi::experimental {
205
205
206
206
template <typename T, typename PropertyListT = property_list<>>
207
207
class device_global {
@@ -269,7 +269,7 @@ public:
269
269
static constexpr /*unspecified*/ get_property();
270
270
};
271
271
272
- } // namespace sycl::ext::oneapi
272
+ } // namespace sycl::ext::oneapi::experimental
273
273
----
274
274
275
275
[frame="topbot",options="header"]
@@ -378,7 +378,7 @@ template<typename propertyT>
378
378
static constexpr bool has_property();
379
379
----
380
380
| Returns true if the `PropertyListT` contains the property specified by `propertyT`. Returns false if it does not.
381
- Available only if `sycl::is_property_of_v<propertyT, sycl::ext::oneapi::device_global>` is true.
381
+ Available only if `sycl::is_property_of_v<propertyT, sycl::ext::oneapi::experimental:: device_global>` is true.
382
382
383
383
// --- ROW BREAK ---
384
384
a|
@@ -389,7 +389,7 @@ static constexpr auto get_property();
389
389
----
390
390
| Returns an object of the class used to represent the value of property `propertyT`.
391
391
Must produce a compiler diagnostic if `PropertyListT` does not contain a `propertyT` property.
392
- Available only if `sycl::is_property_of_v<propertyT, sycl::ext::oneapi::device_global>` is true.
392
+ Available only if `sycl::is_property_of_v<propertyT, sycl::ext::oneapi::experimental:: device_global>` is true.
393
393
394
394
|===
395
395
@@ -439,7 +439,7 @@ The following example illustrates some of these restrictions:
439
439
[source, c++]
440
440
----
441
441
#include <sycl/sycl.hpp>
442
- using namespace sycl::ext::oneapi;
442
+ using namespace sycl::ext::oneapi::experimental ;
443
443
444
444
device_global<int> a; // OK
445
445
static device_global<int> b; // OK
@@ -489,7 +489,7 @@ parameter as shown in this example:
489
489
490
490
[source,c++]
491
491
----
492
- using namespace sycl::ext::oneapi;
492
+ using namespace sycl::ext::oneapi::experimental ;
493
493
494
494
device_global<MyClass, property_list_t<device_image_scope::value_t>> dm1;
495
495
device_global<int[4], property_list_t<host_access::value_t<host_access::access::read>> dm2;
@@ -500,7 +500,7 @@ following table describes their effect.
500
500
501
501
[source,c++]
502
502
----
503
- namespace sycl::ext::oneapi {
503
+ namespace sycl::ext::oneapi::experimental {
504
504
505
505
struct device_image_scope {
506
506
using value_t = property_value<device_image_scope>;
@@ -542,7 +542,7 @@ inline constexpr init_mode::value_t<T> init_mode_v;
542
542
template<bool Enable>
543
543
inline constexpr implement_in_csr::value_t<Enable> implement_in_csr_v;
544
544
545
- } // namespace sycl::ext::oneapi
545
+ } // namespace sycl::ext::oneapi::experimental
546
546
----
547
547
548
548
[frame="topbot",options="header"]
@@ -718,13 +718,13 @@ For example:
718
718
```c++
719
719
// In one translation unit
720
720
#include <sycl/sycl.hpp>
721
- using namespace sycl::ext::oneapi;
721
+ using namespace sycl::ext::oneapi::experimental ;
722
722
723
723
SYCL_EXTERNAL device_global<int> Foo; // definition (also a declaration)
724
724
725
725
// In another translation unit
726
726
#include <sycl/sycl.hpp>
727
- using namespace sycl::ext::oneapi;
727
+ using namespace sycl::ext::oneapi::experimental ;
728
728
using namespace sycl;
729
729
730
730
SYCL_EXTERNAL extern device_global<int> Foo; // declaration
@@ -1076,7 +1076,7 @@ A sketch of the anticipated constructor interface is:
1076
1076
1077
1077
[source,c++]
1078
1078
----
1079
- namespace sycl::ext::oneapi {
1079
+ namespace sycl::ext::oneapi::experimental {
1080
1080
1081
1081
template <typename T, typename PropertyListT = property_list<>>
1082
1082
class device_global {
@@ -1107,7 +1107,7 @@ The example below creates two global namespace scope `device_global` objects nam
1107
1107
[source,c++]
1108
1108
----
1109
1109
using namespace sycl;
1110
- using namespace sycl::ext::oneapi;
1110
+ using namespace sycl::ext::oneapi::experimental ;
1111
1111
1112
1112
device_global<MyClass> dm1;
1113
1113
static device_global<int[4]> dm2{1, 3, 5, 7}; // Requires C++20 to be enabled
0 commit comments