Re: June 2017 update on using LLVM's lld linker in the FreeBSD base system

2017-07-04 Thread Ed Maste
On 12 June 2017 at 17:21, Ed Maste wrote: > Another update on using LLD as the FreeBSD base system linker: Since "amd64" and "arm64" look similar, let me clarify one point: arm64 -- 64-bit ARM -- is built with, and has as /usr/bin/ld, LLD 4.0.0. This is true in HEAD and in stable/11 (and hence t

June 2017 update on using LLVM's lld linker in the FreeBSD base system

2017-06-12 Thread Ed Maste
Another update on using LLD as the FreeBSD base system linker: > We now have LLD 4.0.0 in the tree and it can build all of > FreeBSD/amd64 kernel and world, and most of ports. LLD 4.0.0 is in HEAD and stable/11, and WITH_LLD_IS_LD and WITH_LLD_BOOTSTRAP are enabled by default for arm64 on both br

Re: April 2017 update on using LLVM's lld linker in the FreeBSD base system

2017-04-05 Thread Ed Maste
On 5 April 2017 at 16:09, Dimitry Andric wrote: > > Note that as of r316432, all of the above is also available in the > stable/11 branch. However some of the changes to FreeBSD haven't yet been merged to stable/11, and it's probably not possible to build world + kernel with LLD (via WITH_LLD_IS_

Re: April 2017 update on using LLVM's lld linker in the FreeBSD base system

2017-04-05 Thread Dimitry Andric
On 5 Apr 2017, at 16:59, Ed Maste wrote: > > Here's a fresh update on LLVM's LLD linker in the base system, > referencing the plan originally posted at the beginning of 2016. This > work is primarily taking place on amd64 right now, and unless > otherwise noted these results apply to amd64. > >

April 2017 update on using LLVM's lld linker in the FreeBSD base system

2017-04-05 Thread Ed Maste
Here's a fresh update on LLVM's LLD linker in the base system, referencing the plan originally posted at the beginning of 2016. This work is primarily taking place on amd64 right now, and unless otherwise noted these results apply to amd64. First, the completed items: > 1. Update lld along with t

Update on using LLVM's lld linker in the FreeBSD base system

2016-11-25 Thread Ed Maste
LLD developers have made much progress since my last update in August. Two options used by the FreeBSD build, -dc and -r, are now implemented. The issues with linker script expression support and symbol version maps have been addressed. At this point an LLD built from subversion can link a working

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-09-27 Thread Ed Maste
On 1 August 2016 at 17:40, Ed Maste wrote: > Over the past year or so I have been investigating the state of LLVM's > lld linker for use in the FreeBSD base system, to see if it could be > used as FreeBSD's system linker. A quick update: most of the required changes have now made it into LLD, and

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-09-07 Thread Ed Maste
On 1 August 2016 at 17:40, Ed Maste wrote: > Over the past year or so I have been investigating the state of LLVM's > lld linker for use in the FreeBSD base system, to see if it could be > used as FreeBSD's system linker. > > ... > There are a few features used by the FreeBSD base system that lld

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-08-02 Thread David Chisnall
On 2 Aug 2016, at 05:19, Ed Maste wrote: > >>> 6. Request ports exp-runs and issue a call for testing with 3rd party >>> software. Fix issues found during this process. >> >> Experience suggests this may be the long poll :) > > Indeed, and that's a big part of my motivation for trying to make l

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-08-01 Thread Warner Losh
>> Generally, I like it though. My concerns are mostly with ports and gcc plans. >> Though it isn't coupled to gcc, I'd suggest that we want to have a joint plan >> for both before we get out the axes. Note this is purely a timing argument, >> not whether to get them out, just when :) > > Yes, full

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-08-01 Thread Ed Maste
For some reason Warner's email didn't make it to me, but I spotted it in the list archive. Warner writes: > On Mon, Aug 1, 2016 at 3:40 PM, Ed Maste wrote: >> -N/--omagic, used by some boot loader components. We can achieve the >> same effect with a linker script. > > Agreed. Or objcopy even. I'

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-08-01 Thread Mark Millard
Warner Losh imp at bsdimp.com wrote on Aug 1 22:27:19 UTC 2016 : > On Mon, Aug 1, 2016 at 3:40 PM, Ed Maste wrote: > > > There is (some) support for mips and powerpc in lld, but I'm not sure > > how well tested it is. RISC-V is not yet supported but there is a > > desire to have a full LLVM-base

Re: Update on using LLVM's lld linker in the FreeBSD base system

2016-08-01 Thread Warner Losh
On Mon, Aug 1, 2016 at 3:40 PM, Ed Maste wrote: > -N/--omagic, used by some boot loader components. We can achieve the > same effect with a linker script. Agreed. Or objcopy even. > 2. Add the bmake build infrastructure, installing as /usr/bin/ld.lld > on the same architectures that use Clang (a

Update on using LLVM's lld linker in the FreeBSD base system

2016-08-01 Thread Ed Maste
Over the past year or so I have been investigating the state of LLVM's lld linker for use in the FreeBSD base system, to see if it could be used as FreeBSD's system linker. Why do we need a new linker? Compared to the GNU ld 2.17.50 that we have in the FreeBSD base system, lld will bring: * AArch