[PATCH, committed] Fix PowerPC long double bootstrap
Joseph S. Myers
joseph@codesourcery.com
Mon Jan 22 23:20:00 GMT 2007
On Mon, 22 Jan 2007, David Edelsohn wrote:
> I know always including -mlong-double-128 support in libgcc is
> useful and convenient, but is it safe for long-term maintenance. Why is
> it a good idea effectively to hide a multilib inside libgcc?
The approach for all of glibc, libstdc++ and libgcc does not need a
multilib here. The choice of glibc not to use a multilib strongly
indicates one should not be used for the other libraries, given the
problems of getting the right shared library multilib of libgcc or
libstdc++ at runtime if more than one is available with a single glibc.
glibc uses symbol versioning to support both 64-bit and 128-bit long
double in a single libc.
libstdc++ also uses symbol versioning with the same effect, together with
different mangling for the two long double widths. (That part was
considered not safe enough for 4.1 branch so it only in 4.2 and later, so
was widely backported.)
libgcc names functions based on the modes involved not on the C types, so
128-bit long double just adds to the functions available without affecting
any other functions. (Where some DF functions in libgcc can use TF
computation internally, this is explicitly disabled for IBM long double,
so the availability of TFmode has no effect on the code for those DF
functions.)
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Gcc-patches
mailing list