This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
Re: Implement fma in soft-fp
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Richard Henderson <rth at twiddle dot net>
- Cc: <libc-alpha at sourceware dot org>, <libc-ports at sourceware dot org>, Marcus Shawcroft <marcus dot shawcroft at linaro dot org>, Richard Henderson <rth at redhat dot com>, David Holsgrove <david dot holsgrove at xilinx dot com>, Chris Metcalf <cmetcalf at tilera dot com>, "David S. Miller" <davem at davemloft dot net>
- Date: Tue, 25 Jun 2013 16:13:35 +0000
- Subject: Re: Implement fma in soft-fp
- References: <Pine dot LNX dot 4 dot 64 dot 1306221707230 dot 15367 at digraph dot polyomino dot org dot uk> <51C9B79D dot 8070303 at twiddle dot net>
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