Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gcc: add patch to properly handle 64-bit long double for ppc*-musl #11466

Merged
merged 4 commits into from
May 4, 2019

Conversation

q66
Copy link
Contributor

@q66 q66 commented May 3, 2019

Musl requires gcc to be built with 64-bit long doubles as it does not support the quad precision long double format, which is implemented in software using two doubles.

This was already being patched, but it turns out libgcc is forcibly being built with 128-bit long doubles because of several glibc specific APIs it exposes. This wasn't causing any practical runtime issue, but it was causing problems when using e.g. the ld.gold linker to link, because it explicitly checks the ABI tag and libgcc was tagged as 128-bit long double.

This extra patch solves the problem by conditionally compiling libgcc with 64-bit long doubles (only on musl) and disabling the APIs that would have been affected (as they are for glibc only).

q66 added 4 commits May 3, 2019 18:56
Musl requires gcc to be built with 64-bit long doubles as it does
not support the quad precision long double format, which is
implemented in software using two doubles.

This was already being patched, but it turns out libgcc is forcibly
being built with 128-bit long doubles because of several glibc
specific APIs it exposes. This wasn't causing any practical
runtime issue, but it was causing problems when using e.g.
the ld.gold linker to link, because it explicitly checks the
ABI tag and libgcc was tagged as 128-bit long double.

This extra patch solves the problem by conditionally compiling
libgcc with 64-bit long doubles (only on musl) and disabling
the APIs that would have been affected (as they are for glibc
only).

[ci skip]
@Hoshpak Hoshpak merged commit 6605eae into void-linux:master May 4, 2019
@q66 q66 deleted the gcc branch May 19, 2019 03:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants