Commit 736ef71
committed
CP023 Accessor aliases, revision 0.2
In order to reduce the verbosity of programming with SYCL accessors,
this proposal aims to reduce the number of template parameters
to just 2 from the current 5.
It achieves this by slightly revising
how to treat read-only data
and adding alias templates
based on the access target.
1. Main changes
* Default accessor template parameters
* Simplify access modes
* Alias templates based on access target
* Extend the handler class
2. Accessor alias templates
* `constant_buffer_accessor
* `host_accessor`
3. Treat `const T` the same as `access::mode::read`
* Simplifies a lot of code
4. Define implicit conversions for equivalent types
5. Implicit conversions that add `const`
6. Overload for `handler::require` that also takes an access mode
* To weaken the access mode
8. Default all accessor template parameters
* Expect the data type
* Default to an accessor to global buffer with read-write access
* Assumes accessors can be a placeholder without template parameter
9. Discussed some considerations and alternatives
10. Examples of reduced verbosity1 parent adfdc4c commit 736ef71
3 files changed
+419
-295
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
| 66 | + | |
67 | 67 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
8 | 10 | | |
9 | 11 | | |
10 | 12 | | |
| |||
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
20 | | - | |
| 22 | + | |
0 commit comments