[clang] [llvm] Revert "[Fuchsia][cmake] Allow using FatLTO when building runtimes" (PR #119252)
Paul Kirth via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 9 11:24:52 PST 2024
https://github.com/ilovepi created https://github.com/llvm/llvm-project/pull/119252
Reverts llvm/llvm-project#112277
This broke something on Fuchsia's Mac builders,
so there's still something in the CMake that needs to be updated before we reland.
Failed build:
https://ci.chromium.org/ui/p/fuchsia/builders/toolchain.ci/clang-mac-xarm64/b8729005878443108801/overview
>From b6196267463a356df89e922bb72c93a35b73d29c Mon Sep 17 00:00:00 2001
From: Paul Kirth <paulkirth at google.com>
Date: Mon, 9 Dec 2024 11:23:29 -0800
Subject: [PATCH] Revert "[Fuchsia][cmake] Allow using FatLTO when building
runtimes (#112277)"
This reverts commit 57545dbbdbafc51d63873800a45cfd48a283d981.
---
clang/cmake/caches/Fuchsia-stage2.cmake | 16 ----------------
llvm/cmake/modules/HandleLLVMOptions.cmake | 2 +-
2 files changed, 1 insertion(+), 17 deletions(-)
diff --git a/clang/cmake/caches/Fuchsia-stage2.cmake b/clang/cmake/caches/Fuchsia-stage2.cmake
index 9eb295548500ee..784a883a3bf916 100644
--- a/clang/cmake/caches/Fuchsia-stage2.cmake
+++ b/clang/cmake/caches/Fuchsia-stage2.cmake
@@ -190,10 +190,6 @@ foreach(target aarch64-unknown-linux-gnu;armv7-unknown-linux-gnueabihf;i386-unkn
set(RUNTIMES_${target}_LLVM_TOOLS_DIR "${CMAKE_BINARY_DIR}/bin" CACHE BOOL "")
set(RUNTIMES_${target}_LLVM_ENABLE_RUNTIMES "compiler-rt;libcxx;libcxxabi;libunwind" CACHE STRING "")
- # Enable FatLTO for Linux and baremetal runtimes
- set(RUNTIMES_${target}_LLVM_ENABLE_LTO ON CACHE BOOL "")
- set(RUNTIMES_${target}_LLVM_ENABLE_FATLTO ON CACHE BOOL "")
-
# Use .build-id link.
list(APPEND RUNTIME_BUILD_ID_LINK "${target}")
endif()
@@ -276,10 +272,6 @@ if(FUCHSIA_SDK)
set(RUNTIMES_${target}+asan+noexcept_LIBCXXABI_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
set(RUNTIMES_${target}+asan+noexcept_LIBCXX_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
- # Enable FatLTO for Fuchsia runtimes
- set(RUNTIMES_${target}_LLVM_ENABLE_LTO ON CACHE BOOL "")
- set(RUNTIMES_${target}_LLVM_ENABLE_FATLTO ON CACHE BOOL "")
-
# Use .build-id link.
list(APPEND RUNTIME_BUILD_ID_LINK "${target}")
endforeach()
@@ -371,10 +363,6 @@ foreach(target armv6m-none-eabi;armv7m-none-eabi;armv8m.main-none-eabi;armv8.1m.
set(RUNTIMES_${target}_LLVM_INCLUDE_TESTS OFF CACHE BOOL "")
set(RUNTIMES_${target}_LLVM_ENABLE_ASSERTIONS OFF CACHE BOOL "")
set(RUNTIMES_${target}_LLVM_ENABLE_RUNTIMES "libc;libcxx" CACHE STRING "")
-
- # Enable FatLTO for baremetal runtimes
- set(RUNTIMES_${target}_LLVM_ENABLE_LTO ON CACHE BOOL "")
- set(RUNTIMES_${target}_LLVM_ENABLE_FATLTO ON CACHE BOOL "")
endforeach()
foreach(target riscv32-unknown-elf)
@@ -426,10 +414,6 @@ foreach(target riscv32-unknown-elf)
set(RUNTIMES_${target}_LLVM_INCLUDE_TESTS OFF CACHE BOOL "")
set(RUNTIMES_${target}_LLVM_ENABLE_ASSERTIONS OFF CACHE BOOL "")
set(RUNTIMES_${target}_LLVM_ENABLE_RUNTIMES "libc;libcxx" CACHE STRING "")
-
- # Enable FatLTO for baremetal runtimes
- set(RUNTIMES_${target}_LLVM_ENABLE_LTO ON CACHE BOOL "")
- set(RUNTIMES_${target}_LLVM_ENABLE_FATLTO ON CACHE BOOL "")
endforeach()
set(LLVM_BUILTIN_TARGETS "${BUILTIN_TARGETS}" CACHE STRING "")
diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake
index 55a87f5fdbb138..f19125eb6bf273 100644
--- a/llvm/cmake/modules/HandleLLVMOptions.cmake
+++ b/llvm/cmake/modules/HandleLLVMOptions.cmake
@@ -1285,7 +1285,7 @@ elseif(LLVM_ENABLE_LTO)
endif()
endif()
-if(LLVM_ENABLE_FATLTO AND ((UNIX AND NOT APPLE) OR FUCHSIA))
+if(LLVM_ENABLE_FATLTO AND UNIX AND NOT APPLE)
append("-ffat-lto-objects" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
if(NOT LINKER_IS_LLD_LINK)
append("-ffat-lto-objects" CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS CMAKE_MODULE_LINKER_FLAGS)
More information about the llvm-commits
mailing list