[llvm-branch-commits] [compiler-rt] 9c68b43 - Revert "[compiler-rt][CMake] Enable TF intrinsics on powerpc32 Linux"

Tom Stellard via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Aug 8 13:23:37 PDT 2022


Author: Nikita Popov
Date: 2022-08-08T13:08:49-07:00
New Revision: 9c68b43915fc1c9c0a07e935163ae8d638d7241b

URL: https://github.com/llvm/llvm-project/commit/9c68b43915fc1c9c0a07e935163ae8d638d7241b
DIFF: https://github.com/llvm/llvm-project/commit/9c68b43915fc1c9c0a07e935163ae8d638d7241b.diff

LOG: Revert "[compiler-rt][CMake] Enable TF intrinsics on powerpc32 Linux"

As mentioned in https://reviews.llvm.org/D121379#3690593, this
change broke the build of compiler-rt targeting powerpc using GCC.
The 32-bit powerpc target is not supposed to emit 128-bit libcalls
-- if it does, then that's a backend bug and needs to be fixed there.

This reverts commit 8f24a56a3a9363f353c8da318d97491a6818781d.

Differential Revision: https://reviews.llvm.org/D130988

(cherry picked from commit 542977d43841820614a32823c33415042430e230)

Added: 
    

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

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/builtins/CMakeLists.txt b/compiler-rt/lib/builtins/CMakeLists.txt
index 0b91b4ce79933..795fe2ab316d8 100644
--- a/compiler-rt/lib/builtins/CMakeLists.txt
+++ b/compiler-rt/lib/builtins/CMakeLists.txt
@@ -621,9 +621,11 @@ set(mips64_SOURCES ${GENERIC_TF_SOURCES}
 set(mips64el_SOURCES ${GENERIC_TF_SOURCES}
                      ${mips_SOURCES})
 
+set(powerpc_SOURCES ${GENERIC_SOURCES})
+
 set(powerpcspe_SOURCES ${GENERIC_SOURCES})
 
-set(powerpc_SOURCES
+set(powerpc64_SOURCES
   ppc/divtc3.c
   ppc/fixtfdi.c
   ppc/fixunstfdi.c
@@ -638,15 +640,14 @@ set(powerpc_SOURCES
 )
 # These routines require __int128, which isn't supported on AIX.
 if (NOT ${CMAKE_SYSTEM_NAME} MATCHES "AIX")
-  set(powerpc_SOURCES
+  set(powerpc64_SOURCES
     ppc/floattitf.c
     ppc/fixtfti.c
     ppc/fixunstfti.c
-    ${powerpc_SOURCES}
+    ${powerpc64_SOURCES}
   )
 endif()
-set(powerpc64le_SOURCES ${powerpc_SOURCES})
-set(powerpc64_SOURCES ${powerpc_SOURCES})
+set(powerpc64le_SOURCES ${powerpc64_SOURCES})
 
 set(riscv_SOURCES
   riscv/save.S
@@ -753,8 +754,9 @@ else ()
         list(APPEND BUILTIN_CFLAGS_${arch} -fomit-frame-pointer -DCOMPILER_RT_ARMHF_TARGET)
       endif()
 
-      # For some arches, force enable int128 for compiling long double routines.
-      if("${arch}" STREQUAL "powerpc" OR "${arch}" STREQUAL "riscv32")
+      # For RISCV32, we must force enable int128 for compiling long
+      # double routines.
+      if("${arch}" STREQUAL "riscv32")
         list(APPEND BUILTIN_CFLAGS_${arch} -fforce-enable-int128)
       endif()
 

diff  --git a/compiler-rt/lib/builtins/int_types.h b/compiler-rt/lib/builtins/int_types.h
index 9ee5a327b28a4..7a72de4806764 100644
--- a/compiler-rt/lib/builtins/int_types.h
+++ b/compiler-rt/lib/builtins/int_types.h
@@ -64,7 +64,7 @@ typedef union {
 } udwords;
 
 #if defined(__LP64__) || defined(__wasm__) || defined(__mips64) ||             \
-    defined(__riscv) || defined(_WIN64) || defined(__powerpc__)
+    defined(__riscv) || defined(_WIN64)
 #define CRT_HAS_128BIT
 #endif
 


        


More information about the llvm-branch-commits mailing list