-
Notifications
You must be signed in to change notification settings - Fork 130
[SYCL] Disambiguate atomic_ref references #545
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
I get the following error for llvm-test-suite as well as for intel/llvm:
I'm sure, this PR doesn't touch any ESIMD-related code at all. |
I don't understand why we're only testing the |
@Pennycook I'm going to get compilable tests to let the reviewers merge my PR in the compiler that adds |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm going to get compilable tests to let the reviewers merge my PR in the compiler that adds sycl::atomic_ref. Then I'll add the tests for sycl::atomic_ref in llvm-test-suite.
Sounds reasonable! LGTM.
The following code snippet fails in the try {
kernel Kernel(ClKernel, Context1);
} catch (cl::sycl::invalid_parameter_error e) {
Pass = true;
}
assert(Pass); I see the control flow never comes in the catch block even though the exception type is changed to the modern |
According to SYCL 2020, the atomic_ref type must become standard and be placed into the sycl:: namespace. So, when two atomic_ref types are there, the sycl::atomic_ref and sycl::ext::oneapi::atomic_ref ones, the reference to atomic_ref will become ambiguous: SYCL/AtomicRef/sub.h(132,20): error: reference to 'atomic_ref' is ambiguous To disambiguate the atomic_ref reference, the fully qualified name is used in the tests. Signed-off-by: Pavel Samolysov <[email protected]>
Signed-off-by: Pavel Samolysov <[email protected]>
@steffenlarsen @Pennycook @AGindinson I've rebased the tests on the updated |
Disable tests hangging dGPUs
According to SYCL 2020, the atomic_ref type must become standard and be placed into the sycl:: namespace. So, when two atomic_ref types are there, the sycl::atomic_ref and sycl::ext::oneapi::atomic_ref ones, the reference to atomic_ref will become ambiguous: SYCL/AtomicRef/sub.h(132,20): error: reference to 'atomic_ref' is ambiguous To disambiguate the atomic_ref reference, the fully qualified name is used in the tests. Signed-off-by: Pavel Samolysov <[email protected]>
According to SYCL 2020, the atomic_ref type must become standard and be
placed into the sycl:: namespace. So, when two atomic_ref types are there,
the sycl::atomic_ref and sycl::ext::oneapi::atomic_ref ones, the reference
to atomic_ref will become ambiguous:
SYCL/AtomicRef/sub.h(132,20): error: reference to 'atomic_ref' is ambiguous
To disambiguate the atomic_ref reference, the fully qualified name is used
in the tests.
Signed-off-by: Pavel Samolysov [email protected]