r256100 - in /trunk/gcc: ChangeLog tree-cfg.c t...

rsandifo@gcc.gnu.org rsandifo@gcc.gnu.org
Tue Jan 2 18:27:00 GMT 2018


Author: rsandifo
Date: Tue Jan  2 18:27:35 2018
New Revision: 256100

URL: https://gcc.gnu.org/viewcvs?rev=256100&root=gcc&view=rev
Log:
Use ssizetype selectors for autovectorised VEC_PERM_EXPRs

The previous patches mean that there's no reason that constant
VEC_PERM_EXPRs need to have the same shape as the data inputs.
This patch makes the autovectoriser use sizetype elements instead,
so that indices don't get truncated for large or variable-length
vectors.

2018-01-02  Richard Sandiford  <richard.sandiford@linaro.org>

gcc/
	* tree-cfg.c (verify_gimple_assign_ternary): Allow the size of
	the selector elements to be different from the data elements
	if the selector is a VECTOR_CST.
	* tree-vect-stmts.c (vect_gen_perm_mask_any): Use a vector of
	ssizetype for the selector.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/tree-cfg.c
    trunk/gcc/tree-vect-stmts.c



More information about the Gcc-cvs mailing list