[gcc r16-6734] tree-optimization/123539 - signed UB in vector reduction

Richard Biener rguenth@gcc.gnu.org
Tue Jan 13 08:08:49 GMT 2026


https://gcc.gnu.org/g:47d09318c411911408058de38bebc16a177fa8e1

commit r16-6734-g47d09318c411911408058de38bebc16a177fa8e1
Author: Richard Biener <rguenther@suse.de>
Date:   Mon Jan 12 14:10:32 2026 +0100

    tree-optimization/123539 - signed UB in vector reduction
    
    With previous changes I overlooked one use of vectype.
    
            PR tree-optimization/123539
            * tree-vect-loop.cc (vect_create_epilog_for_reduction):
            Use the compute vectype to pun down to smaller or element
            size for by-element reductions.

Diff:
---
 gcc/tree-vect-loop.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc
index 033396417504..74eecb832e6f 100644
--- a/gcc/tree-vect-loop.cc
+++ b/gcc/tree-vect-loop.cc
@@ -6000,7 +6000,7 @@ vect_create_epilog_for_reduction (loop_vec_info loop_vinfo,
 	       && (mode1 = targetm.vectorize.split_reduction (mode)) != mode)
 	nunits1 = GET_MODE_NUNITS (mode1).to_constant ();
 
-      tree vectype1 = vectype;
+      tree vectype1 = compute_vectype;
       if (mode1 != mode)
 	{
 	  vectype1 = get_related_vectype_for_scalar_type (TYPE_MODE (vectype),


More information about the Gcc-cvs mailing list