Author: Ben Langmuir Date: 2025-03-05T08:25:39-08:00 New Revision: f8ba0df8781a9f2d0b54fcd6b06a47a06234a4c4
URL: https://github.com/llvm/llvm-project/commit/f8ba0df8781a9f2d0b54fcd6b06a47a06234a4c4 DIFF: https://github.com/llvm/llvm-project/commit/f8ba0df8781a9f2d0b54fcd6b06a47a06234a4c4.diff LOG: [clang][deps] Remove dependency on llvm targets from lib DependencyScanning (#129774) In d64eccf we split the object file reader from the writer and removed the dependency on clangCodeGen from the dependency scanner. However, we were still initializing all the llvm targets, which was needed for writing object file pcms but not reading them. This caused us to link more llvm target code than necessary. Shrinks clangd by nearly 50% for me. rdar://144790713 Added: Modified: clang/lib/Tooling/DependencyScanning/CMakeLists.txt clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp Removed: ################################################################################ diff --git a/clang/lib/Tooling/DependencyScanning/CMakeLists.txt b/clang/lib/Tooling/DependencyScanning/CMakeLists.txt index 66795b0be0baa..6b500a183bcfc 100644 --- a/clang/lib/Tooling/DependencyScanning/CMakeLists.txt +++ b/clang/lib/Tooling/DependencyScanning/CMakeLists.txt @@ -1,5 +1,4 @@ set(LLVM_LINK_COMPONENTS - ${LLVM_TARGETS_TO_BUILD} Core Option Support diff --git a/clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp b/clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp index 4fb5977580497..96fe40c079c65 100644 --- a/clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp +++ b/clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp @@ -7,7 +7,6 @@ //===----------------------------------------------------------------------===// #include "clang/Tooling/DependencyScanning/DependencyScanningService.h" -#include "llvm/Support/TargetSelect.h" using namespace clang; using namespace tooling; @@ -17,10 +16,4 @@ DependencyScanningService::DependencyScanningService( ScanningMode Mode, ScanningOutputFormat Format, ScanningOptimizations OptimizeArgs, bool EagerLoadModules, bool TraceVFS) : Mode(Mode), Format(Format), OptimizeArgs(OptimizeArgs), - EagerLoadModules(EagerLoadModules), TraceVFS(TraceVFS) { - // Initialize targets for object file support. - llvm::InitializeAllTargets(); - llvm::InitializeAllTargetMCs(); - llvm::InitializeAllAsmPrinters(); - llvm::InitializeAllAsmParsers(); -} + EagerLoadModules(EagerLoadModules), TraceVFS(TraceVFS) {} _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits