sve2: Fix expansion of division [PR107830]
authorTamar Christina <tamar.christina@arm.com>
Fri, 25 Nov 2022 12:57:24 +0000 (12:57 +0000)
committerTamar Christina <tamar.christina@arm.com>
Fri, 25 Nov 2022 12:57:24 +0000 (12:57 +0000)
commit71f3036b8a83da7fb559923bc80687ea1dabe14a
tree3152e97958093f3241d6e2261196ce06fc9a69b6
parent9f9d128f459e0c5ace8f7b85504d277b5a838daf
sve2: Fix expansion of division [PR107830]

SVE has an actual division optab, and when using -Os we don't
optimize the division away.  This means that we need to distinguish
between a div which we can optimize and one we cannot even during
expansion.

gcc/ChangeLog:

PR target/107830
* config/aarch64/aarch64.cc
(aarch64_vectorize_can_special_div_by_constant): Check validity during
codegen phase as well.

gcc/testsuite/ChangeLog:

PR target/107830
* gcc.target/aarch64/sve2/pr107830-1.c: New test.
* gcc.target/aarch64/sve2/pr107830-2.c: New test.
gcc/config/aarch64/aarch64.cc
gcc/testsuite/gcc.target/aarch64/sve2/pr107830-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve2/pr107830-2.c [new file with mode: 0644]