Record the loop masks needed for EXTRACT_LAST_REDUCTIONs
authorRichard Sandiford <richard.sandiford@arm.com>
Tue, 10 Dec 2019 12:20:07 +0000 (12:20 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Tue, 10 Dec 2019 12:20:07 +0000 (12:20 +0000)
commitf1c13d6ddeecc9da5f53643b6b6b715546d670fe
tree692bc76eee86aeddb222ae16fbb0b8239944aea3
parent9ec35478ccf0f3539988a054b7996278706a7710
Record the loop masks needed for EXTRACT_LAST_REDUCTIONs

The analysis phase of vectorizable_condition wasn't recording the
loop masks needed by the transform phase.  This meant that the masks
wouldn't be created in the (rare) case that no other statement needed
them.

2019-12-10  Richard Sandiford  <richard.sandiford@arm.com>

gcc/
* tree-vect-stmts.c (vectorizable_condition): Record the loop
masks required for extract-last reductions.

gcc/testsuite/
* gcc.target/aarch64/sve/clastb_9.c: New test.

From-SVN: r279163
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/sve/clastb_9.c [new file with mode: 0644]
gcc/tree-vect-stmts.c