[compiler-rt] 57f1ec6 - builtins: adjust FP80 source management (#183871)

via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 6 11:12:19 PST 2026


Author: Saleem Abdulrasool
Date: 2026-03-06T11:12:13-08:00
New Revision: 57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b

URL: https://github.com/llvm/llvm-project/commit/57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b
DIFF: https://github.com/llvm/llvm-project/commit/57f1ec6e0a4ec3cd4a485ca1ec85e3efe541933b.diff

LOG: builtins: adjust FP80 source management (#183871)

We would previously include the FP80 sources into the Windows build if
we built with the GNU driver rather than the `cl` driver.

Added: 
    

Modified: 
    compiler-rt/lib/builtins/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/builtins/CMakeLists.txt b/compiler-rt/lib/builtins/CMakeLists.txt
index f43ef4743ff97..44548c191fbd2 100644
--- a/compiler-rt/lib/builtins/CMakeLists.txt
+++ b/compiler-rt/lib/builtins/CMakeLists.txt
@@ -336,17 +336,18 @@ if (NOT MSVC)
     )
   endif()
 
-  if (NOT ANDROID)
+  if(NOT ANDROID AND (NOT WIN32 OR MINGW))
     set(x86_64_SOURCES
       ${x86_64_SOURCES}
       ${x86_80_BIT_SOURCES}
-      x86_64/floatdixf.c
-    )
-    if (NOT WIN32)
+      x86_64/floatdixf.c)
+
+    # TODO(compnerd) floatundixf.S currently implements the SysV calling
+    # convention, this must be ported to the Windows ABI.
+    if(NOT WIN32)
       set(x86_64_SOURCES
         ${x86_64_SOURCES}
-        x86_64/floatundixf.S
-      )
+        x86_64/floatundixf.S)
     endif()
   endif()
 
@@ -380,7 +381,6 @@ if (NOT MSVC)
   if (NOT ANDROID)
     set(i386_SOURCES
       ${i386_SOURCES}
-      ${x86_80_BIT_SOURCES}
       i386/floatdixf.S
       i386/floatundixf.S
     )
@@ -393,6 +393,12 @@ if (NOT MSVC)
       i386/chkstk2.S
     )
   endif()
+
+  if(NOT ANDROID AND NOT (WIN32 AND NOT MINGW))
+    set(i386_SOURCES
+      ${i386_SOURCES}
+      ${x86_80_BIT_SOURCES})
+  endif()
 else () # MSVC
   # Use C versions of functions when building on MSVC
   # MSVC's assembler takes Intel syntax, not AT&T syntax.


        


More information about the llvm-commits mailing list