-
Notifications
You must be signed in to change notification settings - Fork 772
Add DPCPP_ENABLE_OPAQUE_POINTERS option #6378
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
Conversation
This option controls the default behavior of LLVM projects regarding opaque pointers. The default value is OFF as most of the SYCL compiler components are not ready to handle opaque pointers.
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.
CI changes looks ok
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.
'Tools' related changes look ok to me. Thanks
Allow configuring opaque pointers for clang project independently from DPCPP_ENABLE_OPAQUE_POINTERS option.
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.
FE changes look okay to me.
@andykaylor, @asudarsa, could you take a look at new commits, please? |
Ping. |
This option is useful for testing opaque pointers support and controlled transition of lit tests.
Hi @bader |
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. Thanks
@andykaylor, this PR holds off follow-up fixes, so I'd like to merge it as soon as possible. Is it okay to commit current version and address further comments (if any) separately? |
3c43979
@jchlanda, do you think that this failure on NVIDIA GPU https://github.com/intel/llvm/runs/7391421134?check_suite_focus=true is related to this change? This change is not expected to change the default behavior. |
@jcranmer-intel, I've added ab05021, which updates a few tests.
|
It doesn't look related, even if we ignore the assert messages which are a bit flaky, upon hitting the assert PI runtime should generate error
but this one reports |
My current thinking for the matrix type situation in the LLVM-SPIRV translator is a short-term fix that has the clang frontend just lower to the correct name of the LLVM struct type in the first place (obviating the need to change in the translator itself), with a longer-term fix of adding the LLVM opaque type support I proposed in the RFC. |
I can't reproduce this issue locally, so I restarted CI jobs and it failed again, but with the different error:
https://github.com/intel/llvm/runs/7450227286?check_suite_focus=true These look like flaky llvm-test-suite issues not caused by this patch. I'll file a report to investigate them and merge this PR. |
This option controls the default behavior of LLVM projects regarding
opaque pointers. The default value is OFF as most of the SYCL compiler
components are not ready to handle opaque pointers.
This change adds a new nightly job testing SYCL compiler with enabled
opaque pointers by default.