[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
Sat Nov 8 23:58:41 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:

Why is it necessary and why `NOT CMAKE_COMPILER_IS_GNUCC`? Won't it change the behavior for RISCV?

https://github.com/llvm/llvm-project/pull/162226


More information about the llvm-commits mailing list