From: Andre Vieira Date: Tue, 11 Jan 2022 15:52:59 +0000 (+0000) Subject: [vect] PR103971, PR103977: Fix epilogue mode selection for autodetect only X-Git-Tag: upstream/12.2.0~2174 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=016bd7523131b645bca5b5530c81ab5149922743;p=platform%2Fupstream%2Fgcc.git [vect] PR103971, PR103977: Fix epilogue mode selection for autodetect only gcc/ChangeLog: * tree-vect-loop.c (vect-analyze-loop): Handle scenario where target does not add autovectorize_vector_modes. --- diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c index 6ed2b5f..ba67de4 100644 --- a/gcc/tree-vect-loop.c +++ b/gcc/tree-vect-loop.c @@ -3023,7 +3023,9 @@ vect_analyze_loop (class loop *loop, vec_info_shared *shared) array may contain length-agnostic and length-specific modes. Their ordering is not guaranteed, so we could end up picking a mode for the main loop that is after the epilogue's optimal mode. */ - mode_i = 1; + vector_modes[0] = autodetected_vector_mode; + mode_i = 0; + bool supports_partial_vectors = partial_vectors_supported_p (); poly_uint64 first_vinfo_vf = LOOP_VINFO_VECT_FACTOR (first_loop_vinfo);