2018-06-21 Richard Biener <rguenther@suse.de>
commitfa681b455d556ee71c8fc07b51ebde455c9405e6
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 21 Jun 2018 07:46:43 +0000 (21 07:46 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 21 Jun 2018 07:46:43 +0000 (21 07:46 +0000)
tree23dd6ee895c84a78f946b78eef32ec8baef5b502
parent52458f0664a3430e6beb47af6893d09f70e8ef98
2018-06-21  Richard Biener  <rguenther@suse.de>

* tree-data-ref.c (dr_step_indicator): Handle NULL DR_STEP.
* tree-vect-data-refs.c (vect_analyze_possibly_independent_ddr):
Avoid calling vect_mark_for_runtime_alias_test with gathers or scatters.
(vect_analyze_data_ref_dependence): Re-order checks to deal with
NULL DR_STEP.
(vect_record_base_alignments): Do not record base alignment
for gathers or scatters.
(vect_compute_data_ref_alignment): Drop return value that is always
true.  Bail out early for gathers or scatters.
(vect_enhance_data_refs_alignment): Bail out early for gathers
or scatters.
(vect_find_same_alignment_drs): Likewise.
(vect_analyze_data_refs_alignment): Remove dead code.
(vect_slp_analyze_and_verify_node_alignment): Likewise.
(vect_analyze_data_refs): For possible gathers or scatters do
not create an alternate DR, just check their possible validity
and mark them.  Adjust DECL_NONALIASED handling to not rely
on DR_BASE_ADDRESS.
* tree-vect-loop-manip.c (vect_update_inits_of_drs): Do not
update inits of gathers or scatters.
* tree-vect-patterns.c (vect_recog_mask_conversion_pattern):
Also copy gather/scatter flag to pattern vinfo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@261834 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-data-ref.c
gcc/tree-vect-data-refs.c
gcc/tree-vect-loop-manip.c
gcc/tree-vect-patterns.c