On 10/23/2017 11:27 AM, Richard Sandiford wrote: > This patch makes omp_max_vf return a polynomial vectorization factor. > We then need to be able to stash a polynomial value in > OMP_CLAUSE_SAFELEN_EXPR too: > > /* If max_vf is non-zero, then we can use only a vectorization factor > up to the max_vf we chose. So stick it into the safelen clause. */ > > For now the cfgloop safelen is still constant though. > > > 2017-10-23 Richard Sandiford <richard.sandif...@linaro.org> > Alan Hayward <alan.hayw...@arm.com> > David Sherwood <david.sherw...@arm.com> > > gcc/ > * omp-general.h (omp_max_vf): Return a poly_uint64 instead of an int. > * omp-general.c (omp_max_vf): Likewise. > * omp-expand.c (omp_adjust_chunk_size): Update call to omp_max_vf. > (expand_omp_simd): Handle polynomial safelen. > * omp-low.c (omplow_simd_context): Add a default constructor. > (omplow_simd_context::max_vf): Change from int to poly_uint64. > (lower_rec_simd_input_clauses): Update accordingly. > (lower_rec_input_clauses): Likewise. OK. jeff