Registered Member
|
Hi erveryone,
when i try to compile my code using an ARM-cross-compiler i get some error messages: /home/User/projects/Eigen_323/Eigen/src/Core/arch/NEON/PacketMath.h: In function 'void Eigen::internal::prefetch(const Scalar*) [with Scalar = float]': /home/User/projects/Eigen_323/Eigen/src/Core/arch/NEON/PacketMath.h:221:84: error: '__pld' was not declared in this scope template<> EIGEN_STRONG_INLINE void prefetch<float>(const float* addr) { __pld(addr); } /home/User/projects/Eigen_323/Eigen/src/Core/arch/NEON/PacketMath.h: In function 'void Eigen::internal::prefetch(const Scalar*) [with Scalar = int]': /home/User/projects/Eigen_323/Eigen/src/Core/arch/NEON/PacketMath.h:222:84: error: '__pld' was not declared in this scope template<> EIGEN_STRONG_INLINE void prefetch<int>(const int* addr) { __pld(addr); } /home/User/projects/Eigen_323/Eigen/src/Core/arch/NEON/Complex.h: In function 'void Eigen::internal::prefetch(const Scalar*) [with Scalar = std::complex<float>]': /home/User/projects/Eigen_323/Eigen/src/Core/arch/NEON/Complex.h:113:125: error: '__pld' was not declared in this scope template<> EIGEN_STRONG_INLINE void prefetch<std::complex<float> >(const std::complex<float> * addr) { __pld((float *)addr); } Does anybody know a solution for that? --EDIT-- I just noticed, that it's working with Version 3.2.2. |
Moderator
|
Could you test this patch, thank you:
|
Registered Member
|
The patch seems to have fixed the errors for me. Thanks!
|
Moderator
|
Patch applied:
https://bitbucket.org/eigen/eigen/commits/3e99bd6c81d0/ Branch: 3.2 Date: 2015-01-13 08:25:24+00:00 Summary: Fix NEON compilation: use EIGEN_ARM_PREFETCH instead of __pld |
Registered users: Bing [Bot], Google [Bot], Yahoo [Bot]