-
Notifications
You must be signed in to change notification settings - Fork 1
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
Add a test (expected to fail) for calls to device function in different translation units #39
Conversation
# Code to pull only lit instructions from first source file | ||
list(LENGTH source num_source_files) | ||
if(${num_source_files} GREATER 1) | ||
list(GET source 0 lit_instructions) | ||
add_test(NAME ${exe}.${lang}.rdc COMMAND ${LIT} -vv -D EXT=${lang}.rdc ${lit_instructions}) | ||
else() | ||
add_test(NAME ${exe}.${lang}.rdc COMMAND ${LIT} -vv -D EXT=${lang}.rdc ${source}) | ||
endif() |
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.
Do we need this? We already have a multi-file test (file1_kernel.cpp
, file2_kernel.cpp
) and lit picks up checks from the first file
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.
On the rdc tests you do not have multi-file tests and are not taking into account the ARGN function parameter.
Now that both functions have an extra argument (will_fail) I bundle all sources together as a list on the second argument.
@ggeorgakoudis I addressed your comments and I added one more test. The additional test generates a library from device code (when building the library the pass is turned off). The test links in with that code and executes it. This currently fails because of the original rdc issue we have. Once this branch lands I believe the test will manifest one more issue we need to fix. |
@ggeorgakoudis should we close this? |
Superseded #48 |
When calling a proteus annotated kernel that calls an external device function with rdc proteus fails.
AMD:
CUDA: