Date: Sat, 25 Jul 2020 13:59:26 -0700 From: Mark Millard <marklmi@yahoo.com> To: =?utf-8?Q?Stefan_E=C3=9Fer?= <se@freebsd.org> Cc: svn-src-head@freebsd.org, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, freebsd-ppc <freebsd-ppc@freebsd.org> Subject: Re: Introduce WITH(OUT)_LTO? (was: Re: svn commit: r362987 - in head: contrib/bc usr.bin/gh-bc) (LLVMgold.so and gnu's ld.gold) Message-ID: <8B43A4F4-E44D-40C0-8984-FD0FD43198FE@yahoo.com> In-Reply-To: <d96b12df-cbff-387d-7bf4-bc5b279b10f4@freebsd.org> References: <64523602-7EFC-4A97-90EA-C776BF2A0AF7.ref@yahoo.com> <64523602-7EFC-4A97-90EA-C776BF2A0AF7@yahoo.com> <d96b12df-cbff-387d-7bf4-bc5b279b10f4@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-Jul-8, at 01:28, Stefan E=C3=9Fer <se at freebsd.org> wrote: > Am 08.07.20 um 09:01 schrieb Mark Millard: >> The following is more informational than anything as far >> as I'm concerned. But there may be implications that I'm >> unaware of. (I sometimes experiment with toolchain use >> to see what the current status is for such use.) >>=20 >> I attempted to build a system for 32-bit powerpc using clang >> and binutils, building head -r363000 ( from -r363000 ). (This >> was a cross build, amd64 -> powerpc.) It got a new type of >> failure, compared to my past experience: >=20 > Hi Mark, >=20 > thank you for the report. I have tested with "make universe" (with > default settings) that this version builds on all architectures, > but Ed Maste has already disabled -flto for powerpc64, due to run > time issues (floating point exception, IIRC). >=20 > I know that you are actively working on PowerPC and I'd appreciate, > if you could provide me with information on which parameters cause > breakage and which work for you. The combination of CLANG with LTO > and GNU binutils cannot work - CLANG and GCC use incompatible file > formats to represent the intermediate object files. Hmm. It looks a little more complicated than that . . . Looks like the devel/llvm80 devel/llvm90 and devel/llvm10 options for powerpc64 include one for: GOLD=3Don: Build the LLVM Gold plugin for LTO That produces a plugin (LLVMgold.so) for use with gnu's ld.gold ( from devel/binutils ). The system-clang/llvm materials do not seem to include LLVMgold.so and so prevent use of that toolchain for LTO via devel/binutils . (A FreeBSD choice rather than a llvm* vs. binutils technically-blocking issue?) devel/binutils builds and installs /usr/local/bin/ld.gold for both 32-bit powerpc contexts and for powerpc64 contexts. However, for the 32-bit powerpc context, the devel/llvm* do not include an option to enable building LLVMgold.so . I do not know if this is just a ports choice vs. if this has a technically-blocking issue involved. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8B43A4F4-E44D-40C0-8984-FD0FD43198FE>