Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 09 Nov 2012 18:01:51 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        Roman Divacky <rdivacky@freebsd.org>
Cc:        Konstantin Belousov <kostikbel@gmail.com>, freebsd-current@freebsd.org, Steve Kargl <sgk@troutmask.apl.washington.edu>
Subject:   Re: clang and static linking?
Message-ID:  <509D36FF.3000409@FreeBSD.org>
In-Reply-To: <20121109164541.GA34499@freebsd.org>
References:  <20121108231349.GA79485@troutmask.apl.washington.edu> <20121108234932.GA56820@troutmask.apl.washington.edu> <20121109120012.GB73505@kib.kiev.ua> <20121109164304.GA61011@troutmask.apl.washington.edu> <20121109164541.GA34499@freebsd.org>

index | next in thread | previous in thread | raw e-mail

On 2012-11-09 17:45, Roman Divacky wrote:
> On Fri, Nov 09, 2012 at 08:43:04AM -0800, Steve Kargl wrote:
...
...
>> I'll try this shortly.  Does this mean that we need to build
>> all *.a libraries where a weak reference may occur with this
>> switch?
>
> No, this has nothing to do with llvm integrated asm.
>
> So far it looks like gcc always inline "isnan" even at O0 while
> clang does not. We are trying to figure out the solution.

No, it is not related to the optimization level.  It looks like isnan()
is a builtin for gcc, but not for clang.  The isnan() macro expands to a
isnan() call for a few of libm's objects:

	s_fdim.o
	s_csqrt.o
	e_scalb.o


> Maybe use __builtin_isnan instead of isnan in the isnan macro expansion?

Either that, or if people prefer to use libc's isnan() implementation,
make sure gcc also calls it instead.


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?509D36FF.3000409>