[compiler-rt] Found one more delta to unbreak build for z/os (PR #82789)

Rainer Orth via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 31 07:06:32 PST 2025


================
@@ -756,8 +756,15 @@ set(riscv64_SOURCES
   ${riscv_SOURCES}
 )
 
-set(sparc_SOURCES ${GENERIC_SOURCES} ${GENERIC_TF_SOURCES})
-set(sparcv9_SOURCES ${GENERIC_SOURCES} ${GENERIC_TF_SOURCES})
+# Exclude the FT sources for 32-bit SPARC.  Clang doesn't
+# support 128-bit long double on 32-bit SPARC.
+if("${COMPILER_RT_DEFAULT_TARGET_ARCH}" MATCHES "sparc")
+  set(sparc_SOURCES ${GENERIC_SOURCES})
+  set(sparcv9_SOURCES ${GENERIC_SOURCES})
+else()
+  set(sparc_SOURCES ${GENERIC_SOURCES} ${GENERIC_TF_SOURCES})
+  set(sparcv9_SOURCES ${GENERIC_SOURCES} ${GENERIC_TF_SOURCES})
+endif()
----------------
rorth wrote:

Not right now.  I seriously think we need to take two steps back first.  So far, you haven't provided some quite  crucial information:
- What is the goal of this patch?
- What exactly fails with current `main`?
- Then for every change we need a detailed justification why the current code is wrong, while your proposed change is right, not just for s390x, but in general.

Right now, I can't help but feel that we've poking in the dark for months without any real progress or even understanding what the problem is.  This is extremely tiring: I at least have long run out of energy, time, and patience about this patch.  The upcoming releases of binutils 2.44, GCC 15, and LLVM 20 don't help in the slightest for this.

An added problem is the fact that to the best of my knowledge there's no public s390x system where one could try things for your target.  OTOH, there's a Solaris/sparcv9 system in the cfarm that is perfectly capable of building and testing LLVM.  I don't even know if there's any s390x ABI document available, so knowing the system's properties is all but impossible.

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


More information about the llvm-commits mailing list