-
Notifications
You must be signed in to change notification settings - Fork 117
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
[HIP] Add missing symbols hip #1031
Conversation
The testing doesn't like this change, will need to investigagte that before we can merge. |
Investigating |
Looking at the loader implementation, it expects the addr table to at least be null-initialized. |
It also just occurred to me that you can't return an error from these functions if you want the adapter to be functional. Once one get table function fails, the rest of them are skipped (https://github.com/oneapi-src/unified-runtime/blob/main/source/loader/ur_ldrddi.cpp#L8626). I think we have a bug that such platform is then made accessible to the user. |
Yeah the testing passes if you change ret to |
@kbenzie any word on this? Would be nice to fix lld builds in DPC++ |
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.
Is there any need for a (warning or error ) message inside the functions annotated with // TODO: Implement
?
We need to prioritise merging PR's for the next release which this isn't targetted for. Will aim to merge this after we've drained that release PR backlog. |
We need these entry points to pass or else the loader initialisation will fail, so it can't error out. I'm not sure about issuing a warning. Perhaps this is something that could be done once the |
The global exported symbols are here https://github.com/oneapi-src/unified-runtime/blob/adapters/source/adapters/adapter.map.in
This file https://github.com/oneapi-src/unified-runtime/blob/adapters/source/adapters/hip/ur_interface_loader.cpp is missing some symbols that are written in the lib map. This caused a linker error for LLD when linking in DPC++. This patch adds them, fixing the linker error.