[GridLaunch] Fixes for anonymous namespace types #31
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Types in anonymous namespaces are labeled with "(anonymous namespace)" string. This PR resolves the parenthesis and space characters when generating the GridLaunch wrapper.
Clang will sometimes mark the kernel function with InternalLinkage if the arguments contain types in anonymous namespaces. This will interfere with the opt passes in clamp-link. This PR also resolves that issue by forcing GridLaunch kernel functions to the default ExternalLinkage.
Finally, this PR adds some additional debugging information when a type is unknown.
Tests:
ROCK: master/b0b2dee
ROCR: master/de0d9b5
master also seems to have the same failure rate.
HIP-privatestaging: privatestaging/31dc13d2
HIP-Examples-privatestaging: privatestaging/23c7882
All tests passed, except for hipHostRegister. Expected fail.
All examples passed.