On 10/23/2017 11:28 AM, Richard Sandiford wrote:
> This patch changes the type of current_vector_size to poly_uint64.
> It also changes TARGET_AUTOVECTORIZE_VECTOR_SIZES so that it fills
> in a vector of possible sizes (as poly_uint64s) instead of returning
> a bitmask.  The documentation claimed that the hook didn't need to
> include the default vector size (returned by preferred_simd_mode),
> but that wasn't consistent with the omp-low.c usage.
> 
> 
> 2017-10-23  Richard Sandiford  <richard.sandif...@linaro.org>
>           Alan Hayward  <alan.hayw...@arm.com>
>           David Sherwood  <david.sherw...@arm.com>
> 
> gcc/
>       * target.h (vector_sizes, auto_vector_sizes): New typedefs.
>       * target.def (autovectorize_vector_sizes): Return the vector sizes
>       by pointer, using vector_sizes rather than a bitmask.
>       * targhooks.h (default_autovectorize_vector_sizes): Update accordingly.
>       * targhooks.c (default_autovectorize_vector_sizes): Likewise.
>       * config/aarch64/aarch64.c (aarch64_autovectorize_vector_sizes):
>       Likewise.
>       * config/arc/arc.c (arc_autovectorize_vector_sizes): Likewise.
>       * config/arm/arm.c (arm_autovectorize_vector_sizes): Likewise.
>       * config/i386/i386.c (ix86_autovectorize_vector_sizes): Likewise.
>       * config/mips/mips.c (mips_autovectorize_vector_sizes): Likewise.
>       * omp-general.c (omp_max_vf): Likewise.
>       * omp-low.c (omp_clause_aligned_alignment): Likewise.
>       * optabs-query.c (can_vec_mask_load_store_p): Likewise.
>       * tree-vect-loop.c (vect_analyze_loop): Likewise.
>       * tree-vect-slp.c (vect_slp_bb): Likewise.
>       * doc/tm.texi: Regenerate.
>       * tree-vectorizer.h (current_vector_size): Change from an unsigned int
>       to a poly_uint64.
>       * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): Take
>       the vector size as a poly_uint64 rather than an unsigned int.
>       (current_vector_size): Change from an unsigned int to a poly_uint64.
>       (get_vectype_for_scalar_type): Update accordingly.
>       * tree.h (build_truth_vector_type): Take the size and number of
>       units as a poly_uint64 rather than an unsigned int.
>       (build_vector_type): Add a temporary overload that takes
>       the number of units as a poly_uint64 rather than an unsigned int.
>       * tree.c (make_vector_type): Likewise.
>       (build_truth_vector_type): Take the number of units as a poly_uint64
>       rather than an unsigned int.

OK.

jeff

Reply via email to