-
Notifications
You must be signed in to change notification settings - Fork 770
[SYCL][E2E] Fix XFAIL
statements that use negated device features
#18641
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -393,4 +393,10 @@ def map_result(features, code): | |||||||||||
if len(devices_for_test) == 1: | ||||||||||||
device = devices_for_test[0] | ||||||||||||
result.code = map_result(test.config.sycl_dev_features[device], result.code) | ||||||||||||
|
||||||||||||
# Set this to empty so internal lit code won't change our result if it incorrectly | ||||||||||||
# thinks the test should XFAIL. This can happen when our XFAIL condition relies on | ||||||||||||
# device features, since the internal lit code doesn't have knowledge of these. | ||||||||||||
test.xfails = [] | ||||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. sorry so which features are known by the general lit infra and which are known only by our custom code? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The features in There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. could we add the dev features to There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the issue would be in situations with multiple devices where a single device might be marked as XFAIL, while the rest pass. If we add all the device features to The reason I did it this way was mostly to avoid doing this redundant second XFAIL check. Also in the case that we change the logic for XFAILs in our code to properly account for running on multiple devices, it is likely that we would want this internal XFAIL check turned off in favor of our own logic. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. does the xfail check only happen once in the lit infra with multiple devices? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes the internal lit infra XFAIL check only happens once after we return the result of our test. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. and the result contains all device runs? sorry just making sure we can't use the lit infra There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yeah its a single result for the amalgamation of all the device runs. i.e., There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. got it, thanks There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. does our outer lit code handle XFAILs for both device specific features and normal features? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yep the part just above this Lines 391 to 395 in e5d5382
For build only if the test is only ran for a single triple we only use the normal features, and on full/run-only if the test is only ran for one device we use |
||||||||||||
|
||||||||||||
return result |
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.
Actually fails on BMG, but this statement was an example of one that was being incorrectly processed and marked as XFAIL on BMG.
https://github.com/intel/llvm/actions/runs/15194270458/job/42735337999