]> git.ipfire.org Git - thirdparty/gcc.git/commit
[COMMITTED] aarch64: [PR103170] Fix aarch64_simd_dup<mode>
authorAndrew Pinski <apinski@marvell.com>
Wed, 10 Nov 2021 18:37:22 +0000 (18:37 +0000)
committerAndrew Pinski <apinski@marvell.com>
Wed, 10 Nov 2021 22:06:23 +0000 (22:06 +0000)
commitc744ae0897957def0cd798399ef8ed6dc0d23811
tree7794fbfc8312a6c6f37f0992b04613cbca040253
parentabc2f01914d6c4703de26c402fb579a9a2d0dba4
[COMMITTED] aarch64: [PR103170] Fix aarch64_simd_dup<mode>

The problem here is aarch64_simd_dup<mode> use
the vw iterator rather than vwcore iterator.  This causes
problems for the V4SF and V2DF modes. I changed both of
aarch64_simd_dup<mode> patterns to be consistent.

Committed as obvious after a bootstrap/test on aarch64-linux-gnu.

PR target/103170

gcc/ChangeLog:

* config/aarch64/aarch64-simd.md (aarch64_simd_dup<mode>):
Use vwcore iterator for the r constraint output string.

gcc/testsuite/ChangeLog:

* gcc.c-torture/compile/vector-dup-1.c: New test.
gcc/config/aarch64/aarch64-simd.md
gcc/testsuite/gcc.c-torture/compile/vector-dup-1.c [new file with mode: 0644]