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

--- Comment #7 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:6612b8e55471fabd2071a9637a06d3ffce2b05a6

commit r15-7073-g6612b8e55471fabd2071a9637a06d3ffce2b05a6
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Mon Jan 20 19:52:31 2025 +0000

    aarch64: Fix invalid subregs in xorsign [PR118501]

    In the testcase, we try to use xorsign on:

       (subreg:DF (reg:TI R) 8)

    i.e. the highpart of the TI.  xorsign wants to take a V2DF
    paradoxical subreg of this, which is rightly rejected as a direct
    operation.  In cases like this, we need to force the highpart into
    a fresh register first.

    gcc/
            PR target/118501
            * config/aarch64/aarch64.md (@xorsign<mode>3): Use
            force_lowpart_subreg.

    gcc/testsuite/
            PR target/118501
            * gcc.c-torture/compile/pr118501.c: New test.

Reply via email to