From owner-freebsd-numerics@FreeBSD.ORG Thu Sep 5 09:58:03 2013 Return-Path: Delivered-To: freebsd-numerics@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 527AC881; Thu, 5 Sep 2013 09:58:03 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: from mail-wi0-x22d.google.com (mail-wi0-x22d.google.com [IPv6:2a00:1450:400c:c05::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9879B2034; Thu, 5 Sep 2013 09:58:02 +0000 (UTC) Received: by mail-wi0-f173.google.com with SMTP id hq15so2885909wib.6 for ; Thu, 05 Sep 2013 02:58:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=uPAk282Bb2KrkapZWatInL/+o6CqfwmZWWxhRKoRmCo=; b=MPAHJjxLITw06ojHv1TiACXsNwC6cKd4MsqjFfmZCJZIRVlUl1I6kJbak6oY/Vvkes XMDvULr5xJ3EUdpO2rkNUWu7V05OD8fvmS09yXStI156Ju2yxJMxU/aRtNhNyMcPabqR jL08OoP2M4Qc9vjUGQRHFCqRFXWrHF3EIHCyl5IPNcz/mEkXK5LYETxj8lnKF1PFRWPJ bsY3CUEi/tV5Nf4M1dTcolPibkSEc80A71wT8HtFadbPDsk/vKybVRb2sOvbJJzx4Mam xJ6jh2qtxd0vyVxV0P/42mWwg7tvNo7JM0NlSOW0mpjyhLFlznY+hW6qUrEPNO7329yx esHw== X-Received: by 10.194.249.97 with SMTP id yt1mr601673wjc.49.1378375081147; Thu, 05 Sep 2013 02:58:01 -0700 (PDT) Received: from ithaqua.etoilebsd.net (ithaqua.etoilebsd.net. [37.59.37.188]) by mx.google.com with ESMTPSA id d11sm2627305wic.4.1969.12.31.16.00.00 (version=TLSv1 cipher=RC4-SHA bits=128/128); Thu, 05 Sep 2013 02:58:00 -0700 (PDT) Sender: Baptiste Daroussin Date: Thu, 5 Sep 2013 11:57:58 +0200 From: Baptiste Daroussin To: David Chisnall Subject: Re: clang+libc++ using missing powl Message-ID: <20130905095758.GM82066@ithaqua.etoilebsd.net> References: <20130904223842.GB82066@ithaqua.etoilebsd.net> <80062343-53CD-4CEF-9C47-3BF614DADB64@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="wKTlTxfx0Fr6BT7S" Content-Disposition: inline In-Reply-To: <80062343-53CD-4CEF-9C47-3BF614DADB64@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: "freebsd-numerics@FreeBSD.org" , "current@freebsd.org Current" X-BeenThere: freebsd-numerics@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Discussions of high quality implementation of libm functions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 05 Sep 2013 09:58:03 -0000 --wKTlTxfx0Fr6BT7S Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Sep 05, 2013 at 09:52:13AM +0100, David Chisnall wrote: > On 4 Sep 2013, at 23:38, Baptiste Daroussin wrote: >=20 > > As a result we have a lot of fallouts of ports complaining about: > > undefined reference to `powl' > >=20 > > It seems like libc++ is relying on a function we don't have yet in libm= , am I > > missing something? >=20 > I've attached a diff that I'd like to commit to msun that should allow th= ese things to link. This: >=20 > - Provides thin wrappers around the 8 missing libm functions that libc++ = exposes that just call the double versions >=20 > - Makes these weak references, so other libraries can replace them with m= ore precise versions if required >=20 > - On platforms where long double is greater precision than double (e.g. x= 86), it emits a linker warning when they are referenced >=20 > These can then be replaced by proper versions as they become available (a= t which point the linker warnings will go away). >=20 > David >=20 Thanks I'll test it on my next full run, probably tomorrow. regards, Bapt --wKTlTxfx0Fr6BT7S Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlIoVaYACgkQ8kTtMUmk6EzFngCgpwEpBxuR4Qo39E1pKx+SSaNm MFYAnjNp9LullZD6OhO5LzrVAUgGVrYD =kc4V -----END PGP SIGNATURE----- --wKTlTxfx0Fr6BT7S--