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

Work around removal of some PowerPC intrinsics in GCC 15 #612

Merged
merged 1 commit into from
Jan 22, 2025

Conversation

musicinmybrain
Copy link
Contributor

Fixes #611.

Checklist

  • I have read the contributing guidelines.
  • I have considered portability of my change across platforms and architectures.
  • I have self-reviewed my code.
  • I have commented my code where necessary.
  • I have updated the documentation accordingly. N/A
  • I have added tests that prove my fix is effective or that my feature works. N/A

What is the purpose of this pull request?

  • Fix a bug

What changes did you make?

On GCC 15 and later, fall back to inline assembly instead of using removed intrinsics __builtin_vsx_xvcvsxwdp() and __builtin_vsx_xvcvdpsxws().

This PR works around the removal of PowerPC intrinsics __builtin_vsx_xvcvsxwdp() and __builtin_vsx_xvcvdpsxws() in GCC 15.

Does this PR relate to any existing issue?

Relates to/Fixes #611

Is there anything you would like reviewers to focus on?

Consider whether it would be better to replace __builtin_vsx_xvcvsxwdp() with vec_doublee/vec_doubleo as suggested in gcc-mirror/gcc@fd9fdb3, and to replace __builtin_vsx_xvcvdpsxws() with vec_signede/vec_signedo as suggested in gcc-mirror/gcc@224cc56. As noted in #611, I’m not prepared to contribute that approach, but I would be happy to help test it.

@blapie blapie merged commit c45e268 into shibatch:master Jan 22, 2025
36 checks passed
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.

Fails to build with GCC 15 on ppc64le due to removed intrinsics
2 participants