diff options
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r-- | gcc/tree-vect-stmts.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 15c798d..43b2b0f 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -11226,11 +11226,10 @@ tree get_vectype_for_scalar_type (vec_info *vinfo, tree scalar_type) { tree vectype; - vectype = get_vectype_for_scalar_type_and_size (scalar_type, - vinfo->vector_size); - if (vectype - && known_eq (vinfo->vector_size, 0U)) - vinfo->vector_size = GET_MODE_SIZE (TYPE_MODE (vectype)); + poly_uint64 vector_size = GET_MODE_SIZE (vinfo->vector_mode); + vectype = get_vectype_for_scalar_type_and_size (scalar_type, vector_size); + if (vectype && vinfo->vector_mode == VOIDmode) + vinfo->vector_mode = TYPE_MODE (vectype); return vectype; } |