https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113550

--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Richard Sandiford <rsand...@gcc.gnu.org>:

https://gcc.gnu.org/g:8eead1148cd0ac086b39a7abccea404041c85cb5

commit r14-8421-g8eead1148cd0ac086b39a7abccea404041c85cb5
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Thu Jan 25 12:03:18 2024 +0000

    aarch64: Handle overlapping registers in movv8di [PR113550]

    The LS64 movv8di pattern didn't handle loads that overlapped with
    the address register (unless the overlap happened to be in the
    last subload).

    gcc/
            PR target/113550
            * config/aarch64/aarch64-simd.md: In the movv8di splitter, check
            whether each split instruction is a load that clobbers the source
            address.  Emit that instruction last if so.

    gcc/testsuite/
            PR target/113550
            * gcc.target/aarch64/pr113550.c: New test.

Reply via email to