[flang-commits] [flang] [Flang][Driver] Emit module summary for LTO (PR #164302)

Anchu Rajendran S via flang-commits flang-commits at lists.llvm.org
Tue Oct 21 10:20:25 PDT 2025


================
@@ -1019,11 +1019,15 @@ void CodeGenAction::runOptimizationPipeline(llvm::raw_pwrite_stream &os) {
 
   // Create the pass manager.
   llvm::ModulePassManager mpm;
+  // The module summary should be emitted by default for regular LTO
+  // except for ld64 targets.
+  bool emitSummary = (opts.PrepareForThinLTO || opts.PrepareForFullLTO) &&
+                     (triple.getVendor() != llvm::Triple::Apple);
+
+  if (emitSummary && !opts.PrepareForThinLTO)
----------------
anchuraj wrote:

Yes, it means ThinLTO is disabled. https://github.com/llvm/llvm-project/blob/main/clang/lib/CodeGen/BackendUtil.cpp#L1189 is  the corresponding clang code.

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


More information about the flang-commits mailing list