Re: atomic in i386 Current after CLANG 6 upgrade

From: Tijl Coosemans <tijl_at_FreeBSD.org>
Date: Mon, 15 Jan 2018 18:51:43 +0100
On Mon, 15 Jan 2018 17:08:58 +0000 David Chisnall <theraven_at_FreeBSD.org> wrote:
> On 15 Jan 2018, at 17:00, Jan Beich <jbeich_at_FreeBSD.org> wrote:
>> It wouldn't help (see below). Clang 6 accidentally made __atomic* work
>> enough to satisfy configure check but not for the port to build. I guess,
>> it also confuses configure in net/librdkafka and net-mgmt/netdata.
> 
> Can we (by which I probably mean emaste_at_) push out an EN that adds the
> atomic.c from compiler-rt to our libgcc_s?  That should provide all of
> these helper functions.  Clang assumes that they exist because both
> compiler-rt and vaguely recent libgcc_s provide them.  Recent GCC will
> also assume that they exist and so the correct fix is probably for us
> to make them to exist.
> 
> If this is difficult, then we can perhaps provide a port that compiles
> atomic.c into libatomic_fudge.so or similar and provides a libgcc_s.so
> that’s a linker script that forces linking to libatomic_fudge.so and
> libgcc_s.so.

I can understand emitting function calls on i486 but according to Jan,
clang is emitting function calls on i586 as well.  It used to inline
this which is why we never needed these functions in libgcc.  Is it
normal that clang emits function calls now?
Received on Mon Jan 15 2018 - 16:53:00 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:14 UTC