From 91f62324d4c054035a1bccee63c38c2cdeb2cf8d Mon Sep 17 00:00:00 2001 From: "Hans J. Johnson" Date: Tue, 28 Apr 2026 21:18:54 -0500 Subject: [PATCH] COMP: Use pzero(Packet{}) for SelfadjointMatrixVector accumulators GCC -O3 IPA-CP emits false-positive -Wmaybe-uninitialized on the cloned `selfadjoint_matrix_vector_product::run.constprop.isra`: `pset1(Scalar(0))` is opaque to interprocedural constant propagation, while `pzero(Packet{})` (used by upstream Eigen master) is visible as a constant. Backport just the ptmp2/ptmp3 init lines. --- .../Eigen/src/Core/products/SelfadjointMatrixVector.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 1b74a1d24fea..6e3c0dc6fe08 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 @@ -81,9 +81,9 @@ selfadjoint_matrix_vector_product(t1); Scalar t2(0); - Packet ptmp2 = pset1(t2); + Packet ptmp2 = pzero(Packet{}); Scalar t3(0); - Packet ptmp3 = pset1(t3); + Packet ptmp3 = pzero(Packet{}); Index starti = FirstTriangular ? 0 : j + 2; Index endi = FirstTriangular ? j : size;