Branch: refs/heads/main
Revision: 646ce8f
Author: e-kayrakli
Link: Unavailable
Log Message:
Merge pull request #20016 from e-kayrakli/gpu-llvm-14
Fix GPU support for LLVM 14, ignore CUDA version warnings
This PR checks the device
attribute while adding declarations to lvt
.
Resolves linker error in GPU code generation with llvm 13.0.1 · Issue #19740 · chapel-lang/chapel · GitHub
While working on this, I realized that with clang 14, the CUDA version warning
has changed. Instead of fixing our PREDIFF for a warning message that we wanted
to get rid of anyways, I bit the bullet and figured out the correct incantation
for making clang ignore it for us.
Future Work
This PR doesn't take us all the way to what me and @mppf described starting
linker error in GPU code generation with llvm 13.0.1 · Issue #19740 · chapel-lang/chapel · GitHub. I
have a separate branch that makes lvt use a llvm::SmallVector
to keep track of
multiple overloads. I haven't figured out how to match the correct version to a
CallExpr
, yet. But before pursuing that further, I forked off this branch to
make sure we have LLVM 14 support as early as we can and start testing it.
[Reviewed by @mppf and @stonea]
Test
-
gpu/native
Modified Files:
M compiler/llvm/clangUtil.cpp
M test/gpu/native/PREDIFFCompare: Comparing 372666dfa47f...646ce8fd3fd1 · chapel-lang/chapel · GitHub