From: Fangrui Song Date: Mon, 3 Aug 2020 06:05:50 +0000 (-0700) Subject: [CMake] Default ENABLE_X86_RELAX_RELOCATIONS to ON X-Git-Tag: llvmorg-13-init~16031 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c41a18cf61790fc898dcda1055c3efbf442c14c0;p=platform%2Fupstream%2Fllvm.git [CMake] Default ENABLE_X86_RELAX_RELOCATIONS to ON This makes clang default to -Wa,-mrelax-relocations=yes, which enables R_386_GOT32X (GNU as enables it regardless of -mrelax-relocations=) and R_X86_64_[REX_]GOTPCRELX in MC. The produced object files require GNU ld>=2.26 to link. binutils 2.26 is considered a very old release today. --- diff --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt index c487e50..7baf93c 100644 --- a/clang/CMakeLists.txt +++ b/clang/CMakeLists.txt @@ -259,7 +259,7 @@ set(DEFAULT_SYSROOT "" CACHE STRING set(ENABLE_LINKER_BUILD_ID OFF CACHE BOOL "pass --build-id to ld") -set(ENABLE_X86_RELAX_RELOCATIONS OFF CACHE BOOL +set(ENABLE_X86_RELAX_RELOCATIONS ON CACHE BOOL "enable x86 relax relocations by default") set(ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER FALSE CACHE BOOL diff --git a/llvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn b/llvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn index 7fbfb46..49fc477 100644 --- a/llvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn +++ b/llvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn @@ -33,7 +33,7 @@ write_cmake_config("Config") { "GCC_INSTALL_PREFIX=", "BACKEND_PACKAGE_STRING=LLVM ${llvm_version}git", "ENABLE_LINKER_BUILD_ID=", - "ENABLE_X86_RELAX_RELOCATIONS=", + "ENABLE_X86_RELAX_RELOCATIONS=1", "ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=", "CLANG_ENABLE_OBJC_REWRITER=1", # FIXME: flag? "CLANG_SYSTEMZ_DEFAULT_ARCH=z10",