From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15940 invoked by alias); 5 Apr 2012 00:07:42 -0000 Received: (qmail 15915 invoked by uid 22791); 5 Apr 2012 00:07:41 -0000 X-SWARE-Spam-Status: No, hits=-4.2 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL X-Spam-Check-By: sourceware.org Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 05 Apr 2012 00:07:28 +0000 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=EU1-MAIL.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1SFaEX-00066C-Tb from joseph_myers@mentor.com ; Wed, 04 Apr 2012 17:07:26 -0700 Received: from digraph.polyomino.org.uk ([172.16.63.104]) by EU1-MAIL.mgc.mentorg.com with Microsoft SMTPSVC(6.0.3790.1830); Thu, 5 Apr 2012 01:07:24 +0100 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.74) (envelope-from ) id 1SFaEV-0004QF-Jq; Thu, 05 Apr 2012 00:07:23 +0000 Date: Thu, 05 Apr 2012 00:07:00 -0000 From: "Joseph S. Myers" To: Michael Hope cc: dann frazier , Richard Earnshaw , "cross-distro@lists.linaro.org" , "gcc-patches@gcc.gnu.org" , libc-ports@sourceware.org Subject: Re: [PATCH] ARM: Use different linker path for hardfloat ABI In-Reply-To: Message-ID: References: <20120329193401.GA14860@dannf.org> <4F75F2E2.3030909@arm.com> <20120402210653.GC28152@dannf.org> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1152306461-1259245864-1333584443=:26727" Mailing-List: contact libc-ports-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: libc-ports-owner@sourceware.org X-SW-Source: 2012-04/txt/msg00006.txt.bz2 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. ---1152306461-1259245864-1333584443=:26727 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: QUOTED-PRINTABLE Content-length: 1930 On Thu, 5 Apr 2012, Michael Hope wrote: > > I don't think that's appropriate for ABI issues. =A0If a different dyna= mic > > linker name is specified, GCC should use it unconditionally (and require > > new enough glibc or a glibc installation that was appropriately > > rearranged). >=20 > OK. I want GCC 4.7.1 to use the new path. Does this mean that > released versions of GLIBC and GCC 4.7.1 will be incompatible, or does > GLIBC pick the path up from GCC? Released versions would be incompatible (you could make GCC check at=20 configure time for too-old glibc if --with-float=3Dhard); the path needs=20 hardcoding in both places. > >> Do the MIPS or PowerPC loaders detect the ABI and change the library > >> path based on that? =A0I couldn't tell from the code. > > > > No, they don't detect the ABI. =A0Both ABIs (and, for Power, the e500v1= and > > e500v2 variants - compatible with soft-float at the function-calling le= vel > > but with some glibc ABI differences with soft-float and with each other) > > use the same directories. >=20 > Sorry, I'm confused. I had a poke about with MIPS and it uses > different argument registers for soft and hard float. Soft float uses > $4 and hard float $f0. Are there shims or similar installed by the > loader? No. A system is either purely hard-float or purely soft-float, and the=20 same paths are used for both so they can't coexist. (Mismatches at=20 *static* link time are detected through object attributes.) > Big endian is extremely uncommon on ARM and I'd rather define it when > needed. For strictness sake I'll change the patch to use the new path > for hard float little endian only. I don't think that's correct; the new path should be used independent of=20 endian, just as the existing path is. But any multiarch support patch=20 should presumably define separate multiarch paths for each endianness. --=20 Joseph S. Myers joseph@codesourcery.com= ---1152306461-1259245864-1333584443=:26727--