Date: Thu, 27 Jun 2013 22:33:35 +0200 From: Dimitry Andric <dimitry@andric.com> To: Andrew Turner <andrew@fubar.geek.nz> Cc: "freebsd-hackers@freebsd.org Hackers" <freebsd-hackers@freebsd.org>, Kevin Day <toasty@dragondata.com> Subject: Re: Can't use gcc in a clang built world Message-ID: <E182F535-E923-405C-B9F9-CFDBBAA11495@andric.com> In-Reply-To: <20130627194835.4b1a7408@bender.Home> References: <DB5E076C-7DF1-47CD-977C-F36F7B1B1A08@dragondata.com> <51CC1C9F.7080403@andric.com> <20130627194835.4b1a7408@bender.Home>
next in thread | previous in thread | raw e-mail | index | archive | help
On Jun 27, 2013, at 20:48, Andrew Turner <andrew@fubar.geek.nz> wrote: > On Thu, 27 Jun 2013 13:06:07 +0200 > Dimitry Andric <dimitry@andric.com> wrote: > >> On 2013-06-27 02:02, Kevin Day wrote: >>> Are you supposed to be able to use gcc to build userland binaries >>> if you built world with clang? >>> >>> I'm on -CURRENT as of a few days ago (using armv6 but i'm not sure >>> if that matters). >> >> Yes, the arch matters a lot. For arm, adding __clear_cache() to >> libgcc was explicitly disabled by Andrew here: >> >> http://svnweb.freebsd.org/base?view=revision&revision=244382 >> >> "Don't provide clear_cache or the __sync_* functions on ARM with clang >> as they are provided by clang as builtin functions." >> >> Maybe those functions should be in libgcc after all, if other programs >> depend on this. > > The reason to disable __clear_cache is incorrect in r244382 as it is a > builtin in clang, but calls into an external copy of __clear_cache. The > reason __clear_cache was disabled was because of a bug in clang where > it is unable to compile a builtin function, however I only found this > out recently. > > The issue with clang has been fixed, and, as of r251791 __clear_cache > is enabled in compiler-rt. Okay, but apparently compilers such as gcc do not use compiler-rt at all, but expect the function to be available in libgcc instead. So since clang can compile the definition on arm now, shall we re-enable it for libgcc too? -Dimitry
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E182F535-E923-405C-B9F9-CFDBBAA11495>