Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 9 May 2020 20:02:48 +0000 (UTC)
From:      John Baldwin <jhb@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r360853 - in stable/12/share: man/man7 mk
Message-ID:  <202005092002.049K2mGL005286@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhb
Date: Sat May  9 20:02:48 2020
New Revision: 360853
URL: https://svnweb.freebsd.org/changeset/base/360853

Log:
  MFC 354289,354441,355095: Use lld on armv6.
  
  354289:
  armv6: Switch to LLD by default
  
  This could just be ${__TT} == "arm", except armv5 isn't slated for death until
  EOY.
  
  arm tinderbox builds.  Let's see what else shakes out.
  
  354441:
  arch.7: armv6 uses lld by default as of r354289
  
  355095:
  remove armv6 LLVM workaround introduced in r341812
  
  r341812 enabled only arm target support in LLVM on arm and armv6,
  because ld.bfd 2.17.50 lacked support for range extensions required for
  linking such large binaries/libraries.  r341812 indicated that the
  workaround should be removed once the userland can be linked by lld.
  
  r354289 switched armv6 to use lld by default, so remove the workaround
  on armv6.  The workaround remains in place for arm (v5), and will
  presumably be removed when arm is retired.

Modified:
  stable/12/share/man/man7/arch.7
  stable/12/share/mk/src.opts.mk
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/share/man/man7/arch.7
==============================================================================
--- stable/12/share/man/man7/arch.7	Sat May  9 19:26:44 2020	(r360852)
+++ stable/12/share/man/man7/arch.7	Sat May  9 20:02:48 2020	(r360853)
@@ -310,7 +310,7 @@ This table shows the default tool chain for each archi
 .It aarch64     Ta Clang     Ta lld
 .It amd64       Ta Clang     Ta lld
 .It arm         Ta Clang     Ta GNU ld 2.17.50
-.It armv6       Ta Clang     Ta GNU ld 2.17.50
+.It armv6       Ta Clang     Ta lld
 .It armv7       Ta Clang     Ta lld
 .It i386        Ta Clang     Ta lld
 .It mips        Ta GCC 4.2.1 Ta GNU ld 2.17.50

Modified: stable/12/share/mk/src.opts.mk
==============================================================================
--- stable/12/share/mk/src.opts.mk	Sat May  9 19:26:44 2020	(r360852)
+++ stable/12/share/mk/src.opts.mk	Sat May  9 20:02:48 2020	(r360853)
@@ -277,7 +277,7 @@ __LLVM_TARGET_FILT=	C/(amd64|i386)/x86/:S/sparc64/spar
 __DEFAULT_YES_OPTIONS+=	LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu}
 # Disable other targets for arm and armv6, to work around "relocation truncated
 # to fit" errors with BFD ld, since libllvm.a will get too large to link.
-.elif ${__T} == "arm" || ${__T} == "armv6"
+.elif ${__T} == "arm"
 __DEFAULT_NO_OPTIONS+=LLVM_TARGET_${__llt:tu}
 # aarch64 needs arm for -m32 support.
 .elif ${__TT} == "arm64" && ${__llt} == "arm"
@@ -325,8 +325,8 @@ __DEFAULT_YES_OPTIONS+=LLVM_LIBUNWIND
 .else
 __DEFAULT_NO_OPTIONS+=LLVM_LIBUNWIND
 .endif
-.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "armv7" || \
-    ${__T} == "i386" || ${__TT} == "riscv"
+.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "armv6" || \
+    ${__T} == "armv7" || ${__T} == "i386" || ${__TT} == "riscv"
 __DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD
 .else
 __DEFAULT_NO_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202005092002.049K2mGL005286>