https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115493
--- Comment #15 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Christophe Lyon from comment #13) > Yes it breaks at the same point, again we are returning an uninitialized > value. > Adding annotate asm OK, looking the fix was only half complete. Can you try diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc index 347dac97e49..6f32867f85a 100644 --- a/gcc/tree-vect-loop.cc +++ b/gcc/tree-vect-loop.cc @@ -6849,7 +6849,7 @@ vect_create_epilog_for_reduction (loop_vec_info loop_vinfo, tree initial_def = reduc_info->reduc_initial_values[0]; tree tmp = make_ssa_name (new_scalar_dest); epilog_stmt = gimple_build_assign (tmp, COND_EXPR, zcompare, - initial_def, new_temp); + initial_def, scalar_results[0]); gsi_insert_before (&exit_gsi, epilog_stmt, GSI_SAME_STMT); scalar_results[0] = tmp; }