mipsel: build: Work around MIPS floating point ABI passing in LTO

Clang reports:

floating point ABI '-mdouble-float' is incompatible with target floating point ABI '-msoft-float'

when -msoft-float is enabled for the architecture.
This commit is contained in:
klzgrad
2026-09-25 09:05:56 +08:00
parent 036f927e36
commit ffef80d477
+7
View File
@@ -1377,6 +1377,13 @@ config("compiler_codegen") {
}
}
# Fix float ABI information not being passed in LLVM bitcode for LTO
# and link failure with -mdouble-float being incorrectly used by default
# while the bitcode was compiled with -msoft-float.
# See https://discourse.llvm.org/t/myterious-soft-float-output-in-lto-cache/70753
if (current_cpu == "mipsel" && !is_debug && use_thin_lto && is_a_target_toolchain && mips_float_abi == "soft") {
ldflags += [ "-Wl,-mllvm,-mattr=+soft-float" ]
}
asmflags = cflags
}