Broken arm support in clang now?

Ed Maste emaste at freebsd.org
Mon Aug 20 00:12:33 UTC 2018


On 16 August 2018 at 10:49, Mark Millard <marklmi at yahoo.com> wrote:
>
> Ahh. Okay. 32-bit non-armv7+ cannot be fully llvm based.
> Intersting.

Indeed; there are a couple of patches in review upstream to address
the outstanding issues involved with using lld to link armv5/armv6.

> The implication would be that ld was then directly
> invoked instead of via cc (clang).

Yes, the issue I encountered appears to be a bug in recent logic that
shares a single clang and lld for multiple architectures in "make
tinderbox." It's directly invoking a newly-built lld.

The other issue observed with lld errors from linking arm or armv6
appears to be due to a failure to execute "make buildworld" or "make
kernel-toolchain" before "make buildkernel." In this case the build
invokes the host's system linker (ld). Previously on amd64 this was
the GNU BFD ld, not a cross-linker, and this resulted in an error. Now
that amd64's system ld is lld it's inherently a cross linker.


More information about the freebsd-toolchain mailing list