[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.
This commit is contained in:
Andre Vieira 2022-01-11 15:52:59 +00:00
parent c0e355c779
commit 016bd75231

View file

@ -3023,7 +3023,9 @@ vect_analyze_loop (class loop *loop, vec_info_shared *shared)
array may contain length-agnostic and length-specific modes. Their 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 ordering is not guaranteed, so we could end up picking a mode for the main
loop that is after the epilogue's optimal mode. */ 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 (); bool supports_partial_vectors = partial_vectors_supported_p ();
poly_uint64 first_vinfo_vf = LOOP_VINFO_VECT_FACTOR (first_loop_vinfo); poly_uint64 first_vinfo_vf = LOOP_VINFO_VECT_FACTOR (first_loop_vinfo);