#1120614 arb: FTBFS: error: invalid parameter combination for AltiVec intrinsic '__builtin_vec_ld'

Package:
src:arb
Source:
src:arb
Submitter:
Trupti
Date:
2025-12-17 14:31:02 UTC
Severity:
normal
Tags:
#1120614#5
Date:
2025-11-13 09:26:47 UTC
From:
To:
Dear maintainer,

arb FTBFS on ppc64el with below error:

../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h: In
function 'typename Eigen::ei_packet_traits<T>::type
Eigen::ei_pset1(const Scalar&) [with Scalar = float; typename
ei_packet_traits<T>::type = __vector(4) float]':
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:194:40:
error: declaration does not declare anything [-fpermissive]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:194:3:
error: expected primary-expression before 'float'
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:195:3:
error: 'af' was not declared in this scope
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:196:18:
error: invalid parameter combination for AltiVec intrinsic
'__builtin_vec_ld'
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h: In
function 'typename Eigen::ei_packet_traits<T>::type
Eigen::ei_pset1(const Scalar&) [with Scalar = int; typename
ei_packet_traits<T>::type = __vector(4) int]':
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:203:38:
error: declaration does not declare anything [-fpermissive]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:203:3:
error: expected primary-expression before 'int'
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:204:3:
error: 'ai' was not declared in this scope
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:205:18:
error: invalid parameter combination for AltiVec intrinsic
'__builtin_vec_ld'
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h: In
function 'void Eigen::ei_pstoreu(Scalar*, const Packet&) [with Scalar =
float; Packet = __vector(4) float]':
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:222:23:
warning: 'vec_lvsl' is deprecated for little endian; use assignment for
unaligned loads and stores [-Wdeprecated]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:224:19:
warning: 'vec_lvsr' is deprecated for little endian; use assignment for
unaligned loads and stores [-Wdeprecated]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h: In
function 'void Eigen::ei_pstoreu(Scalar*, const Packet&) [with Scalar =
int; Packet = __vector(4) int]':
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:240:23:
warning: 'vec_lvsl' is deprecated for little endian; use assignment for
unaligned loads and stores [-Wdeprecated]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:242:19:
warning: 'vec_lvsr' is deprecated for little endian; use assignment for
unaligned loads and stores [-Wdeprecated]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h: In
function 'typename Eigen::ei_unpacket_traits<T>::type
Eigen::ei_pfirst(const Packet&) [with Packet = __vector(4) float;
typename ei_unpacket_traits<T>::type = float]':
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:251:40:
error: declaration does not declare anything [-fpermissive]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:251:3:
error: expected primary-expression before 'float'
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:252:16:
error: 'af' was not declared in this scope; did you mean 'a'?
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h: In
function 'typename Eigen::ei_unpacket_traits<T>::type
Eigen::ei_pfirst(const Packet&) [with Packet = __vector(4) int; typename
ei_unpacket_traits<T>::type = int]':
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:258:38:
error: declaration does not declare anything [-fpermissive]
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:258:3:
error: expected primary-expression before 'int'
../HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h:259:16:
error: 'ai' was not declared in this scope; did you mean 'a'?
In file included from ../HEADERLIBS/eigen/Eigen/Array:28,
                  from ../HEADERLIBS/eigen/Eigen/Dense:2:



You can refer
https://buildd.debian.org/status/fetch.php?pkg=arb&arch=ppc64el&ver=6.0.6-8&stamp=1744759359&raw=0
for full build log on ppc64el.


Thanks,
Trupti

#1120614#10
Date:
2025-11-13 09:57:23 UTC
From:
To:

Hello,

The ARB package FTBFS on ppc64el with GCC 14+ due to errors in the
Altivec code from the bundled Eigen (eigen-2.0.16).
The errors occur in
HEADERLIBS/eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h. These
intrinsics are deprecated on little-endian PowerPC and now rejected by
modern GCC.


Upstream Eigen replaced these deprecated intrinsics with endian-agnostic
equivalents starting around version 3.3.9
Below is the commit of that change.
https://gitlab.com/libeigen/eigen/-/commit/1615a2799384a2964d01ba77fe98e3f6fcc412f4

ARB currently bundles an older Eigen (eigen-2.0.16) which predates those
fixes.


Thanks,
Trupti.

#1120614#15
Date:
2025-11-13 10:22:23 UTC
From:
To:
Hi,

I tested the build failure on ppc64el and confirmed it is caused by the
outdated Eigen version(2.0.16) bundled in ARB.

Replacing the bundled Eigen with Eigen 3.4.0 resolves the issue.The
updated version already includes endian-safe Altivec intrinsics that
compile correctly on ppc64el.

I tested a fix by updating the bundled Eigen to version 3.4.0 and
adjusting one source file (`RNACMA/Cma.cxx`) for Eigen3 API
compatibility. The package now resolves the issue of Altivec code on
ppc64el.

A proposed patch is attached for review.

Changes summary:
   • Update HEADERLIBS/Makefile to unpack Eigen 3.4.0.
   • Add HEADERLIBS/eigen to CC_INCLUDES in Makefile.
   • Update RNACMA/Cma.cxx to match Eigen 3 API.


Please review and consider applying this patch.






Note :
After resolving this issue also arb pacakge is FTBFS on ppc64el with
different errors. Which will be taken care by  bug number (#1114476).

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1114476 bug report.


Thanks,
Trupti.

#1120614#22
Date:
2025-12-17 14:28:50 UTC
From:
To:
Hello,

Did you get a chance to look into this fix ?