https://gcc.gnu.org/g:e6322a6c9ac6e3ac20d01336c13e097b0d5cce05

commit r16-4694-ge6322a6c9ac6e3ac20d01336c13e097b0d5cce05
Author: Richard Biener <[email protected]>
Date:   Tue Oct 28 13:17:35 2025 +0100

    TLC to vect_update_ivs_after_vectorizer
    
    The following makes it work on the non-main exit.
    
            * tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer):
            Avoid explicit LOOP_VINFO_IV_EXIT reference.

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

diff --git a/gcc/tree-vect-loop-manip.cc b/gcc/tree-vect-loop-manip.cc
index 20141dbc2e54..6af07efe68ac 100644
--- a/gcc/tree-vect-loop-manip.cc
+++ b/gcc/tree-vect-loop-manip.cc
@@ -2336,7 +2336,7 @@ vect_update_ivs_after_vectorizer (loop_vec_info 
loop_vinfo,
   gphi_iterator gsi, gsi1;
   class loop *loop = LOOP_VINFO_LOOP (loop_vinfo);
   basic_block update_bb = update_e->dest;
-  basic_block exit_bb = LOOP_VINFO_IV_EXIT (loop_vinfo)->dest;
+  basic_block exit_bb = update_e->src;
   gimple_stmt_iterator last_gsi = gsi_last_bb (exit_bb);
 
   for (gsi = gsi_start_phis (loop->header), gsi1 = gsi_start_phis (update_bb);

Reply via email to