[clang] [compiler-rt] [llvm] [SPARC] Properly handle CC for long double on sparc32 (PR #162226)
Sergei Barannikov via llvm-commits
llvm-commits at lists.llvm.org
Sun Nov 9 23:05:33 PST 2025
================
@@ -960,9 +960,9 @@ else ()
list(APPEND BUILTIN_CFLAGS_${arch} -fomit-frame-pointer -DCOMPILER_RT_ARMHF_TARGET)
endif()
- # For RISCV32, we must force enable int128 for compiling long
+ # For RISCV32 and 32-bit SPARC, we must force enable int128 for compiling long
# double routines.
- if(COMPILER_RT_ENABLE_SOFTWARE_INT128 OR "${arch}" STREQUAL "riscv32")
+ if(COMPILER_RT_ENABLE_SOFTWARE_INT128 OR "${arch}" MATCHES "riscv32|sparc$" AND NOT CMAKE_COMPILER_IS_GNUCC)
----------------
s-barannikov wrote:
I suppose riscv-gcc doesn't support this option either, so this should be ok.
One thing I'm not sure of is the order CMake evaluates OR/AND, so it might require parentheses around the condition (if the order matters at all).
https://github.com/llvm/llvm-project/pull/162226
More information about the llvm-commits
mailing list