-
Notifications
You must be signed in to change notification settings - Fork 130
[SYCL][ESIMD] Add tests on simd vector move constructor #679
Conversation
Context variations are moved out as a test cases, with any action run directly over the simd move constructor result, with no further instance copy or move.
The copy constructor is a default fallback if there is no move constructor available
Currently simd vector uses a copy constructor as a fallback
Signed-off-by: Kochetkov, Yuriy <[email protected]>
Signed-off-by: Kochetkov, Yuriy <[email protected]>
/verify with intel/llvm#5132 |
@vasilytric Would you mind to take a look? |
Signed-off-by: Kochetkov, Yuriy <[email protected]>
Signed-off-by: Kochetkov, Yuriy <[email protected]>
Signed-off-by: Kochetkov, Yuriy <[email protected]>
@v-klochkov Would you mind to take a look after holidays? This PR uses intel/llvm#5132 |
// TODO Remove the level_zero restriction once the test is supported on other | ||
// platforms | ||
// UNSUPPORTED: cuda, hip | ||
// XRUN: %clangxx -fsycl %s -fsycl-device-code-split=per_kernel -o %t.out |
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.
@vladimirlaz - what is BKM for such tests. Should they be compiled/run and report fail, or skip the test compilation/run completely?
My concern regarding no-compilation and no-run approach used above is that it is unclear if the test is good, if it is compilable and does not have syntax errors.
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.
Fair point. Please take a look into the 37e5e50 as a suggestion.
The other option is to use RUN: %clangxx -DSKIP_VECTOR_LEN_32 -fsycl ...
. By doing so we would be able:
- to disable some checks in CI
- to enable all checks "by default", making it possible to switch them off one-by-one in case of multiple feature flags during debugging session - with no changes to the test file itself
Still I'm not sure if the RUN: %clangxx -DSKIP_VECTOR_LEN_32
solution would work for every setup or use-case, therefore the hard-coded macro was used.
Any feedback appreciated.
XFAIL remains so if there is PR with move constructors added the CI will fail effectively specifying the need to change the tests The feature flag was hard-coded into the source to disable test freeze for any use case, with or without parsing the RUN directives Signed-off-by: Kochetkov, Yuriy <[email protected]>
/verify with intel/llvm#5132 |
/verify |
Looks like the simple "/verify" didn't work for me. |
@v-klochkov BTW, am I right to suppose that the |
I believe, that is correct. |
Context variations are moved out as a test cases, with any action run directly over the simd move constructor result, with no further instance copy or move. XFAIL remains so if there is PR with move constructors added the CI will fail effectively specifying the need to change the tests The feature flag was hard-coded into the source to disable test freeze for any use case, with or without parsing the RUN directives Signed-off-by: Kochetkov, Yuriy <[email protected]>
Context variations are moved out as a test cases, with any action run directly over the simd move constructor result, with no further instance copy or move. XFAIL remains so if there is PR with move constructors added the CI will fail effectively specifying the need to change the tests The feature flag was hard-coded into the source to disable test freeze for any use case, with or without parsing the RUN directives Signed-off-by: Kochetkov, Yuriy <[email protected]>
…est-suite#679) Context variations are moved out as a test cases, with any action run directly over the simd move constructor result, with no further instance copy or move. XFAIL remains so if there is PR with move constructors added the CI will fail effectively specifying the need to change the tests The feature flag was hard-coded into the source to disable test freeze for any use case, with or without parsing the RUN directives Signed-off-by: Kochetkov, Yuriy <[email protected]>
Context variations are moved out as a test cases, with any action run directly
over the simd move constructor result, with no further instance copy or move.
There is also an extra verification of the case when copy constructor is called
instead of the move constructor, by using a test_proxy functionality.
Signed-off-by: Kochetkov, Yuriy [email protected]