Compilation: Disable LTO for all ILP32-on-LP64 ABIs.
Some checks are pending
ci / x86_64-linux-debug (push) Waiting to run
ci / x86_64-linux-release (push) Waiting to run
ci / aarch64-linux-debug (push) Waiting to run
ci / aarch64-linux-release (push) Waiting to run
ci / x86_64-macos-release (push) Waiting to run
ci / aarch64-macos-debug (push) Waiting to run
ci / aarch64-macos-release (push) Waiting to run
ci / x86_64-windows-debug (push) Waiting to run
ci / x86_64-windows-release (push) Waiting to run
ci / aarch64-windows (push) Waiting to run

Extension of 3a6a8b8aa5 to all similar ABIs. The
LLD issue affects them all.
This commit is contained in:
Alex Rønne Petersen 2024-11-18 14:42:53 +01:00
parent a703b85c7c
commit e6d2e16413

View File

@ -295,10 +295,16 @@ pub fn resolve(options: Options) ResolveError!Config {
if (!options.any_c_source_files) break :b false;
// https://github.com/llvm/llvm-project/pull/116537
if (target.cpu.arch.isMIPS64()) switch (target.abi) {
.gnuabin32, .muslabin32 => break :b false,
switch (target.abi) {
.gnuabin32,
.gnuilp32,
.gnux32,
.ilp32,
.muslabin32,
.muslx32,
=> break :b false,
else => {},
};
}
if (target.cpu.arch.isRISCV()) {
// Clang and LLVM currently don't support RISC-V target-abi for LTO.