]> git.ipfire.org Git - thirdparty/gcc.git/commit
arm: fix ICE with vectorized reciprocal division [PR108120]
authorRichard Earnshaw <rearnsha@arm.com>
Thu, 22 Feb 2024 16:47:20 +0000 (16:47 +0000)
committerRichard Earnshaw <rearnsha@arm.com>
Fri, 23 Feb 2024 11:39:28 +0000 (11:39 +0000)
commit016c4eed368b80a97101f6156ed99e4c5474fbb7
treee0a979e780b28d5b4311f07e00fe93ffa302827f
parent22121546e0315d25ee419d2389022e3974750885
arm: fix ICE with vectorized reciprocal division [PR108120]

The expand pattern for reciprocal division was enabled for all math
optimization modes, but the patterns it was generating were not
enabled unless -funsafe-math-optimizations were enabled, this leads to
an ICE when the pattern we generate cannot be recognized.

Fixed by only enabling vector division when doing unsafe math.

gcc:

PR target/108120
* config/arm/neon.md (div<VCVTF:mode>3): Rename from div<mode>3.
Gate with ARM_HAVE_NEON_<MODE>_ARITH.

gcc/testsuite:
PR target/108120
* gcc.target/arm/neon-recip-div-1.c: New file.
gcc/config/arm/neon.md
gcc/testsuite/gcc.target/arm/neon-recip-div-1.c [new file with mode: 0644]