[all-commits] [llvm/llvm-project] 663647: [DTLTO] Fix handling of multi-module bitcode input...
Ben Dunbobbin via All-commits
all-commits at lists.llvm.org
Wed Jan 14 16:21:22 PST 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 663647f1b2befbb4eda52369438febf42e528921
https://github.com/llvm/llvm-project/commit/663647f1b2befbb4eda52369438febf42e528921
Author: Ben Dunbobbin <Ben.Dunbobbin at sony.com>
Date: 2026-01-15 (Thu, 15 Jan 2026)
Changed paths:
A cross-project-tests/dtlto/multimodule.test
M llvm/include/llvm/LTO/LTO.h
M llvm/lib/DTLTO/DTLTO.cpp
M llvm/lib/LTO/LTO.cpp
Log Message:
-----------
[DTLTO] Fix handling of multi-module bitcode inputs (#174624)
This change fixes two issues when processing multi-module bitcode files
in DTLTO:
1. The DTLTO archive handling code incorrectly uses
getSingleBitcodeModule(), which asserts when the bitcode file contains
more than one module.
2. The temporary file containing the contents of an input archive member
was not emitted for multi-module bitcode files. This was due to
incorrect logic for recording whether a bitcode input contains any
ThinLTO modules. In a typical multi-module bitcode file, the first
module is a ThinLTO module while a subsequent auxiliary module is
non-ThinLTO. When modules are processed in order, the auxiliary module
causes the entire bitcode file to be classified as non-ThinLTO, and the
archive-member emission logic then incorrectly skips it.
In addition, this patch adds a test that verifies that multi-module
bitcode files can be successfully linked with DTLTO. The test reproduces
both issues as they existed prior to this change.
SIE Tracker: TOOLCHAIN-21008
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list