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

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

https://gcc.gnu.org/g:14fe427ab5eec008e12e7aa275caf046c0588c68

commit r14-11634-g14fe427ab5eec008e12e7aa275caf046c0588c68
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Wed Apr 16 13:20:27 2025 +0100

    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.

    (cherry picked from commit 6612b8e55471fabd2071a9637a06d3ffce2b05a6)

Reply via email to