[llvm-branch-commits] [clang] [Clang] Load pass plugins before parsing LLVM options (PR #171868)

Vassil Vassilev via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Dec 15 06:22:32 PST 2025


================
@@ -233,6 +234,20 @@ bool ExecuteCompilerInvocation(CompilerInstance *Clang) {
 
   Clang->LoadRequestedPlugins();
 
+  // Load and store pass plugins for the back-end. Store the loaded pass plugins
+  // here and store references to these in CodeGenOpts to avoid pulling in the
+  // entire PassPlugin dependency chain in CodeGenOpts.
+  std::vector<std::unique_ptr<llvm::PassPlugin>> PassPlugins;
+  for (const std::string &Path : Clang->getCodeGenOpts().PassPluginNames) {
----------------
vgvassilev wrote:

Ok, for some reason I thought this part was in CodeGen. Phew. Can we move this code in `LoadRequestedPlugins` to make it work with other tools and actions?

https://github.com/llvm/llvm-project/pull/171868


More information about the llvm-branch-commits mailing list