[clang] Correctly link and optimize device libraries with -mlink-builtin-bitcode (PR #69371)
Joseph Huber via cfe-commits
cfe-commits at lists.llvm.org
Mon Nov 6 11:10:36 PST 2023
================
@@ -0,0 +1,29 @@
+//===-- LinkInModulesPass.cpp - Module Linking pass --------------- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+/// \file
+///
+/// LinkInModulesPass implementation.
+///
+//===----------------------------------------------------------------------===//
+
+#include "LinkInModulesPass.h"
+#include "BackendConsumer.h"
+
+using namespace llvm;
+
+LinkInModulesPass::LinkInModulesPass(clang::BackendConsumer *BC,
+ bool ShouldLinkFiles) : BC(BC),
+ ShouldLinkFiles(ShouldLinkFiles) {}
+
+PreservedAnalyses LinkInModulesPass::run(Module &M, ModuleAnalysisManager &AM) {
+
+ if (BC != NULL && BC->LinkInModules(&M, ShouldLinkFiles))
----------------
jhuber6 wrote:
```suggestion
if (BC && BC->LinkInModules(&M, ShouldLinkFiles))
```
Here as well.
https://github.com/llvm/llvm-project/pull/69371
More information about the cfe-commits
mailing list