aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-streamer-out.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2020-05-18 16:05:56 +0200
committerRichard Biener <rguenther@suse.de>2020-05-22 12:26:27 +0200
commit79f0451c67e8ed564b86a38581d5f3d57c5074d8 (patch)
tree6d021593ca3438568971032ee89debbba1a036c2 /gcc/tree-streamer-out.c
parentb6ed2e2bca54d1d290f553549d28b0c60a0f240f (diff)
downloadgcc-79f0451c67e8ed564b86a38581d5f3d57c5074d8.zip
gcc-79f0451c67e8ed564b86a38581d5f3d57c5074d8.tar.gz
gcc-79f0451c67e8ed564b86a38581d5f3d57c5074d8.tar.bz2
enfoce SLP_TREE_VECTYPE for invariants
This tries to enforce a set SLP_TREE_VECTYPE in vect_get_constant_vectors and provides some infrastructure for setting it in the vectorizable_* functions, amending those. 2020-05-22 Richard Biener <rguenther@suse.de> * tree-vectorizer.h (vect_is_simple_use): New overload. (vect_maybe_update_slp_op_vectype): New. * tree-vect-stmts.c (vect_is_simple_use): New overload accessing operands of SLP vs. non-SLP operation transparently. (vect_maybe_update_slp_op_vectype): New function updating the possibly shared SLP operands vector type. (vectorizable_operation): Be a bit more SLP vs non-SLP agnostic using the new vect_is_simple_use overload; update SLP invariant operand nodes vector type. (vectorizable_comparison): Likewise. (vectorizable_call): Likewise. (vectorizable_conversion): Likewise. (vectorizable_shift): Likewise. (vectorizable_store): Likewise. (vectorizable_condition): Likewise. (vectorizable_assignment): Likewise. * tree-vect-loop.c (vectorizable_reduction): Likewise. * tree-vect-slp.c (vect_get_constant_vectors): Enforce present SLP_TREE_VECTYPE and check it matches previous behavior.
Diffstat (limited to 'gcc/tree-streamer-out.c')
0 files changed, 0 insertions, 0 deletions