]> git.ipfire.org Git - thirdparty/gcc.git/commit
Restore correct iv step for fully-masked loops
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 18 Jun 2019 09:18:17 +0000 (09:18 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 18 Jun 2019 09:18:17 +0000 (09:18 +0000)
commit8ac88374c9b9506a86b187ef342d048627c81815
treef98a62e46bca2b433c2c6b950f710a6af3f1183c
parent02dcca88792c54434f3cec97331b37f94542e358
Restore correct iv step for fully-masked loops

r272233 introduced a large number of execution failures on SVE.
The patch hard-coded an IV step of VF, but for SLP groups it needs
to be VF * group size.

Also, iv_precision had type widest_int but only needs to be unsigned int.

2019-06-18  Richard Sandiford  <richard.sandiford@arm.com>

gcc/
* tree-vect-loop-manip.c (vect_set_loop_masks_directly): Remove
vf parameter.  Restore the previous iv step of nscalars_step,
but give it iv_type rather than compare_type.  Tweak code order
to match the comments.
(vect_set_loop_condition_masked): Update accordingly.
* tree-vect-loop.c (vect_verify_full_masking): Use "unsigned int"
for iv_precision.  Tweak comment formatting.

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