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.pull/792/head
parent
19b2f050d7
commit
933c9ab0af
|
|
@ -1479,6 +1479,14 @@ config("compiler_cpu_abi") {
|
||||||
}
|
}
|
||||||
|
|
||||||
cflags += [ "-m${mips_float_abi}-float" ]
|
cflags += [ "-m${mips_float_abi}-float" ]
|
||||||
|
|
||||||
|
# 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 (!is_debug && use_thin_lto && is_a_target_toolchain && mips_float_abi == "soft") {
|
||||||
|
ldflags += [ "-Wl,-mllvm,-mattr=+soft-float" ]
|
||||||
|
}
|
||||||
} else if (current_cpu == "mips") {
|
} else if (current_cpu == "mips") {
|
||||||
ldflags += [ "-Wl,--hash-style=sysv" ]
|
ldflags += [ "-Wl,--hash-style=sysv" ]
|
||||||
if (custom_toolchain == "") {
|
if (custom_toolchain == "") {
|
||||||
|
|
@ -1524,6 +1532,14 @@ config("compiler_cpu_abi") {
|
||||||
}
|
}
|
||||||
|
|
||||||
cflags += [ "-m${mips_float_abi}-float" ]
|
cflags += [ "-m${mips_float_abi}-float" ]
|
||||||
|
|
||||||
|
# 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 (!is_debug && use_thin_lto && is_a_target_toolchain && mips_float_abi == "soft") {
|
||||||
|
ldflags += [ "-Wl,-mllvm,-mattr=+soft-float" ]
|
||||||
|
}
|
||||||
} else if (current_cpu == "mips64el") {
|
} else if (current_cpu == "mips64el") {
|
||||||
cflags += [ "-D__SANE_USERSPACE_TYPES__" ]
|
cflags += [ "-D__SANE_USERSPACE_TYPES__" ]
|
||||||
ldflags += [ "-Wl,--hash-style=sysv" ]
|
ldflags += [ "-Wl,--hash-style=sysv" ]
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue