]>
git.ipfire.org Git - thirdparty/gcc.git/commit
tree-optimization/122297 - fix load/store bias handling
When load/store with length is used and only QImode versions are
available, vectorizable_live_operation produces wrong results for
VEC_EXTRACT. Provide a flag to vect_get_loop_len to specify if
bias-adjusted length should be used or not.
gcc/ChangeLog:
PR tree-optimization/122297
* tree-vect-loop.cc (vectorize_fold_left_reduction): Adjust.
(vectorizable_induction): Adjust.
(vectorizable_live_operation_1): Adjust.
(vect_get_loop_len): Provide parameter to select bias-adjusted
length.
(vect_gen_loop_len_mask): Adjust.
(vect_update_ivs_after_vectorizer_for_early_breaks): Adjust.
* tree-vect-stmts.cc (vect_get_strided_load_store_ops): Adjust.
(vectorizable_call): Adjust.
(vectorizable_operation): Adjust.
(vectorizable_store): Adjust.
(vectorizable_load): Adjust.
(vectorizable_condition): Adjust.
* tree-vectorizer.h (vect_get_loop_len): Add parameter.
gcc/testsuite/ChangeLog:
PR tree-optimization/122297
* gcc.dg/vect/nodump-extractlast-1.c: Fix typo.
* gcc.dg/vect/nodump-extractlast-2.c: New test.
Signed-off-by: Juergen Christ <jchrist@linux.ibm.com>