Repository navigation
FTBS w/ GCC 15 for ppc64le #2443
Copy link
Copy link
Closed
Description
Fedora Rawhide switched to GCC 15, and libjxl fails to build now on ppc64le: https://kojipkgs.fedoraproject.org//work/tasks/522/127990522/build.log
/usr/include/hwy/ops/ppc_vsx-inl.h: In function ‘hwy::N_PPC8::VFromD<D> hwy::N_PPC8::PromoteTo(D, VFromD<typename D::Rebind<float> >)’:
/usr/include/hwy/ops/ppc_vsx-inl.h:3692:33: error: there are no arguments to ‘__builtin_vsx_xvcvspsxds’ that depend on a template parameter, so a declaration of ‘__builtin_vsx_xvcvspsxds’ must be available [-Wtemplate-body]
3692 | return VFromD<decltype(di64)>{__builtin_vsx_xvcvspsxds(raw_v)};
| ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hwy/ops/ppc_vsx-inl.h:3692:33: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/usr/include/hwy/ops/ppc_vsx-inl.h: In function ‘hwy::N_PPC8::VFromD<D> hwy::N_PPC8::PromoteTo(D, VFromD<typename D::Rebind<float> >)’:
/usr/include/hwy/ops/ppc_vsx-inl.h:3706:7: error: there are no arguments to ‘__builtin_vsx_xvcvspuxds’ that depend on a template parameter, so a declaration of ‘__builtin_vsx_xvcvspuxds’ must be available [-Wtemplate-body]
3706 | __builtin_vsx_xvcvspuxds(raw_v))};
| ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hwy/ops/ppc_vsx-inl.h: In function ‘hwy::N_PPC8::VFromD<D> hwy::N_PPC8::PromoteUpperTo(D, Vec128<float>)’:
/usr/include/hwy/ops/ppc_vsx-inl.h:3816:33: error: there are no arguments to ‘__builtin_vsx_xvcvspsxds’ that depend on a template parameter, so a declaration of ‘__builtin_vsx_xvcvspsxds’ must be available [-Wtemplate-body]
3816 | return VFromD<decltype(di64)>{__builtin_vsx_xvcvspsxds(raw_v)};
| ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/hwy/ops/ppc_vsx-inl.h: In function ‘hwy::N_PPC8::VFromD<D> hwy::N_PPC8::PromoteUpperTo(D, Vec128<float>)’:
/usr/include/hwy/ops/ppc_vsx-inl.h:3831:7: error: there are no arguments to ‘__builtin_vsx_xvcvspuxds’ that depend on a template parameter, so a declaration of ‘__builtin_vsx_xvcvspuxds’ must be available [-Wtemplate-body]
3831 | __builtin_vsx_xvcvspuxds(raw_v))};
| ^~~~~~~~~~~~~~~~~~~~~~~~
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
[-]FTBS for ppc64le[/-][+]FTBS w/ GCC 15 for ppc64le[/+]jan-wassenberg commentedon Jan 17, 2025
Thanks for reporting.
Looks like this intrinsic was removed. @johnplatts , can you confirm that it can be replaced with vec_signed, and/or would you like to send a PR to do so?
johnplatts commentedon Jan 17, 2025
@jan-wassenberg I have implemented a fix to this issue, and I will submit a pull request once I verify that the fix compiles successfully with GCC 14, GCC 15, and Clang 19 on both big-endian PPC and little-endian PPC.
jan-wassenberg commentedon Jan 20, 2025
Thanks for adding the workaround! Golly, 4 different versions depending on the compiler version :/
jan-wassenberg commentedon Jan 24, 2025
Thanks @johnplatts for fixing.
Closing, please feel free to reopen if required.
deps: V8: cherry-pick highway@dcc0ca1cd42
deps: V8: cherry-pick highway@dcc0ca1cd42
deps: V8: cherry-pick highway@dcc0ca1cd42