From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8693 invoked by alias); 25 Jun 2013 16:13:45 -0000 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 Received: (qmail 8668 invoked by uid 89); 25 Jun 2013 16:13:43 -0000 X-Spam-SWARE-Status: No, score=-4.7 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,KHOP_THREADED,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL autolearn=ham version=3.3.1 X-Spam-User: qpsmtpd, 2 recipients Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Tue, 25 Jun 2013 16:13:42 +0000 Received: from svr-orw-fem-01.mgc.mentorg.com ([147.34.98.93]) by relay1.mentorg.com with esmtp id 1UrVsB-0003vE-Bv from joseph_myers@mentor.com ; Tue, 25 Jun 2013 09:13:39 -0700 Received: from SVR-IES-FEM-01.mgc.mentorg.com ([137.202.0.104]) by svr-orw-fem-01.mgc.mentorg.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Tue, 25 Jun 2013 09:13:39 -0700 Received: from digraph.polyomino.org.uk (137.202.0.76) by SVR-IES-FEM-01.mgc.mentorg.com (137.202.0.104) with Microsoft SMTP Server id 14.2.247.3; Tue, 25 Jun 2013 17:13:36 +0100 Received: from jsm28 (helo=localhost) by digraph.polyomino.org.uk with local-esmtp (Exim 4.76) (envelope-from ) id 1UrVs7-0003f6-IQ; Tue, 25 Jun 2013 16:13:35 +0000 Date: Tue, 25 Jun 2013 16:13:00 -0000 From: "Joseph S. Myers" To: Richard Henderson CC: , , Marcus Shawcroft , Richard Henderson , David Holsgrove , Chris Metcalf , "David S. Miller" Subject: Re: Implement fma in soft-fp In-Reply-To: <51C9B79D.8070303@twiddle.net> Message-ID: References: <51C9B79D.8070303@twiddle.net> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-SW-Source: 2013-06/txt/msg00052.txt.bz2 On Tue, 25 Jun 2013, Richard Henderson wrote: > Of course, that would require glibc to build parts with the c++ compiler, > so that may be a non-starter... And libgcc, and the Linux kernel - I don't think requiring a C++ compiler all over the place would be a good idea (and it would complicate bootstrapping - you can't build libstdc++ without system headers, but need to have built libgcc before building glibc, so a bootstrap compiler would need the C++ compiler and a subset of the runtime libraries). It's possible something could be done simply with inline always_inline functions in C. The code doesn't just predate SRA, it predates inlining on trees. I think I once discussed that issue, for this code, of why inlines were less efficient than macros with GCC as it stood at that time, with Peter Maydell around 1997/8. (But maybe things like getting access to exception / rounding mode state, which is in a local variable in the toplevel function, would complicate any such macro-avoidance scheme, including the C++ ones.) -- Joseph S. Myers joseph@codesourcery.com