You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"range" and "id" did not correspond to the SYCL 2020 specification: the binary operators were corrected, the necessary operators were added, unnecessary operators were deprecated.
bader
changed the title
[SYCL] Changes id and range class according to sycl specification
[SYCL] Align id and range class implementation with SYCL specification
Sep 10, 2021
"range" and "id" did not correspond to the SYCL 2020 specification: the binary operators were corrected, the necessary operators were added, unnecessary operators were deprecated.
Could you please provide more details on how exactly range and id does not correspond to the SYCL2020 spec?
"range" and "id" did not correspond to the SYCL 2020 specification: the binary operators were corrected, the necessary operators were added, unnecessary operators were deprecated.
Could you please provide more details on how exactly range and id does not correspond to the SYCL2020 spec?
The DPC++ "range" implementation has a conversion to "id", which is not in the spec, and "id" implementation has a conversion to "range", which is also not in the spec.
As for operators:
The 16 binary operators "+, -, *, /, %, <<, >>, &, |, ^, &&, ||, <, >, <=, >=" are defined as either member functions or hidden friend functions depending on the arguments. However, the spec defines these operators as hidden friend functions for all argument variations.
The 16 binary operators are defined as templates that take any integral type, but the spec defines these operators only for "size_t".
The 10 assignment operators "+=, -=, *=, /=, %=, <<=, >>=, &=, |=, ^=" are defined as member functions, but the spec defines them as hidden friend functions.
In addition, DPC++ is missing the following hidden friend functions which are defined in the spec:
Unary "+" and "-".
Prefix "++" and "--"
Postfix "++" and "--"
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
"range" and "id" did not correspond to the SYCL 2020 specification: the binary operators were corrected, the necessary operators were added, unnecessary operators were deprecated.