From owner-svn-src-all@freebsd.org Wed Jul 24 19:21:16 2019 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id E7E15B5D7A; Wed, 24 Jul 2019 19:21:16 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CB12F6EEB0; Wed, 24 Jul 2019 19:21:16 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A69021B0C1; Wed, 24 Jul 2019 19:21:16 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x6OJLGkx007400; Wed, 24 Jul 2019 19:21:16 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x6OJLGjB007399; Wed, 24 Jul 2019 19:21:16 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201907241921.x6OJLGjB007399@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 24 Jul 2019 19:21:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r350297 - stable/12/share/mk X-SVN-Group: stable-12 X-SVN-Commit-Author: emaste X-SVN-Commit-Paths: stable/12/share/mk X-SVN-Commit-Revision: 350297 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: CB12F6EEB0 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.93 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.93)[-0.932,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Jul 2019 19:21:17 -0000 Author: emaste Date: Wed Jul 24 19:21:16 2019 New Revision: 350297 URL: https://svnweb.freebsd.org/changeset/base/350297 Log: MFC r343606: Enable lld as the system linker on i386 The migration to LLVM's lld linker has been in progress for quite some time - I opened an LLVM tracking bug (23214) in April 2015 to track issues using lld as FreeBSD's linker, and requested the first exp-run using lld as /usr/bin/ld in November 2016. In 12.0 LLD is the system linker on amd64, arm64, and armv7. i386 was not switched [for 12.0] as there were additional ports failures not found on amd64. Those have largely been addressed now, although there are a small number of issues that are still being worked on. In some of these cases having lld as the system linker makes it easier for developers and third parties to investigate failures. Thanks to antoine@ for handling the exp-runs and to everyone in the FreeBSD and LLVM communites who have fixed issues with lld to get us to this point. Note for 12.1: There are still some issues to resolve in the ports tree, but having the bootstrap linker (to build the kernel and installed userland) be lld and the installed system linker (/usr/bin/ld) be GNU ld causes other problems. In addition having having a different linker configuration for i386 and amd64 in the same release causes some grief for the ports team. So, switch to lld as the system linker on i386 in stable/12 and plan to address remaining ports issues before 12.1. PR: 214864 [exp-run] Discussed with: jbeich, antoine Relnotes: Yes Sponsored by: The FreeBSD Foundation Modified: stable/12/share/mk/src.opts.mk Directory Properties: stable/12/ (props changed) Modified: stable/12/share/mk/src.opts.mk ============================================================================== --- stable/12/share/mk/src.opts.mk Wed Jul 24 19:16:02 2019 (r350296) +++ stable/12/share/mk/src.opts.mk Wed Jul 24 19:21:16 2019 (r350297) @@ -322,11 +322,9 @@ __DEFAULT_YES_OPTIONS+=LLVM_LIBUNWIND .else __DEFAULT_NO_OPTIONS+=LLVM_LIBUNWIND .endif -.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "armv7" +.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "armv7" || \ + ${__T} == "i386" __DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD -.elif ${__T} == "i386" -__DEFAULT_YES_OPTIONS+=LLD_BOOTSTRAP -__DEFAULT_NO_OPTIONS+=LLD_IS_LD .else __DEFAULT_NO_OPTIONS+=LLD_BOOTSTRAP LLD_IS_LD .endif