]> git.ipfire.org Git - thirdparty/gcc.git/commit
AArch64: Add more accurate constraint [PR117292]
authorWilco Dijkstra <wilco.dijkstra@arm.com>
Fri, 25 Oct 2024 14:53:58 +0000 (14:53 +0000)
committerWilco Dijkstra <wilco.dijkstra@arm.com>
Fri, 25 Oct 2024 17:13:03 +0000 (17:13 +0000)
commit7c17058eac3834fb03ec9e518235e4192557b97d
tree414c117390242a12216ac016ad984f89e647f22f
parent6cb1da72cac166bd3b005c0430557b68b9761da5
AArch64: Add more accurate constraint [PR117292]

As shown in the PR, reload may only check the constraint in some cases and
and not check the predicate is still valid for the resulting instruction.
To fix the issue, add a new constraint which matches the predicate exactly.

gcc/ChangeLog:
PR target/117292
* config/aarch64/aarch64-simd.md (xor<mode>3<vczle><vczbe>): Use
'De' constraint.
* config/aarch64/constraints.md (De): Add new constraint.

gcc/testsuite/ChangeLog:
PR target/117292
* gcc.target/aarch64/sve/single_5.c: Remove xfails.
* gcc.target/aarch64/pr117292.c: New test.
gcc/config/aarch64/aarch64-simd.md
gcc/config/aarch64/constraints.md
gcc/testsuite/gcc.target/aarch64/pr117292.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/sve/single_5.c