diff --git a/Modules/ThirdParty/Eigen3/src/itkeigen/Eigen/src/Core/products/SelfadjointMatrixVector.h b/Modules/ThirdParty/Eigen3/src/itkeigen/Eigen/src/Core/products/SelfadjointMatrixVector.h index 6e3c0dc6fe0..912b579c576 100644 --- a/Modules/ThirdParty/Eigen3/src/itkeigen/Eigen/src/Core/products/SelfadjointMatrixVector.h +++ b/Modules/ThirdParty/Eigen3/src/itkeigen/Eigen/src/Core/products/SelfadjointMatrixVector.h @@ -112,13 +112,17 @@ selfadjoint_matrix_vector_product(a0It); + Packet A0i = pzero(Packet{}); + A0i = ploadu(a0It); a0It += PacketSize; - Packet A1i = ploadu(a1It); + Packet A1i = pzero(Packet{}); + A1i = ploadu(a1It); a1It += PacketSize; - Packet Bi = ploadu(rhsIt); + Packet Bi = pzero(Packet{}); + Bi = ploadu(rhsIt); rhsIt += PacketSize; // FIXME should be aligned in most cases - Packet Xi = pload(resIt); + Packet Xi = pzero(Packet{}); + Xi = pload(resIt); Xi = pcj0.pmadd(A0i, ptmp0, pcj0.pmadd(A1i, ptmp1, Xi)); ptmp2 = pcj1.pmadd(A0i, Bi, ptmp2);