diff options
Diffstat (limited to 'clang/lib/CodeGen/CodeGenAction.cpp')
-rw-r--r-- | clang/lib/CodeGen/CodeGenAction.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CodeGenAction.cpp b/clang/lib/CodeGen/CodeGenAction.cpp index 062c7be..b70a080 100644 --- a/clang/lib/CodeGen/CodeGenAction.cpp +++ b/clang/lib/CodeGen/CodeGenAction.cpp @@ -159,7 +159,12 @@ namespace clang { if (LinkModule) { if (Linker::LinkModules( M, LinkModule.get(), - [=](const DiagnosticInfo &DI) { linkerDiagnosticHandler(DI); })) + [=](const DiagnosticInfo &DI) { linkerDiagnosticHandler(DI); }, + (LangOpts.CUDA && LangOpts.CUDAIsDevice && + LangOpts.CUDAUsesLibDevice) + ? (Linker::Flags::LinkOnlyNeeded | + Linker::Flags::InternalizeLinkedSymbols) + : Linker::Flags::None)) return; } |