From 3379242a90dd506c66e943eb2df9bf91ee4651ee Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Mon, 20 Jun 2016 23:54:44 +0000 Subject: [PATCH] Add a ENABLE_X86_RELAX_RELOCATIONS cmake option. This corresponds to binutils' --enable-x86-relax-relocations. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@273224 91177308-0d34-0410-b5e6-96231b3b80d8 --- CMakeLists.txt | 3 +++ include/clang/Config/config.h.cmake | 3 +++ lib/Driver/Tools.cpp | 2 +- 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 851664427a..114d23095e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -185,6 +185,9 @@ set(DEFAULT_SYSROOT "" CACHE PATH set(ENABLE_LINKER_BUILD_ID OFF CACHE BOOL "pass --build-id to ld") +set(ENABLE_X86_RELAX_RELOCATIONS OFF CACHE BOOL + "enable x86 relax relocations by default") + set(CLANG_DEFAULT_CXX_STDLIB "" CACHE STRING "Default C++ stdlib to use (empty for architecture default, \"libstdc++\" or \"libc++\"") if (NOT(CLANG_DEFAULT_CXX_STDLIB STREQUAL "" OR diff --git a/include/clang/Config/config.h.cmake b/include/clang/Config/config.h.cmake index 09f5e4b3b3..e5a1d0dac8 100644 --- a/include/clang/Config/config.h.cmake +++ b/include/clang/Config/config.h.cmake @@ -41,4 +41,7 @@ /* pass --build-id to ld */ #cmakedefine ENABLE_LINKER_BUILD_ID +/* enable x86 relax relocations by default */ +#cmakedefine01 ENABLE_X86_RELAX_RELOCATIONS + #endif diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index a23f660a11..c0d6c52db8 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -2839,7 +2839,7 @@ static void CollectArgsForIntegratedAssembler(Compilation &C, // options. bool CompressDebugSections = false; - bool UseRelaxRelocations = false; + bool UseRelaxRelocations = ENABLE_X86_RELAX_RELOCATIONS; const char *MipsTargetFeature = nullptr; for (const Arg *A : Args.filtered(options::OPT_Wa_COMMA, options::OPT_Xassembler)) { -- 2.40.0