diff --git a/Eigen/src/Core/arch/AltiVec/MatrixProduct.h b/Eigen/src/Core/arch/AltiVec/MatrixProduct.h index 380dc623b..3f79b97df 100644 --- a/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +++ b/Eigen/src/Core/arch/AltiVec/MatrixProduct.h @@ -1113,7 +1113,7 @@ EIGEN_ALWAYS_INLINE void pgerc(PacketBlock* accReal, PacketBlock EIGEN_ALWAYS_INLINE Packet ploadLhs(const Scalar* lhs) { - return *reinterpret_cast(const_cast(lhs)); + return ploadu(lhs); } // Zero the accumulator on PacketBlock. diff --git a/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h b/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h index 41b27bf3d..33d543494 100644 --- a/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +++ b/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h @@ -214,7 +214,7 @@ EIGEN_ALWAYS_INLINE void bcouple_common(PacketBlock EIGEN_ALWAYS_INLINE Packet ploadRhs(const Scalar* rhs) { - return *reinterpret_cast(const_cast(rhs)); + return ploadu(rhs); } } // end namespace internal