[clang] 92260d7 - Revert "[CMake][ELF] Add -fno-semantic-interposition and -Bsymbolic-functions"

Oliver Stannard via cfe-commits cfe-commits at lists.llvm.org
Thu May 13 06:31:26 PDT 2021


Author: Oliver Stannard
Date: 2021-05-13T14:31:17+01:00
New Revision: 92260d7a186425510e96b7036b467a6889d08d97

URL: https://github.com/llvm/llvm-project/commit/92260d7a186425510e96b7036b467a6889d08d97
DIFF: https://github.com/llvm/llvm-project/commit/92260d7a186425510e96b7036b467a6889d08d97.diff

LOG: Revert "[CMake][ELF] Add -fno-semantic-interposition and -Bsymbolic-functions"

This reverts commit 3bf1acab5b454ad7fb2074b34663108b53620695.

This is causing the test `gcov-shared-flush.c' to fail on the 2-stage
aarch64 buildbots (https://lab.llvm.org/buildbot/#/builders/7/builds/2720).

Added: 
    

Modified: 
    clang/tools/clang-shlib/CMakeLists.txt
    llvm/cmake/modules/HandleLLVMOptions.cmake
    llvm/tools/llvm-shlib/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/clang/tools/clang-shlib/CMakeLists.txt b/clang/tools/clang-shlib/CMakeLists.txt
index 73e806c49555..5949223fc8e3 100644
--- a/clang/tools/clang-shlib/CMakeLists.txt
+++ b/clang/tools/clang-shlib/CMakeLists.txt
@@ -48,8 +48,3 @@ add_clang_library(clang-cpp
                   ${_OBJECTS}
                   LINK_LIBS
                   ${_DEPS})
-# Optimize function calls and global variable access for default visibility
-# definitions to avoid PLT and reduce dynamic relocations.
-if (NOT APPLE)
-  target_link_options(clang-cpp PRIVATE LINKER:-Bsymbolic-functions)
-endif()

diff  --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake
index 81f46cf116cf..a64644a08e59 100644
--- a/llvm/cmake/modules/HandleLLVMOptions.cmake
+++ b/llvm/cmake/modules/HandleLLVMOptions.cmake
@@ -305,7 +305,6 @@ if( LLVM_ENABLE_PIC )
     # On Windows all code is PIC. MinGW warns if -fPIC is used.
   else()
     add_flag_or_print_warning("-fPIC" FPIC)
-    add_flag_if_supported("-fno-semantic-interposition" FNO_SEMANTIC_INTERPOSITION)
   endif()
   # GCC for MIPS can miscompile LLVM due to PR37701.
   if(CMAKE_COMPILER_IS_GNUCXX AND LLVM_NATIVE_ARCH STREQUAL "Mips" AND

diff  --git a/llvm/tools/llvm-shlib/CMakeLists.txt b/llvm/tools/llvm-shlib/CMakeLists.txt
index 7259ba263658..b0ee19049e6f 100644
--- a/llvm/tools/llvm-shlib/CMakeLists.txt
+++ b/llvm/tools/llvm-shlib/CMakeLists.txt
@@ -50,9 +50,6 @@ if(LLVM_BUILD_LLVM_DYLIB)
       # Solaris ld does not accept global: *; so there is no way to version *all* global symbols
       set(LIB_NAMES -Wl,--version-script,${LLVM_LIBRARY_DIR}/tools/llvm-shlib/simple_version_script.map ${LIB_NAMES})
     endif()
-    # Optimize function calls and global variable access for default visibility
-    # definitions to avoid PLT and reduce dynamic relocations.
-    target_link_options(LLVM PRIVATE LINKER:-Bsymbolic-functions)
   elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
     set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
   endif()


        


More information about the cfe-commits mailing list