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.
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
"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",